import pandas as pd
from scipy.interpolate import lagrange
inputfile = r'missing_data.xls'
outputfile = r'new.xlsx'
df = pd.read_excel(inputfile, header=None)
print(len(df))
print(len(df.columns))
def ployinterp_column(s, n, k=5):
y = s.reindex(list(range(n-k, n)) + list(range(n+1, n+1+k)))
y = y[y.notnull()]
return lagrange(y.index, list(y))(n)
for i in range(len(df.columns)):
for j in range(len(df)):
if (df[i].isnull())[j]:
df[i][j] = ployinterp_column(df[i], j)
df.to_excel(outputfile, header=None, index=False)
python 拉格朗日插值法
最新推荐文章于 2024-07-06 16:48:32 发布