我有以下代码

import pandas as pd

df = pd.DataFrame({'A': ['$5,756', '3434', '$45', '1,344']})

pattern = ','.join(['$', ','])

df['A'] = df['A'].str.replace('$|,', '', regex=True)
print(df['A'])

我试图删除的是"$"或","…因此我试图用空白替换..

但它只是替换,

我得到的输出

0    $5756
1     3434
2      $45
3    1344$

应该是这样的

0    5756
1     3434
2      45
3    1344

我做错了什么

感谢您的帮助

谢谢

推荐答案

如果您只有类似整数的数字,一个简单的 Select 是删除除数字\D以外的所有数字,那么您不必处理其他特殊正则表达式字符,例如$:

df['A'] = df['A'].str.replace(r'\D', '', regex=True)

输出:

      A
0  5756
1  3434
2    45
3  1344

Python相关问答推荐

梯度下降:简化要素集的运行时间比原始要素集长

组/群集按字符串中的子字符串或子字符串中的字符串轮询数据框

如何设置视频语言时上传到YouTube与Python API客户端

在含噪声的3D点网格中识别4连通点模式

未知依赖项pin—1阻止conda安装""

Django RawSQL注释字段

如何启动下载并在不击中磁盘的情况下呈现响应?

下三角形掩码与seaborn clustermap bug

寻找Regex模式返回与我当前函数类似的结果

Python pint将1/华氏度转换为1/摄氏度°°

如何从比较函数生成ngroup?

Python如何导入类的实例

当我定义一个继承的类时,我可以避免使用`metaclass=`吗?

递归链表反转与打印语句挂起

查找数据帧的给定列中是否存在特定值

用LAKEF划分实木地板AWS Wrangler

跨两个数据帧收集非索引列上的公共组

这是什么排序算法?(将迭代器与自身合并&&Q;)

为什么任何一个HTML页面在保存到文件后都会变大6个字节?

达到最大的Python Webhost资源