1. 程式人生 > >資料預處理——拉格朗日缺失值填補。

資料預處理——拉格朗日缺失值填補。

def ployinterp_column(s, n, k=5):
  y = s[list(range(n-k, n)) + list(range(n+1, n+1+k))] #取你要插入的數的上下5個數 總共10個
  y = y[y.notnull()] #剔除空值
  return lagrange(y.index, list(y))(n) #插值並返回插值結果

#逐個元素判斷是否需要插值
for i in data.columns:
  for j in range(len(data)):
    if (data[i].isnull())[j]: #如果為空即插值。
      data[i][j] = ployinterp_column(data[i], j)