我在Excel中进行多项式回归时遇到了一个奇怪的问题。和以前一样,我正在尝试获取Excel在图形上创建多项式趋势线时使用的正确系数。我已经阅读了如何使用LINEST做到这一点,并且在进行二阶和三阶回归时能够获得与趋势线公式相匹配的答案...但是当我尝试第4阶或第5阶时,答案与之相去甚远Excel在趋势线公式上向我显示。

这是带有图表的数据以及我对5阶回归的尝试:Click for Excel Workbook

有人对可能导致我麻烦的事情有任何想法吗?

谢谢!

-乔恩

最佳答案

输出中的零值是(多重)共线性的结果。来自MS功能帮助:

“ ... LINEST函数检查共线性,并在识别出共线性时从回归模型中删除所有多余的X列。删除的X列可以在LINEST输出中识别为除0 se值外还具有0个系数...。”

为了获得更准确的估计值,请使用以均值为中心的x值进行LINEST,然后乘以二项式系数矩阵。因此,代替:

=LINEST(B2:B31,A2:A31^{1,2,3,4,5})


请尝试:

=MMULT(LINEST(B2:B31,(A2:A31-AVERAGE(A2:A31))^{1,2,3,4,5}),IFERROR(COMBIN({5;4;3;2;1;0},{5,4,3,2,1,0})*(-AVERAGE(A2:A31))^({5;4;3;2;1;0}-{5,4,3,2,1,0}),0))

与趋势线值一致。

另请参见:https://newtonexcelbach.wordpress.com/2011/02/04/fitting-high-order-polynomials/(帖子和评论)

10-08 19:32