Dear list,
I would like to know how the function residuals.lm calculates the
partial residuals from an lm object with more than one predictor
variable. In other words what is residuals.lm(...,type="partial") doing
behind the scenes? According to the help file for residuals.lm
(?residuals.lm), "The partial residuals are a matrix with each column
formed by omitting a term from the model". Unfortunately, I cannot seem
to recreate the results of the function "residuals.lm" by simply
dropping a variable from a model and then calculating the raw residuals
of the updated model. Can anyone see what I am overlooking? It may be
helpful to others if I mention that the usage of
residuals.lm(...,type='partial') by the function termplot is what
motivated me to look at this function more closely. Below is a simple
example to illustrate my question:
set.seed(12)
x1 <- runif(100)
x2 <- runif(100)
y <- .13+.25*x1+.70*x2+runif(100)
mod <- lm(y~x1+x2)
##let's only consider the partial residuals when x2 is dropped from the
model
plot(residuals(mod,type="partial")[,2],residuals(update(mod,.~.-x2),type='response'))
abline(0,1) ##1:1 line
##why do the points not all fall on the 1:1 line?
Thanks,
Dan
--
Daniel J. McGlinn
Department of Botany, Oklahoma State University
http://ecology.okstate.edu/Libra/
______________________________________________
R-help@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help
PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
and provide commented, minimal, self-contained, reproducible code.