Pandas DataFrame interpolate() 方法

实例

将空值替换为上一行和下一行之间的数字:

在下面的例子中,我们将使用名为 ‘data.csv’ 的 CSV 文件。

在浏览器中 查看 CSV 文件

  1. import pandas as pd
  2. df = pd.read_csv('data.csv')
  3. newdf = df.interpolate(method='linear')
  4. print(newdf.to_string())
  5. #注意:我们使用 to_string() 方法返回整个 DataFrame 。
  6. #Note: 注意:第17、27、91、118、141行的 Calories 列中有空值。

定义与用法

interpolate() 方法替换基于指定方法的空值。


语法

  1. dataframe.interpolate(method, axis, inplace, limit, limit_direction, limit_area, downcast, kwargs)

参数

这些参数是 关键字

参数描述
 method'linear'
'akima'
'barycentric'
'cubic'
'cubispline'
'from_derivates'
'index'
'krogh'
'nearest'
'pad'
'pchip'
'piecewise_polynomial'
'polynomial'
'quadric'
'slinear'
'spline'
'time'
'zero'
'bfill'
'pad'
'ffill'
None
可选, 默认值 'linear' 。指定替换空值时要使用的方法
axis0
1
'index'
'columns'
可选, 默认值为 0。填充空值的轴
inplaceTrue
False
可选, 默认值为 False。如果为 True:在当前 DataFrame 上完成替换。如果为 False:返回完成替换的副本
limitNumber
None
可选, 默认值 None。指定要填充的最大空值数(如果指定了方法)
limit_direction'forward'
'backward'
'both'
可选, 默认值 'forward', (如果方法是 backfill 或者 bfill, 那默认的 limit_direction 是 'backward'。 指定填充的方向
limit_areaNone
'inside'
'outside'
可选, 默认值 None。指定填充的限制条件:
None - 无限制
'inside' -仅在有效值内填充空值
'outside' - 仅填充有效值之外的空值
downcastDictionary
None
可选, 为特定数据类型填充的字典

返回值

DataFrame 结果,如果 inplace 参数设置为 True,则返回结果或 None。

分类导航