lm
object and draw two plots for each regressor, one showing the marginal relationship between the response and the regressor, centered but otherwise ignoring all other regressors, and the other an added-variable plot, showing the conditional relationship of Y and X given all other regressors. The added variable plot by default is drawn using the same xlim and ylim as the centered marginal plot to emphasize that conditioning removes variation in both the regressor and the response.mcPlots(model, terms=~., layout=NULL, ask, overlaid=TRUE, ...)
mcPlot(model, ...)
## S3 method for class 'lm':
mcPlot(model, variable,
id.method = list(abs(residuals(model, type="pearson")), "x"),
labels,
id.n = if(id.method[1]=="identify") Inf else 0,
id.cex=1, id.col=palette()[1],
col.marginal="blue", col.conditional="red", col.arrows="gray",
pch = c(16, 1), lwd = 2, grid=TRUE, ###removed arg main
ellipse=FALSE, ellipse.args=list(levels=0.5),
overlaid=TRUE, new=TRUE, ...)
lm
or glm
.terms = ~.-X3
would plot against all terms
except for X3
. If this argument is a qc(1, 2)
or c(6, 2)
, the layout
of the graph will have this many rows and columns. If not set, the program
will select an appropriate layout of up to c(4,2); with more than 4 regressors, graphs
will be dTRUE
, ask the user before drawing the next plot; if FALSE
don't ask.mcPlots
passes these arguments to mcPlot
.
mcPlot
passes arguments to plot
.id.n=0
for labeling no points. See
showLabels
for details of these arguments.overlaid=TRUE
2
(see par
).TRUE
, the default, a light-gray background grid is put on the graph.TRUE
, plot a concentration ellipse; default is FALSE
.link{dataEllipse}
function, in the form of a list
with named elements; e.g., ellipse.args=list(robust=TRUE))
will cause the ellipse to be plotted using
a robust covariance-matrix.TRUE
, the default, the plot window is reset when overlaid=FALSE
using par{mfrow=c(1, 2)}
. If FALSE
, the layout of the plot window is not reset.
Users will ordinarily ignore this argument.lm
object, suppose the response is Y, X is a focal regressor of interest, and Z is all the remaining regressors. This function produces two graphs. The marginal plot is simply of Y versus X, with each variable centered around its mean. The conditional plot is the added-variable plot of e(Y|Z) versus e(X|Z) where e(a|b) means the ordinary residuals from the regression of a on b. If overlaid=TRUE
, these two plots are overlaid in one graph, with the points in different colors. In addition, each point in the marginal plot is joined to its value in the conditional plot by an arrow. Least squares regression lines fit to the marginal and conditional graphs are also shown; data ellipsoids can also be added. If overlaid=FALSE
, then the two graphs are shown in side-by-side plots, and the arrows are omitted.
These graphs are primarily for teaching, as the marginal plot shows the relationship between Y and X ignoring Z, while the conditional is the relationship between Y and X given X. By keeping the scales the same in both graphs the effect of conditioning on both X and Y can be visualized.
These graphs are closely related to the ARES plots proposed by Cook and Weisberg (1989).
This plot would benefit from animation.avPlots
, residualPlots
, crPlots
, ceresPlots
,
dataEllipse
m1 <- lm(partic ~ tfr + menwage + womwage + debt + parttime, data = Bfox)
mcPlot(m1, "womwage")
mcPlot(m1, "womwage", overlaid=FALSE, ellipse=TRUE)
Run the code above in your browser using DataCamp Workspace