print("Multiple Regression - Example 6.2")
pairs(litters, labels=c("lsize\n\n(litter size)", "bodywt\n\n(Body Weight)",
"brainwt\n\n(Brain Weight)"))
# pairs(litters) gives a scatterplot matrix with less adequate labeling
mice1.lm <- lm(brainwt ~ lsize, data = litters) # Regress on lsize
mice2.lm <- lm(brainwt ~ bodywt, data = litters) #Regress on bodywt
mice12.lm <- lm(brainwt ~ lsize + bodywt, data = litters) # Regress on lsize & bodywt
summary(mice1.lm)$coef # Similarly for other coefficients.
# results are consistent with the biological concept of brain sparing
pause()
hat(model.matrix(mice12.lm)) # hat diagonal
pause()
plot(lm.influence(mice12.lm)$hat, residuals(mice12.lm))
print("Diagnostics - Example 6.3")
mice12.lm <- lm(brainwt ~ bodywt+lsize, data=litters)
oldpar <-par(mfrow = c(1,2))
bx <- mice12.lm$coef[2]; bz <- mice12.lm$coef[3]
res <- residuals(mice12.lm)
plot(litters$bodywt, bx*litters$bodywt+res, xlab="Body weight",
ylab="Component + Residual")
panel.smooth(litters$bodywt, bx*litters$bodywt+res) # Overlay
plot(litters$lsize, bz*litters$lsize+res, xlab="Litter size",
ylab="Component + Residual")
panel.smooth(litters$lsize, bz*litters$lsize+res)
par(oldpar)
Run the code above in your browser using DataLab