我正在拟合我的数据,并试图找到最佳的多项式顺序。 这是代码:
cov = 1
o = 2
print 'begin polyfit'
for z in range(15, 65):
ttt = np.polyfit(phase3, data3, z, full=True)
p_k_t = ttt[0]
cov_t = ttt[1]
if (len(cov_t)>0) and (cov_t < cov):
p_k = p_k_t
o = z
cov = cov_t
print 'End polyfit, best order = ', o
但每次(数据都在变化)我得到的最佳订单= 30.适合看起来不是很好,可以更好。 开始认为它是多项式的最大值。这可能是真的吗?或者我必须在31订单上有错误?
更新 残差(cov)不能在订单30之后计算