fillna() 是 Pandas 中的一个函数,用于填充 DataFrame 或 Series 中的缺失值(NaN)。缺失值通常是由于数据采集过程中的错误或者数据不完整导致的,而填充缺失值可以让数据更加完整,以便进行后续的分析和处理。
fillna() 函数的语法如下:
DataFrame.fillna(value=None, method=None, axis=None, inplace=False, limit=None, downcast=None, **kwargs)
参数说明:
value:要用来填充缺失值的标量值、字典、Series 或 DataFrame。默认为 None,表示将所有缺失值填充为该值。method:指定填充方法,可选值为ffill(向前填充)、bfill(向后填充)或None(使用指定的值填充)。默认为 None。axis:指定填充方向,可选值为index(沿着行方向填充)或columns(沿着列方向填充)。默认为 None,表示自动识别。inplace:是否原地修改 DataFrame,即是否在原始 DataFrame 上进行填充操作。默认为 False,表示返回填充后的新 DataFrame。limit:指定连续缺失值的最大填充数量。如果不为 None,则最多填充指定数量的连续缺失值。downcast:指定填充后的数据类型。默认为 None,表示不进行类型转换。
示例用法:
# 将 DataFrame 中的所有缺失值填充为指定的值
df.fillna(value=0, inplace=True)
# 指定每列的填充值,字典的键是列名,值是要填充的值
fill_values = {'A': 0, 'B': 1, 'C': 2}
df.fillna(value=fill_values, inplace=True)
# 使用前一个有效值(向前填充)填充缺失值
df.fillna(method='ffill', inplace=True)
# 使用后一个有效值(向后填充)填充缺失值
df.fillna(method='bfill', inplace=True)
# 沿着列方向填充,即用同一列中的前一个有效值填充后面的缺失值
df.fillna(method='ffill', axis='columns', inplace=True)
总的来说,fillna() 是一个十分灵活和实用的函数,可以根据具体需求进行缺失值填充。