我正在努力找出为什么此替换不起作用
输入列值
“全局多部门收入综合指数(原名 GITR)(美元)BWC_GMSI”
预期输出
“全局多部门收入综合指数(前身为 GITR)(美元)BWCGMSI”
代码
import pandas as pd
d = {'col1': ["Dummy", "Global Multi-Sector Income Composite(fka GITR) (USD) BWC_GMSI"], 'col2': ["dummy 3", "dummy4"]}
df = pd.DataFrame(data=d)
df2 = df.replace("_", "")
结果没有改变......
有什么想法请提出来
最佳答案
您需要regex=True
:
>>> df2 = df.replace(r"_", "", regex=True)
否则,Pandas 将搜索精确匹配,其中单元格的全部内容都是单个下划线。
示例:
>>> d = {'col1': ["Dummy", "A_B__C_D"],
... 'col2': ["Dummy", "ABCD_"],
... 'col3': ["_", "_*_"]
... }
>>> df = pd.DataFrame(data=d)
>>> df.replace(r"_", "", regex=True)
col1 col2 col3
0 Dummy Dummy
1 ABCD ABCD *
关于python - 数据框用空白替换下划线不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54611750/