python - 如何替换 dataframe 中列的某些值中的字符 '...'。 '.' 的个数不固定。

标签 python pandas dataframe

我有这个能量表数据框,其中一些能量供应列的值为“...”,没有固定数量的这个字符。这些值都是数字。我想替换那些字符。这是我用过的:

vn['Energy Supply'].astype(str)
for x in vn['Energy Supply']:
     if x.startswith('.'): 
           x.replace(0, inplace= True)

'.astype' 也不会将 dtype 更改为 str

最佳答案

因为你使用 startswith 似乎你正在寻找这样的东西:

vn['Energy Supply']=vn['Energy Supply'].astype(str)
vn['Energy Supply'].replace(r'^\.+',value=0,inplace=True,regex=True)

然而,对数据帧使用 for 循环并不是一个好主意。

关于python - 如何替换 dataframe 中列的某些值中的字符 '...'。 '.' 的个数不固定。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41416944/

相关文章:

python - 将函数应用于 Pandas 数据框的列

python - 如何根据其他列中的值从 Pandas 数据框中查找重复项?

python - 使用全局时 '=' 上的语法无效

python - 在 CherryPy 3.1 中提供静态文件 favicon.ico 和 robots.txt 时出现问题

python - 带有错误栏 : style does not apply 的 Pandas 图

python - 有没有办法从单个数据列表的表格中形成数据框?

r - 是否可以在 R 中为 data.frame 名称命名

python - pandas 使用 .loc 对多列进行条件赋值

javascript - 将 compose 函数从 javascript 翻译为 python,函数式方式

python - 如何将 easy_install 指向 vcvarsall.bat?