python - 如何一次从 Pandas 的所有列中删除逗号

标签 python string pandas replace comma

我有一个数据框,其中所有列都应该是数字。在阅读时,其中一些是用逗号阅读的。我知道可以通过以下方式修复单个列

df['x']=df['x'].str.replace(',','')

但是,这仅适用于系列对象,不适用于整个数据框。是否有一种优雅的方法将其应用于整个数据帧,因为数据帧中的每个条目都应该是一个数字。

P.S:为了确保我可以 str.replace,我首先使用
df.astype('str')

所以我明白,一旦删除逗号,我将不得不将它们全部转换为数字。

最佳答案

数字列没有 , ,因此不需要转换为字符串,只需使用 DataFrame.replace regex=True对于子串替换:

df = df.replace(',','', regex=True)

或者:
df.replace(',','', regex=True, inplace=True)

最后将字符串列转换为数字,谢谢@anki_91:
c = df.select_dtypes(object).columns
df[c] = df[c].apply(pd.to_numeric,errors='coerce')

关于python - 如何一次从 Pandas 的所有列中删除逗号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56947333/

相关文章:

java - 根据字符串是否为空创建Guava的Optional的简洁方法

c# - PredicateBuilder:OR 条件嵌套在 .And() 中

python - 不规则分箱 p2 python pandas

python - 如何使用 python 3 下载网站?

string - Oracle SQL 中的高级字符串比较

python - 在 Python 中全屏显示图像的简单示例

Python从字符串中删除特定的零

python - 具有重复索引的 Pandas 系列 to_dict;用列表值制作字典

python - numpy,连接或初始化之间的循环选择

python - 如何转换图像以使投影图像与原始图像相同