Learn R Programming

arm (version 1.0-9)

display: Functions for Processing lm, glm, mer and polr Output

Description

This generic function gives a clean printout of lm, glm, mer and polr objects.

Usage

display (object, ...)

# methods for display()    
    display.lm (object, digits=2)
    display.glm (object, digits=2)
    display.mer (object, digits=2)
    display.polr (object, digits=2)

Arguments

object
The output of a call to lm, glm, mer, polr, or related regressions function with n data points and k predictors.
...
further arguments passed to or from other methods.
digits
number of significant digits to display.

Value

  • Coefficients and their standard errors, the sample size, number of predictors, residual standard deviation, and R-squared

Details

This generic function gives a clean printout of lm, glm, mer and polr objects, focusing on the most pertinent pieces of information: the coefficients and their standard errors, the sample size, number of predictors, residual standard deviation, and R-squared. Note: R-squared is automatically displayed to 2 digits, and deviances are automatically displayed to 1 digit, no matter what.

References

Andrew Gelman and Jennifer Hill, Data Analysis Using Regression and Multilevel/Hierarchical Models, Cambridge University Press, 2006.

See Also

summary, lm, glm, lmer, polr

Examples

Run this code
# Here's a simple example of a model of the form, y = a + bx + error, 
# with 10 observations in each of 10 groups, and with both the 
# intercept and the slope varying by group.  First we set up the model and data.

   group <- rep(1:10, rep(10,10))
   mu.a <- 0
   sigma.a <- 2
   mu.b <- 3
   sigma.b <- 4
   rho <- 0
   Sigma.ab <- array (c(sigma.a^2, rho*sigma.a*sigma.b, 
                    rho*sigma.a*sigma.b, sigma.b^2), c(2,2))
   sigma.y <- 1
   ab <- mvrnorm (10, c(mu.a,mu.b), Sigma.ab)
   a <- ab[,1]
   b <- ab[,2]
#   
   x <- rnorm (100)
   y1 <- rnorm (100, a[group] + b[group]*x, sigma.y)
   y2 <- rbinom(100, 1, prob=invlogit(a[group] + b*x))

#
# display a simple linear model
#
   M1 <- lm (y1 ~ x)
   display (M1)
  
#
# display a simple logit model
#
   M2 <- glm (y2 ~ x, family=binomial(link="logit"))
   display (M2)
#
# Then fit and display a simple varying-intercept model:
# 
   M3 <- lmer (y1 ~ x + (1|group))
   display (M3)
   M3.sim <- mcsamp (M3)
   print (M3.sim)
   plot (M3.sim)
# 
# Then the full varying-intercept, varying-slope model:
# 
   M4 <- lmer (y1 ~ x + (1 + x |group))
   display (M4)
   M4.sim <- mcsamp (M4)
   print (M4.sim)
   plot (M4.sim)
# 
# Then the full varying-intercept, logit model:
# 
   M5 <- lmer (y2 ~ x + (1|group), family=binomial(link="logit"))
   display (M5)
   M5.sim <- mcsamp (M5)
   print (M5.sim)
   plot (M5.sim)
# 
# Then the full varying-intercept, varying-slope logit model:
# 
   M6 <- lmer (y2 ~ x + (1 + x |group), family=binomial(link="logit"))
   display (M6)
   M6.sim <- mcsamp (M6)
   print (M6.sim)
   plot (M6.sim)

# 
# Then the ordered logit model from polr
#
   M7 <- polr(Sat ~ Infl + Type + Cont, weights = Freq, data = housing)
   display(M7)
   
   M8 <- bayespolr(Sat ~ Infl + Type + Cont, weights = Freq, data = housing)
   display(M8)

Run the code above in your browser using DataLab