2017-10-19 120 views

回答

0

您可以輕鬆地測試這個自己:

DF <- data.frame(x1 = 1:2, x2 = 3:4, x3 = 5:6) 
with(DF, poly(x1, x2, x3, degree = 2, raw = TRUE)) 
#  1.0.0 2.0.0 0.1.0 1.1.0 0.2.0 0.0.1 1.0.1 0.1.1 0.0.2 
#[1,]  1  1  3  3  9  5  5 15 25 
#[2,]  2  4  4  8 16  6 12 24 36 
#attr(,"degree") 
#[1] 1 2 1 2 2 1 2 2 2 
#attr(,"class") 
#[1] "poly" "matrix" 

列名顯示這三個變量的產品和每個變量在該產品的程度。例如,1.1.0意味着x1^1 + x2^1 + x3^0

當然,您也可以在迴歸模型的輸出中看到這一點。

如果您希望係數對應於原始多項式,即alpha0 + alpha11 * x1^1 + alpha12 * x1^2 + ...,則需要raw = TRUE。如果你不需要,你應該而不是設置raw = TRUE,因爲orthogonal polynomials有一些理想的迴歸分析屬性。

相關問題