在Excel中使用linest进行二次回归 – 不完整的数据集
我以前使用LINEST对不完整的数据集进行线性回归。 MS Excel LINEST,TREND,LOGEST和GROWTH函数中的线程缺失值给了我所需的所有答案。
我的数据集是:
DE 12 1,23 12,5 1,28 13 1,33 13,5失踪 14 1,41 14,5 1,47 15 1,53 15,5 1,56 16失踪 16,5 1,66 17 1,70 17,5 1,72 18 1,66
使用链接中提到的技巧,我创build了一个额外的列的新表
ABC 1 12 1,23 1 12,5 1,28 1 13 1,33 0 13,5 0 1 14 1,41 1 14,5 1,47 1 15 1,53 1 15,5 1,56 0 16 0 1 16,5 1,66 1 17 1,70 1 17,5 1,72 1 18 1,66
然后使用formsLINEST(C1:C13; A1:B13; 1; 0)计算y = Ax + B的A和B.
现在我的问题是类似的,但这次我需要做二次回归。 通常使用一个完整的数据集我将使用formsLINEST(E1:E13; D1:D13 ^ {1 \ 2}; 1; 0)创buildy = Ax ^ 2 + Bx + C的A,B和Y的数组
问题是LINEST似乎不允许我使用与线性回归相同的解决scheme,在这种情况下,我会使用LINEST(C1:C13; A1:B13 ^ {1 \ 2}; 1; 0),但是它不起作用:-(
谁能帮忙?
第一步是创build一个紧凑的数据列表,而不会丢失 :
在F1中input1。
在F2中input:
=IF(E2<>"missing",1+MAX($F$1:F1),"")
并抄下来:
在G1和H1中input:
=IFERROR(INDEX(D:D,MATCH(ROW(),$F:$F,0)),"") =IFERROR(INDEX(E:E,MATCH(ROW(),$F:$F,0)),"")
并复制下来:
为了得到系数:
Y = A * X 2 + B * X + C
(其中X值在列G中 , Y值在列H中 )
对于使用:
=INDEX(LINEST(H1:H11,G1:G11^{1,2}),1)
对于B使用:
=INDEX(LINEST(H1:H11,G1:G11^{1,2}),1,2)
对于C使用:
=INDEX(LINEST(H1:H11,G1:G11^{1,2}),1,3)