我正在尝试将 panda 数据框中的 80 列替换为
","
。
我创建了一个要迭代的标题列表:""
然后我使用列表来替换多列字符串值,如下所示:
headers = ['h1', 'h2', 'h3'... 'h80']
这给了我这个错误:
dataFrame[headers] = dataFrame[headers].str.replace(',', '')
当我仅在一个标头上尝试相同的操作时,效果很好,并且我需要使用 AttributeError: 'DataFrame' object has no attribute 'str'
,因为唯一的
str.replace
方法遗憾地无法取代 replace
。","
是一种不适用于数据框的系列方法。您可以在每行/列系列上使用
pd.Series.str.replace
。apply
使用 df.applymap
dataFrame[headers] = dataFrame[headers].apply(lambda x: x.str.replace(',',''))
并将每个单元格视为字符串并直接对其使用替换 -
applymap
使用 df.replace
dataFrame[headers] = dataFrame[headers].applymap(lambda x: x.replace(',',''))
regex=True