Pandas NAN 补0,批量操作
在Pandas中,如果你想将DataFrame中的NaN
(缺失值)替换为0,你可以使用fillna()
方法。这个方法非常灵活,允许你以多种方式填充缺失值。以下是一个简单的例子,展示了如何批量将DataFrame中的所有NaN
值替换为0。
首先,导入Pandas库并创建一个包含NaN
值的示例DataFrame:
import pandas as pd
import numpy as np
# 创建一个包含NaN值的DataFrame
df = pd.DataFrame({
'A': [1, 2, np.nan],
'B': [4, np.nan, 6],
'C': [7, 8, 9]
})
print("原始DataFrame:")
print(df)
现在,使用fillna()
方法将所有NaN
值替换为0:
# 使用fillna方法将所有NaN值替换为0
df_filled = df.fillna(0)
print("填充后的DataFrame:")
print(df_filled)
如果你想在原地修改DataFrame而不是创建一个新的DataFrame,你可以使用inplace
参数:
# 在原地将所有NaN值替换为0
df.fillna(0, inplace=True)
print("原地填充后的DataFrame:")
print(df)
请注意,fillna()
方法默认返回一个新的DataFrame,除非你设置了inplace=True
,在这种情况下,它会修改原始DataFrame。
此外,fillna()
方法还有其他参数和选项,允许你以更复杂的方式填充缺失值,例如使用前一个或后一个有效值进行填充(通过method
参数设置为'ffill'
或'bfill'
)。但在本例中,我们只需要将所有NaN
替换为0,所以直接传递0作为fillna()
方法的参数就足够了。