Learn R Programming

effects (version 2.2-4)

summary.eff: Summarizing, Printing, and Plotting Effects

Description

summary, print, plot, and [ methods for eff, effpoly, and efflist objects.

Usage

## S3 method for class 'eff':
print(x, type=c("response", "link"), ...)
## S3 method for class 'effpoly':
print(x, type=c("probability", "logits"), ...)
## S3 method for class 'efflatent':
print(x, ...)
## S3 method for class 'efflist':
print(x, ...)
## S3 method for class 'summary.eff':
print(x, ...)
## S3 method for class 'eff':
summary(object, type=c("response", "link"), ...)
## S3 method for class 'effpoly':
summary(object, type=c("probability", "logits"), ...)
## S3 method for class 'efflatent':
summary(object, ...)
## S3 method for class 'efflist':
summary(object, ...)
## S3 method for class 'eff':
plot(x, x.var = which.max(levels), z.var = which.min(levels), 
    multiline = is.null(x$se), rug = TRUE, xlab, ylab, main = paste(effect, 
        "effect plot"), colors = palette(), symbols = 1:10, lines = 1:10, 
    cex = 1.5, ylim, xlim = NULL, factor.names = TRUE, 
    ci.style, 
    type = c("response", "link"), ticks = list(at = NULL, n = 5), alternating = TRUE, 
    rotx = 0, roty = 0, grid = FALSE, layout, rescale.axis = TRUE, 
    transform.x = NULL, ticks.x = NULL, key.args = NULL, row = 1, 
    col = 1, nrow = 1, ncol = 1, more = FALSE, ...) 
## S3 method for class 'effpoly':
plot(x, type = c("probability", "logit"), x.var = which.max(levels), 
    rug = TRUE, xlab, ylab = paste(x$response, " (", type, ")", 
        sep = ""), main = paste(effect, "effect plot"), colors, 
    symbols = 1:10, lines = 1:10, cex = 1.5, factor.names = TRUE,
    ci.style, 
    style = c("lines", "stacked"), confint = (style == "lines" && 
        !is.null(x$confidence.level)), transform.x = NULL, ticks.x = NULL, 
    xlim = NULL, ylim, rotx = 0, alternating = TRUE, roty = 0, 
    grid = FALSE, layout, key.args = NULL, row = 1, col = 1, 
    nrow = 1, ncol = 1, more = FALSE, ...)
## S3 method for class 'efflist':
plot(x, selection, rows, cols, ask=FALSE, graphics=TRUE, ...)
## S3 method for class 'efflist':
[(x, ...)

Arguments

x
an object of class "eff", "effpoly", "efflist", or "summary.eff", as appropriate.
object
an object of class "eff", "effpoly", or "efflist", as appropriate.
type
for linear and generalized linear models, if "response" (the default), effects are printed or the vertical axis is labelled on the scale of the response variable; if "link", effects are printed or the vertic
x.var
the index (number) or quoted name of the covariate or factor to place on the horizontal axis of each panel of the effect plot. The default is the predictor with the largest number of levels or values.
z.var
for linear, generalized linear or mixed models, the index (number) or quoted name of the covariate or factor for which individual lines are to be drawn in each panel of the effect plot. The default is the predictor with the smallest number
multiline
for linear, generalized linear or mixed models, if TRUE, each panel of the display represents combinations of values of two predictors, with one predictor (corresponding to x.var) on the horzontal axis, and the othe
confint
plot point-wise confidence bands around fitted effects (for multinomial and proportional-odds logit models); defaults to TRUE, in which case separate panels are used for different response levels.
rug
if TRUE, the default, a rug plot is shown giving the marginal distribution of the predictor on the horizontal axis, if this predictor is a covariate.
xlab
the label for the horizontal axis of the effect plot; if missing, the function will use the name of the predictor on the horizontal axis.
ylab
the label for the vertical axis of the effect plot; the default is constructed from the name of the response variable for the model from which the effect was computed.
main
the title for the plot, printed at the top; the default title is constructed from the name of the effect.
colors
colors[1] is used to plot effects, colors[2] to plot confidence bands. In a mulitline plot, the successive colors correspond to the levels of the z.var covariate or factor. In a stacked plot o
symbols, lines
corresponding to the levels of the z.var covariate or factor on a multiline plot, or to the successive levels of the response factor in a line plot for a polytomous logit model. These arguments are used only if multiline
cex
character expansion for plotted symbols; default is 1.5.
ylim
2-element vector containing the lower and upper limits of the vertical axes; if NULL, the default, then the vertical axes are scaled from the data.
xlim
a named list of 2-element vectors, with the names corresponding to numeric predictors; if a numeric predictor is in the list, then when it appears on the horizontal axis, the axis limits will be taken from the corresponding vector; if a predicto
factor.names
a logical value, default TRUE, that controls the inclusion of factor names in conditioning-variable labels.
ci.style
confidence bounds can be indicated using error bars or using lines. For single line plots the default is "bars" for factors and "lines" for variates. For multiline plots, the default is "none" for no
style
(for multinomial or proportional-odds logit models) "lines" (the default for a line plot, or "stacked" for a stacked-bar or stacked-area plot. In the latter case only fitted probabilities may be plotted and confidence e
ticks
a two-item list controlling the placement of tick marks on the vertical axis, with elements at and n. If at=NULL (the default), the program attempts to find `nice' locations for the ticks, and the value of
ticks.x
a named list of two-item lists controlling the placement of tick marks on the horizontal axis. Each list element is named for a numeric predictor in the model, and each sublist has elements code or n are for the t
transform.x
transformations to be applied to the horizontal axis, in the form of a named list, each of whose elements is itself a list of two functions, with sublist element names trans and inverse. The names of the list elements a
alternating
if TRUE (the default), the tick labels alternate by panels in multi-panel displays from left to right and top to bottom; if FALSE, tick labels appear at the bottom and on the left.
rotx, roty
rotation angles for the horizontal and vertical tick marks, respectively. Default is 0.
grid
if TRUE, add grid lines to the plot. Default is FALSE.
layout
the layout argument to the lattice function xyplot (or, in some cases densityplot), which is used to draw the effect displ
rescale.axis
if TRUE (the default), the tick marks on the vertical axis are labelled on the response scale (e.g., the probability scale for effects computed on the logit scale for a binomial GLM).
key.args
additional arguments to be passed to the key trellis argument to xyplot or densityplot, e.g., to position the key (legend) in the
row, col, nrow, ncol, more
These arguments are used to graph an effect as part of an array of plots; row, col, nrow, and ncol are used to compose the split argument and more the more
selection
the optional index (number) or quoted name of the effect in an effect list to be plotted; if not supplied, a menu of high-order terms is presented or all effects are plotted.
rows, cols
Number of rows and columns in the ``meta-array'' of plots produced for an efflist object; if either argument is missing, then the meta-layout will be computed by the plot method.
ask
if selection is not supplied and ask is TRUE, a menu of high-order terms is presented; if ask is FALSE (the default), effects for all high-order terms are plotted in an array.
graphics
if TRUE (the default), then the menu of terms to plot is presented in a dialog box rather than as a text menu.
...
arguments to be passed down.

Value

  • The summary method for "eff" objects returns a "summary.eff" object with the following components (those pertaining to confidence limits need not be present):
  • headera character string to label the effect.
  • effectan array containing the estimated effect.
  • lower.headera character string to label the lower confidence limits.
  • loweran array containing the lower confidence limits.
  • upper.headera character string to label the upper confidence limits.
  • upperan array containing the upper confidence limits.
  • The [ method for "efflist" objects is used to subset an "efflist" object and returns an object of the same class.

Details

In a generalized linear model, by default, the print and summary methods for eff objects print the computed effects on the scale of the response variable using the inverse of the link function. In a logit model, for example, this means that the effects are expressed on the probability scale. By default, effects in a GLM are plotted on the scale of the linear predictor, but the vertical axis is labelled on the response scale. This preserves the linear structure of the model while permitting interpretation on what is usually a more familiar scale. This approach may also be used with linear models, for example to display effects on the scale of the response even if the data are analyzed on a transformed scale, such as log or square-root. In a polytomous (multinomial or proportional-odds) logit model, by default effects are plotted on the probability scale; they may be alternatively plotted on the scale of the individual-level logits.

See Also

effect, allEffects, xyplot, densityplot, print.trellis rainbow_hcl, sequential_hcl

Examples

Run this code
mod.cowles <- glm(volunteer ~ sex + neuroticism*extraversion, 
    data=Cowles, family=binomial)
eff.cowles <- allEffects(mod.cowles, xlevels=list(neuroticism=0:24, 
    extraversion=seq(0, 24, 6)))
eff.cowles

plot(eff.cowles, 'sex', ylab="Prob(Volunteer)", grid=TRUE, rotx=90)

plot(eff.cowles, 'neuroticism:extraversion', ylab="Prob(Volunteer)",
    ticks=list(at=c(.1,.25,.5,.75,.9)))

plot(eff.cowles, 'neuroticism:extraversion', multiline=TRUE, 
    ylab="Prob(Volunteer)", key.args = list(x = 0.75, y = 0.75, corner = c(0, 0)))
    
plot(effect('sex:neuroticism:extraversion', mod.cowles,
    xlevels=list(neuroticism=0:24, extraversion=seq(0, 24, 6))), multiline=TRUE)

mod.beps <- multinom(vote ~ age + gender + economic.cond.national +
				economic.cond.household + Blair + Hague + Kennedy +
				Europe*political.knowledge, data=BEPS)
plot(effect("Europe*political.knowledge", mod.beps, 
	xlevels=list(Europe=1:11, political.knowledge=0:3)))
	
plot(effect("Europe*political.knowledge", mod.beps, 
		xlevels=list(Europe=1:11, political.knowledge=0:3),
		given.values=c(gendermale=0.5)),
	style="stacked", colors=c("blue", "red", "orange"), rug=FALSE)
	
mod.wvs <- polr(poverty ~ gender + religion + degree + country*poly(age,3),
	data=WVS)
plot(effect("country*poly(age, 3)", mod.wvs))

plot(effect("country*poly(age, 3)", mod.wvs), style="stacked", 
	colors=c("gray75", "gray50", "gray25"))
	
plot(effect("country*poly(age, 3)", latent=TRUE, mod.wvs))

mod.pres <- lm(prestige ~ log(income, 10) + poly(education, 3) + poly(women, 2), 
    data=Prestige)
eff.pres <- allEffects(mod.pres, default.levels=50)
plot(eff.pres)
plot(eff.pres[1:2])
plot(eff.pres[1], 
    transform.x=list(income=list(trans=log10, inverse=function(x) 10^x)),
    ticks.x=list(at=c(1000, 2000, 5000, 10000, 20000)))

Run the code above in your browser using DataLab