尝试删除panda Dataframe 中字符串列的空格。在其他代码段中使用此方法成功完成。
for index, row in summ.iterrows(): row['TeamName'] = row['TeamName'].replace(" ", "")
summ.head()显示在此操作之后没有对字符串列进行任何更改,但是也没有错误。我不知道为什么会发生这个问题,因为我在代码后面使用了完全相同的方法,并且成功地完成了任务。
jslywgbw1#
为什么不使用str.replace:
str.replace
df["TeamName"] = df["TeamName"].str.replace(r' ', '', regex=False)
0yg35tkg2#
我可能被证明是错的,但我想知道这是不是因为你在迭代它,也许工作在一个副本,没有改变数据。从Pandas.DataFrame.iterrows文档,这是我发现那里:永远不要修改正在迭代的内容。这不能保证在所有情况下都有效。根据数据类型的不同,迭代器会返回副本而不是视图,并且向其写入数据将无效。只是一个想法...
2条答案
按热度按时间jslywgbw1#
为什么不使用
str.replace
:0yg35tkg2#
我可能被证明是错的,但我想知道这是不是因为你在迭代它,也许工作在一个副本,没有改变数据。从Pandas.DataFrame.iterrows文档,这是我发现那里:
永远不要修改正在迭代的内容。这不能保证在所有情况下都有效。根据数据类型的不同,迭代器会返回副本而不是视图,并且向其写入数据将无效。
只是一个想法...