如何在 Pandas DataFrame 的列中将 NaN 值替换为零?
pandasserver side programmingprogramming更新于 2025/6/27 15:52:17
要将 Pandas DataFrame 的列中的 NaN 值替换为零或其他值,我们可以使用 df.fillna() 方法。
步骤
创建一个二维、大小可变、可能异构的表格数据 df。
打印输入 DataFrame df。
使用 df.fillna(0) 将 DataFrame 中的 NaN 替换为值 0。
类似地,使用 df.fillna(5) 和 df.fillna(7) 将 DataFrame 中的 NaN 替换为 5 和7。
打印替换后的 NaN,DataFrame。
示例
import pandas as pd import numpy as np df = pd.DataFrame( { "x": [5, np.nan, 1, np.nan], "y": [np.nan, 1, np.nan, 10], "z": [np.nan, 1, np.nan, np.nan] } ) print "Input series is:
", df print "After replacing NaN with 0:
", df.fillna(0) print "After replacing NaN with 5:
", df.fillna(5) print "After replacing NaN with 7:
", df.fillna(7)
输出
Input series is: x y z 0 5.0 NaN NaN 1 NaN 1.0 1.0 2 1.0 NaN NaN 3 NaN 10.0 NaN After replacing NaN with 0: x y z 0 5.0 0.0 0.0 1 0.0 1.0 1.0 2 1.0 0.0 0.0 3 0.0 10.0 0.0 After replacing NaN with 5: x y z 0 5.0 5.0 5.0 1 5.0 1.0 1.0 2 1.0 5.0 5.0 3 5.0 10.0 5.0 After replacing NaN with 7: x y z 0 5.0 7.0 7.0 1 7.0 1.0 1.0 2 1.0 7.0 7.0 3 7.0 10.0 7.0