下面的df在某些列中有空值。
现在我需要用“na”更新/替换那些“null”值
+-------+------+-----+------+----+
|Product|Canada|China|Mexico| USA|
+-------+------+-----+------+----+
| Orange| null| 4000| null|4000|
| Beans| null| 1500| 2000|1600|
| Banana| 2000| 400| null|1000|
|Carrots| 2000| 1200| null|1500|
+-------+------+-----+------+----+
我找到了“fillna”方法来替换空值
但是,我需要更新/替换所有具有空值的列
所以像这样或更好的方式
replaced = df.fillna({str(col):'NA', col for col in df.columns})
感谢您的帮助,以获得正确的方法
谢谢
1条答案
按热度按时间amrnrhlw1#
你需要使用
subset()
并传递列名,以便用空值填充df = df.fillna(0, subset=['Canada', 'China', 'Mexico', 'USA'])
或者,如果你想用fillna()
对于所有列,将它们以dictionary
,也可以指定您的选择:)df = df.fillna({'Canada':'4', 'China': '5', 'Mexico' : '6', 'USA': '7})
或者,您可以简单地使用下面的命令用空值填充所有列df = df.fillna("a_value")