无涯教程可以使用fillna()函数填充数据集中的空值。
DataFrame.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None, **kwargs)
它返回一个对象,在其中填充了缺少的值。
import pandas as pd # 创建数据框 info = pd.DataFrame(data={'x':[10,20,30,40,50,None]}) print(info) # 使用“inplace”将空值填充到数据框 info.fillna(value=0, inplace=True) print(info)
输出
x 0 10.0 1 20.0 2 30.0 3 40.0 4 50.0 5 NaN x 0 10.0 1 20.0 2 30.0 3 40.0 4 50.0 5 0.0
以下代码负责填充包含某些NaN值的DataFrame。
import pandas as pd # 创建数据框 info = pd.DataFrame([[np.nan,np.nan, 20, 0], [1, np.nan, 4, 1], [np.nan, np.nan, np.nan, 5], [np.nan, 20, np.nan, 2]], columns=list('ABCD')) info
输出
A B C D 0 NaN NaN 20.0 0 1 1.0 NaN 4.0 1 2 NaN NaN NaN 5 3 NaN 20.0 NaN 2
在下面的代码中,无涯教程使用了 fillna 函数仅填充了一些NaN值。
info = pd.DataFrame([[np.nan,np.nan, 20, 0], [1, np.nan, 4, 1], [np.nan, np.nan, np.nan, 5], [np.nan, 20, np.nan, 2]], columns=list('ABCD')) info info.fillna(0) info.fillna(method='ffill') values = {'A': 0, 'B': 1, 'C': 2, 'D': 3} info.fillna(value=values) info.fillna(value=values, limit=1)
输出
A B C D 0 0.0 1.0 20.0 0 1 1.0 NaN 4.0 1 2 NaN NaN 2.0 5 3 NaN 20.0 NaN 2
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)