python - 数据框用空白替换下划线不起作用

标签 python dataframe replace

我正在努力找出为什么此替换不起作用

输入列值

“全局多部门收入综合指数(原名 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/

相关文章:

python - 将 DataFrame 的 DataFrame 转换为单个 DataFrame 仅选择某些列 Python

python - 强制 setuptools 需要来自存储库而不是 PyPI 的包

r - 将前一行值乘以常数 R

python - 将 -inf 值替换为 pandas.series 特征中的 np.nan

python - 在 python 中使用字符串输入数组重写多个附加替换方法的更好方法?

python - 将 super 方法与派生类的类装饰器一起使用时出现 TypeError

python - 按照特定的规则集计算一个新的数据框

python - 在 Dask 中高效删除行

python - 我如何转置这些数据以获得类似的东西

javascript - 使用正则表达式查找引号中的逗号并替换为 HTML 等效项