summary.eff
Summarizing, Printing, and Plotting Effects
summary
, print
, and plot
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,
factor.names=TRUE, type=c("response", "link"), ticks=list(at=NULL, n=5),
alternating=TRUE, layout, rescale.axis=TRUE, 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=palette(), symbols=1:10, lines=1:10, cex=1.5,
factor.names=TRUE, style=c("lines", "stacked"),
confint=(style == "lines" && !is.null(x$confidence.level)),
ylim, alternating=TRUE, layout, key.args=NULL,
row=1, col=1, nrow=1, ncol=1, more=FALSE, ...)
## S3 method for class 'efflist':
plot(x, selection, ask=TRUE, graphics=TRUE, ...)
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 or generalized linear 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 of leve
- multiline
- for linear or generalized linear models,
if
TRUE
, each panel of the display represents combinations of values of two predictors, with one predictor (corresponding tox.var
) on the horzontal axis, and the other (corr - 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 successivecolors
correspond to the levels of thez.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 ifmultiline
- 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. - factor.names
- a logical value, default
TRUE
, that controls the inclusion of factor names in conditioning-variable labels. - 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
andn
. Ifat=NULL
(the default), the program attempts to find `nice' locations for the ticks, and the value of - alternating
- if
TRUE
(the default), the tick labels alternate by panels in multi-panel displays from left to right and top to bottom; ifFALSE
, tick labels appear at the bottom and on the left. - layout
- the
layout
argument to thelattice functionxyplot
(or, in some casesdensityplot
), which is used to draw th - 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 toxyplot
ordensityplot
, e.g., to position the key ( - row, col, nrow, ncol, more
- These arguments are used to graph an effect as part of an
array of plots;
row
,col
,nrow
, andncol
are used to compose thesplit
argument andmore
themore
- 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.
- ask
- if
selection
is not supplied andask
isTRUE
(the default), a menu of high-order terms is presented; ifask
isFALSE
, 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.
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.
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): header a character string to label the effect. effect an array containing the estimated effect. lower.header a character string to label the lower confidence limits. lower an array containing the lower confidence limits. upper.header a character string to label the upper confidence limits. upper an array containing the upper confidence limits.
See Also
Examples
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)")
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, ask=FALSE)