如何替换DataFrame单元格值?将'...'替换为NaN失败求助
解决DataFrame中replace替换'...'为NaN不生效的问题
你的问题核心是pandas的replace()方法默认不会修改原DataFrame,它只会返回一个修改后的新对象,你没把这个新对象赋值回去,所以原数据看起来没变化。
给你两种直接有效的解决方式:
- 把修改后的结果重新赋值给原变量:
energy = energy.replace('...', np.NaN)
- 用
inplace=True参数直接在原DataFrame上修改:
energy.replace('...', np.NaN, inplace=True)
另外,如果还是没生效,可以先检查下单元格里的'...'是不是有隐藏字符(比如空格、全角点),可以用下面的代码查看对应列的唯一值,确认目标字符串的真实内容:
# 替换成你要检查的列名 print(energy['列名'].unique())
再用真实的字符串去替换就行。
内容的提问来源于stack exchange,提问作者P1CA5S0
相关产品推荐
相关产品推荐

