predictorEffects {effects}R Documentation

Functions For Computing Predictor Effects

Description

Alternatives to the Effect and allEffects functions that use a different paradigm for conditioning in an effects display. The user specifies one predictor, either continuous or a factor, for the horizontal axis of a plot, and the function determines the appropriate plot to display (which is drawn by plot).

Usage

predictorEffect(predictor, mod, xlevels, ...)

## S3 method for class 'svyglm'
predictorEffect(predictor, mod, xlevels, ...)

## Default S3 method:
predictorEffect(predictor, mod, xlevels, ...)

predictorEffects(mod, predictors, ...)

## Default S3 method:
predictorEffects(mod, predictors = ~ ., ...)

Arguments

mod

A model object. Supported models include all those described on the help page for Effect.

predictor

quoted name of the focal predictor.

xlevels

this argument is used to set the values for any predictor in the effect that is not a factor. For a predictor effect, the default is to use 50 quantiles of the focal predictor on the x-axis between the 0.01 and 0.98 quantiles. See Effect for details and for how other defaults are set.

predictors

If the default ~ ., a predictor effecrts plot is drawn for each predictor (not regressor) in a model. Otherwise, this should be a one-sided formula listing the first-order predictors for which predictor effects plots should be drawn.

...

Additional arguments passed to Effect.

Details

Effects plots view a fitted regression function E(Y|X) in (sequences of) two-dimensional plots using conditioning and slicing. The functions describe here use a different method of determining the conditioning and slicing than Effects uses. The predictor effects a focal predictor say x1 will be the the usual effect for the generalized interaction of x1 with all the other predictors in a model. When a predictor effects object is plotted, the focal predictor is by default plotted on the horizontal axis.

For example, in the model mod with formula y ~ x1 + x2 + x3, then p1 <- predictorEffects(mod, ~ x1) is essentially equilavent to p2 <- Effect("x1", mod). When plotted, these objects may be different because plot(p1) will always put x1 on the horizontal axis while plot(p2) uses a rule to determine the horizontal axis based on the characteristics of all the predictors, preferring continuous predictors over factors.

If mod has the formula y ~ x1 + x2 + x3 + x1:x2, then p1 <- predictorEffects(mod, ~ x1) is essentially equilavent to p2 <- Effect(c("x1", "x2"), mod). As in the last example, the plotted versions of these objects may differ because of rules used to determine the horizontal axis.

If mod has the formula y ~ x1 + x2 + x3 + x1:x2 + x1:x3, then p1 <- predictorEffects(mod, ~ x1) is essentially equilavent to p2 <- Effect(c("x1", "x2", "x3"), mod). The plotted versions of these objects may differ because of rules used to determine the horizontal axis.

Value

predictorEffect returns an object of class c(predictoreff, eff). The components of the object are described under the detalis at Effect. predictorEffects returns an object of class predictorefflist, which is a list whose elements are of class c(predictoreff, eff)

Author(s)

S. Weisberg, sandy@umn.edu

References

See Effect.

See Also

Effect, plot.predictoreff

Examples

mod <- lm(prestige ~ type*(education + income) + women, Prestige)
plot(predictorEffect("income", mod))
plot(predictorEffects(mod, ~ education + income + women))

# svyglm() example (adapting an example from the survey package)

if (require(survey)){
  data(api)
  dstrat<-svydesign(id=~1, strata=~stype, weights=~pw,
    data=apistrat, fpc=~fpc)
  mod <- svyglm(sch.wide ~ ell + meals + mobility, design=dstrat,
    family=quasibinomial())
  plot(predictorEffects(mod),
    axes=list(y=list(lim=log(c(0.4, 0.99)/c(0.6, 0.01)),
      ticks=list(at=c(0.4, 0.75, 0.9, 0.95, 0.99)))))
}


[Package effects version 4.0-2 Index]