小编典典

替换所有在熊猫数据框中出现的字符串(Python)

python

我有一个大约20列的pandas数据框。

可以通过手动编写所有列名来替换所有出现的字符串(此处为换行符):

df['columnname1'] = df['columnname1'].str.replace("\n","<br>")
df['columnname2'] = df['columnname2'].str.replace("\n","<br>")
df['columnname3'] = df['columnname3'].str.replace("\n","<br>")
...
df['columnname20'] = df['columnname20'].str.replace("\n","<br>")

不幸的是,这不起作用:

df = df.replace("\n","<br>")

还有其他更优雅的解决方案吗?


阅读 177

收藏
2020-12-20

共1个答案

小编典典

您可以使用replace并传递字符串以查找/替换为字典键/项目:

df.replace({'\n': '<br>'}, regex=True)

例如:

>>> df = pd.DataFrame({'a': ['1\n', '2\n', '3'], 'b': ['4\n', '5', '6\n']})
>>> df
   a    b
0  1\n  4\n
1  2\n  5
2  3    6\n

>>> df.replace({'\n': '<br>'}, regex=True)
   a      b
0  1<br>  4<br>
1  2<br>  5
2  3      6<br>
2020-12-20