我有一个大约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>")
还有其他更优雅的解决方案吗?
您可以使用replace并传递字符串以查找/替换为字典键/项目:
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>