37,743
社区成员




import pandas as pd
from scipy.interpolate import lagrange
import matplotlib.pyplot as plt
inputfile = 'C:/Users/Qhy/Desktop/catering_sale.xls'
outputfile = 'C:/Users/Qhy/Desktop/sales.xls'
data = pd.read_excel(inputfile,index_col='日期')
data = pd.DataFrame(data)
data['销量'][(data['销量']<400)|(data['销量']>5000)] = None
def ployinterp_column(s,n,k=5):
y = s[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 data.columns:
for j in range(len(data)):
if (data[i].isnull())[j]:
data[i][j] = ployinterp_column(data[i],j)
data.to_excel(outputfile)