Possible Duplicate:
How do I reference a regression model's coefficient's standard errors?

If I have a dataset:

data = data.frame(xdata = 1:10,ydata = 6:15)

and I run a linear regression:

fit = lm(ydata~.,data = data)
out = summary(fit)

lm(formula = ydata ~ ., data = data)

       Min         1Q     Median         3Q        Max 
-5.661e-16 -1.157e-16  4.273e-17  2.153e-16  4.167e-16 

             Estimate Std. Error   t value Pr(>|t|)    
(Intercept) 5.000e+00  2.458e-16 2.035e+16   <2e-16 ***
xdata       1.000e+00  3.961e-17 2.525e+16   <2e-16 ***
Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 

Residual standard error: 3.598e-16 on 8 degrees of freedom
Multiple R-squared:     1,  Adjusted R-squared:     1 
F-statistic: 6.374e+32 on 1 and 8 DF,  p-value: < 2.2e-16 

How do I extract the standard errors of the regression coefficients from either fit or out? I can't seem to figure it out. Thanks!

  • $\begingroup$ coef(summary(model))[, "Std. Error"] Works pretty well. $\endgroup$ – Quazi Irfan Feb 4 at 3:02

It's useful to see what kind of objects are contained within another object. Using names() or str() can help here.

Note that out <- summary(fit) is the summary of the linear regression object.


The simplest way to get the coefficients would probably be:

out$coefficients[ , 2] #extract 2nd column from the coefficients object in out
| cite | improve this answer | |
  • 5
    $\begingroup$ But the question asks about the standard error of the coefficients, no? $\endgroup$ – ziggystar May 22 '14 at 15:05
  • $\begingroup$ out$coefficients[2,2] $\endgroup$ – PatrickT Jul 8 '18 at 12:27

Like this:

fit = lm(ydata ~ .,data = data)
se <- sqrt(diag(vcov(fit)))

These are the classical asymptotic ones you see in summary. Please also see the links in my answer to this same question about alternative standard error options.

| cite | improve this answer | |

Not the answer you're looking for? Browse other questions tagged or ask your own question.