summary.lm {stats}R Documentation

Summarizing Linear Model Fits


summary method for class "lm".


## S3 method for class 'lm':
summary(object, correlation = FALSE, symbolic.cor = FALSE, ...)

## S3 method for class 'summary.lm':
print(x, digits = max(3, getOption("digits") - 3),
      symbolic.cor = x$symbolic.cor,
      signif.stars = getOption("show.signif.stars"), ...)


object an object of class "lm", usually, a result of a call to lm.
x an object of class "summary.lm", usually, a result of a call to summary.lm.
correlation logical; if TRUE, the correlation matrix of the estimated parameters is returned and printed.
digits the number of significant digits to use when printing.
symbolic.cor logical. If TRUE, print the correlations in a symbolic form (see symnum) rather than as numbers.
signif.stars logical. If TRUE, “significance stars” are printed for each coefficient.
... further arguments passed to or from other methods.


print.summary.lm tries to be smart about formatting the coefficients, standard errors, etc. and additionally gives “significance stars” if signif.stars is TRUE.

Correlations are printed to two decimal places (or symbolically): to see the actual correlations print summary(object)$correlation directly.


The function summary.lm computes and returns a list of summary statistics of the fitted linear model given in object, using the components (list elements) "call" and "terms" from its argument, plus

residuals the weighted residuals, the usual residuals rescaled by the square root of the weights specified in the call to lm.
coefficients a p x 4 matrix with columns for the estimated coefficient, its standard error, t-statistic and corresponding (two-sided) p-value. Aliased coefficients are omitted.
aliased named logical vector showing if the original coefficients are aliased.
sigma the square root of the estimated variance of the random error

sigma^2 = 1/(n-p) Sum(w[i] R[i]^2),

where R[i] is the i-th residual, residuals[i].

df degrees of freedom, a 3-vector (p, n-p, p*), the last being the number of non-aliased coefficients.
fstatistic (for models including non-intercept terms) a 3-vector with the value of the F-statistic with its numerator and denominator degrees of freedom.
r.squared R^2, the “fraction of variance explained by the model”,

R^2 = 1 - Sum(R[i]^2) / Sum((y[i]- y*)^2),

where y* is the mean of y[i] if there is an intercept and zero otherwise.

adj.r.squared the above R^2 statistic “adjusted”, penalizing for higher p.
cov.unscaled a p x p matrix of (unscaled) covariances of the coef[j], j=1, ..., p.
correlation the correlation matrix corresponding to the above cov.unscaled, if correlation = TRUE is specified.
symbolic.cor (only if correlation is true.) The value of the argument symbolic.cor.
na.action from object, if present there.

See Also

The model fitting function lm, summary.

Function coef will extract the matrix of coefficients with standard errors, t-statistics and p-values.


##-- Continuing the  lm(.) example:
coef(lm.D90)# the bare coefficients
sld90 <- summary(lm.D90 <- lm(weight ~ group -1))# omitting intercept
coef(sld90)# much more

[Package stats version 2.5.0 Index]