Index Column1 Column2 Column3 Column4 ... # Cant type all 46 columns.
2012 5626 fooo - barrr
2013 5655h booo - barr
2014 5626d zooo - -
LTM 56 gooo greed -
有没有办法让我通过这个数据帧并更新所有 – 值为0或空值?
我试过了:
for zzz in df.columns: # since df.columns will return me the names of the columns
if df_final[zzz].any() == '-':
df_final[zzz] = 0
print(df_final)
但是,这只是将所有内容打印出来.它没有转换成0 / null
解决方法:
In [71]:
df.replace('-',0, inplace=True)
df
Out[71]:
Index Column1 Column2 Column3 Column4
0 2012 5626 fooo 0 barrr
1 2013 5655h booo 0 barr
2 2014 5626d zooo 0 0
3 LTM 56 gooo greed 0
for zzz in df.columns:
if df_final[zzz].any() == '-':
df_final[zzz] = 0
print(df_final)
这个:df_final [zzz] = 0会更新整个列
如果您的代码是:
for zzz in df.columns:
if df_final[zzz].any() == '-':
df_final[zzz] = df_final[zzz].replace('-',0)
print(df_final)
那么这只会替换满足条件的行,你也可以这样做:
df.apply(lambda x: x.replace('-',0))
为了更紧凑的方法
编辑如果你想用NaN替换然后传递np.NaN而不是0以上.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。