我有一个非常复杂的问题(对我而言)。 我编写了一个代码来计算给定数据集的插值。之后,它计算Akaike信息标准,以检查哪个插值套件最佳。
看起来像这样:
polyfit=np.polyfit(x,y,5) # x,y are data set and 5 is a root of polynomial
poly1d=np.poly1d(polyfit)
print poly1d #show final polynomial
my=[]
for i in x:
x_=poly1d(i)
my.append(x_) #calculate list of values
def AIC(i,j):
for i in y:
for j in my:
RSS=(i-j)**2
AIC=36-np.log(RSS)
print AIC
我不喜欢这段代码,因为如果我想更改多项式的根,我必须更改代码。我知道我必须在开头使用for循环:
for i in xrange(40):
polyfit=np.polyfit(x,y,i)
但我无法弄清楚如何将所有多项式保存到列表中。如果我知道我会用它来计算任何根的def AIC(),那么我可以找到适合我数据的最佳曲线。 请帮帮忙,已经困扰了我2周了。如果您有任何不清楚的地方,请询问。