mmps {car}R Documentation

Marginal Model Plotting

Description

For a regression object, plots the response on the vertical axis versus a linear combination u of terms in the mean function on the horizontal axis. Added to the plot are a loess smooth for the graph, along with a loess smooth from the plot of the fitted values on u. mmps is an alias for marginalModelPlots, and mmp is an alias for marginalModelPlot.

Usage

marginalModelPlots(...)

mmps(model, terms= ~ ., fitted=TRUE, layout=NULL, ask,
        main, ...)

marginalModelPlot(...)

## S3 method for class 'lm'
mmp(model, variable, mean = TRUE, sd = FALSE,
    xlab = deparse(substitute(variable)), degree = 1, span = 2/3, key=TRUE, 
    ...)
    
## Default S3 method:
mmp(model, variable, mean = TRUE, sd = FALSE, xlab =
                 deparse(substitute(variable)), degree = 1, span = 2/3,
                 key = TRUE, col.line = palette()[c(4,2)], col=palette()[1],   
                 labels, id.method = "y", 
                 id.n=if(id.method[1]=="identify") Inf else 0, 
                 id.cex = 1, id.col=palette()[1], grid=TRUE, ...)
   
## S3 method for class 'glm'
mmp(model, variable, mean = TRUE, sd = FALSE,
    xlab = deparse(substitute(variable)), degree = 1, span = 2/3, key=TRUE,
    col.line = palette()[c(4, 2)], col=palette()[1],
    labels, id.method="y", 
    id.n=if(id.method[1]=="identify") Inf else 0,
    id.cex=1, id.col=palette()[1], grid=TRUE, ...)

Arguments

model

A regression object, usually of class either lm or glm, for which there is a predict method defined.

terms

A one-sided formula. A marginal model plot will be drawn for each variable on the right-side of this formula that is not a factor. The default is ~ ., which specifies that all the terms in formula(object) will be used. See examples below.

fitted

If the default TRUE, then a marginal model plot in the direction of the fitted values or linear predictor of a generalized linear model will be drawn.

layout

If set to a value like c(1, 1) or c(4, 3), the layout of the graph will have this many rows and columns. If not set, the program will select an appropriate layout. If the number of graphs exceed nine, you must select the layout yourself, or you will get a maximum of nine per page. If layout=NA, the function does not set the layout and the user can use the par function to control the layout, for example to have plots from two models in the same graphics window.

ask

If TRUE, ask before clearing the graph window to draw more plots.

main

Main title for the array of plots. Use main="" to suppress the title; if missing, a title will be supplied.

...

Additional arguments passed from mmps to mmp and then to plot. Users should generally use mmps, or equivalently marginalModelPlots.

variable

The quantity to be plotted on the horizontal axis. The default is the predicted values predict(object). Can be any other vector of length equal to the number of observations in the object. Thus the mmp function can be used to get a marginal model plot versus any predictor or term while the mmps function can be used only to get marginal model plots for the first-order terms in the formula. In particular, terms defined by a spline basis are skipped by mmps, but you can use mmp to get the plot for the variable used to define the splines.

mean

If TRUE, compare mean smooths

sd

If TRUE, compare sd smooths. For a binomial regression with all sample sizes equal to one, this argument is ignored as the SD bounds don't make any sense.

xlab

label for horizontal axis

degree

Degree of the local polynomial, passed to loess. The usual default for loess is 2, but the default here is 1.

span

Span, the smoothing parameter for loess.

key

If TRUE, include a key at the top of the plot, if FALSE omit the key

id.method,labels,id.n,id.cex,id.col

Arguments for labelling points. The default id.n=0 suppresses labelling, and setting this argument greater than zero will include labelling. See showLabels for these arguments.

col.line

colors for data and model smooth, respectively. Using the default palette, these are blue and red.

col

color(s) for the plotted points.

grid

If TRUE, the default, a light-gray background grid is put on the graph

Details

mmp and marginalModelPlot draw one marginal model plot against whatever is specified as the horizontal axis. mmps and marginalModelPlots draws marginal model plots versus each of the terms in the terms argument and versus fitted values. mmps skips factors and interactions if they are specified in the terms argument. Terms based on polynomials or on splines (or potentially any term that is represented by a matrix of predictors) will be used to form a marginal model plot by returning a linear combination of the terms. For example, if you specify terms ~ X1 + poly(X2, 3) and poly(X2, 3) was part of the original model formula, the horizontal axis of the marginal model plot will be the value of predict(model, type="terms")[, "poly(X2, 3)"]). If the predict method for the model you are using doesn't support type="terms", then the polynomial/spline term is skipped.

Value

Used for its side effect of producing plots.

Author(s)

Sanford Weisberg, sandy@stat.umn.edu

References

Fox, J. and Weisberg, S. (2011) An R Companion to Applied Regression, Second Edition. Sage.

Weisberg, S. (2005) Applied Linear Regression, Third Edition, Wiley, Chapter 8.

See Also

loess, plot

Examples

## Not run: 
c1 <- lm(infant.mortality ~ gdp, UN)
mmps(c1)
c2 <- update(c1, ~ poly(gdp, 4), data=na.omit(UN))
# plot against predict(c2, type="terms")[, "poly(gdp, 4)"] and
# and against gdp
mmps(c2, ~ poly(gdp,4) + gdp)
# include SD lines
p1 <- lm(prestige ~ income + education, Prestige)
mmps(p1, sd=TRUE)
# logisitic regression example
# smoothers return warning messages.

m1 <- glm(lfp ~ ., family=binomial, data=Mroz)
mmps(m1)

## End(Not run)

[Package car version 2.0-12 Index]