2011-06-25 54 views
2

我需要得到係數以及它們的SE,來自gls的t值和p值在R中輸出。從R中輸出的所有信息中提取係數R

library(nlme) 
fm1 <- gls(follicles ~ sin(2*pi*Time) + cos(2*pi*Time), Ovary, 
     correlation = corAR1(form = ~ 1 | Mare)) 

summary(fm1) 
Generalized least squares fit by REML 
    Model: follicles ~ sin(2 * pi * Time) + cos(2 * pi * Time) 
    Data: Ovary 
    AIC  BIC logLik 
    1571.455 1590.056 -780.7273 

Correlation Structure: AR(1) 
Formula: ~1 | Mare 
Parameter estimate(s): 
    Phi 
0.7532079 

Coefficients: 
        Value Std.Error t-value p-value 
(Intercept)  12.216398 0.6646437 18.380373 0.0000 
sin(2 * pi * Time) -2.774712 0.6450478 -4.301561 0.0000 
cos(2 * pi * Time) -0.899605 0.6975383 -1.289685 0.1981 

Correlation: 
       (Intr) s(*p*T 
sin(2 * pi * Time) 0.000  
cos(2 * pi * Time) -0.294 0.000 

Standardized residuals: 
     Min   Q1   Med   Q3   Max 
-2.41180365 -0.75405234 -0.02923628 0.63156880 3.16247697 

Residual standard error: 4.616172 
Degrees of freedom: 308 total; 305 residual 

我非常感謝,如果有人幫我弄清楚這一點。提前致謝。

+0

讓他們到哪裏?他們在摘要中顯示,你想輸出這個,還是將它們用作另一個函數的輸入?這個問題現在還不清楚。 – richiemorrisroe

+0

@richiemorrisroe:我只是希望他們從這個摘要中提取並且想要在sweave文件中使用。 – MYaseen208

回答

6

試試這個:

> cs <- as.data.frame(summary(fm1)$tTable) 
> cs 
         Value Std.Error t-value  p-value 
(Intercept)  12.2163982 0.6646437 18.380373 2.618737e-51 
sin(2 * pi * Time) -2.7747122 0.6450478 -4.301561 2.286284e-05 
cos(2 * pi * Time) -0.8996047 0.6975383 -1.289685 1.981371e-01 
> cs$t 
[1] 18.380373 -4.301561 -1.289685 
> cs$p 
[1] 2.618737e-51 2.286284e-05 1.981371e-01 
+0

@Kohshe做得好,你打了我大約15秒。 – richiemorrisroe

2

假設你想上面某種表的值,一個解決方案是比較簡單的。

sumfm1 <- summary(fm1) 

sumfm1$tTable 

         Value Std.Error t-value  p-value 
(Intercept)  12.2163982 0.6646437 18.380373 2.618737e-51 
sin(2 * pi * Time) -2.7747122 0.6450478 -4.301561 2.286284e-05 
cos(2 * pi * Time) -0.8996047 0.6975383 -1.289685 1.981371e-01 

更一般地,如果調用任何[R對象的str()功能,就可以正常(有位試驗和錯誤的),找出如何提取您需要的結果。

編輯:如果你需要它進入一個sweave文件,然後在上面的對象上調用xtable,並且都應該是好的。