2014-10-06 62 views
0

我想提取不同截距值的「最終值」。如何從lm中提取最終係數值

這是我的模型,其中ruido = 1ruido = 2

lm.color0 <- lm(RT.ms ~ TransDist*as.factor(ruido), data = BO.hits.sinOuts.Lum13.Color0) 

summary(lm.color0) 

#Coefficients: 
#        Estimate Std. Error t value Pr(>|t|)  
#(Intercept)     451.25190 5.03016 89.709 < 2e-16 *** 
#TransDist      2.54787 0.04309 59.126 < 2e-16 *** 
#as.factor(ruido)2   21.59586 7.16326 3.015 0.00258 ** 
#TransDist:as.factor(ruido)2 0.34196 0.06098 5.608 2.1e-08 *** 

我知道,ruido=1

#(Intercept)     451.25190 ("final value) 
#TransDist      2.54787 ("final value) 

ruido=2

#(Intercept)     451.25190 + 21.59586 (from as.factor(ruido)2) = 472,84776 ("final value") 
#TransDist      2.54787 + 0.34196 (TransDist:as.factor(ruido)2) = 2,88983 ("final value") 

我想提取這個「最終值「直接,有沒有辦法?

謝謝。

回答

0

您可以使用str()看到R.任何物體的結構,所以在你的[R控制檯運行此:

str(lm.color0) 

這將顯示您尤爾lm模型的結構。您會注意到一個可以通過$稱爲「係數」的字段。然後根據需要將它們組合起來並不重要。

lm.color0$coefficients[["(Intercept)"]] 
lm.color0$coefficients[["TransDist"]] 

lm.color0$coefficients[["(Intercept)"]] + lm.color0$coefficients[["as.factor(ruido)2"]] 
lm.color0$coefficients[["TransDist"]] + lm.color0$coefficients[["TransDist:as.factor(ruido)2"]]