library(faraway)
data(savings)
g <- lm(sr ~ pop15+pop75+dpi+ddpi,savings)
plot(fitted(g),residuals(g),xlab="Fitted",ylab="Residuals")
abline(h=0)
plot(fitted(g),abs(residuals(g)),xlab="Fitted",ylab="|Residuals|")
summary(lm(abs(residuals(g)) ~ fitted(g)))
par(mfrow=c(3,3))
for(i in 1:9) plot(1:50,rnorm(50))
for(i in 1:9) plot(1:50,(1:50)*rnorm(50))
for(i in 1:9) plot(1:50,sqrt((1:50))*rnorm(50)) 
for(i in 1:9) plot(1:50,cos((1:50)*pi/25)+rnorm(50))
par(mfrow=c(1,1))
plot(savings$pop15,residuals(g),xlab="Population under 15",ylab="Residuals")
plot(savings$pop75,residuals(g),xlab="Population over 75",ylab="Residuals")
var.test(residuals(g)[savings$pop15>35],residuals(g)[savings$pop15<35])
data(gala)
gg <- lm(Species ~ Area + Elevation + Scruz + Nearest + Adjacent, gala)
plot(fitted(gg),residuals(gg),xlab="Fitted",ylab="Residuals")
gs <- lm(sqrt(Species) ~ Area+ Elevation+ Scruz+ Nearest+ Adjacent, gala)
plot(fitted(gs),residuals(gs),xlab="Fitted",ylab="Residuals",main="Square root Response")
qqnorm(residuals(g),ylab="Residuals")
qqline(residuals(g))
hist(residuals(g))
par(mfrow=c(3,3))
for(i in 1:9) qqnorm(rnorm(50))
for(i in 1:9) qqnorm(exp(rnorm(50))) 
for(i in 1:9) qqnorm(rcauchy(50))
for(i in 1:9) qqnorm(runif(50))
par(mfrow=c(1,1))
data(airquality)
airquality
pairs(airquality,panel=panel.smooth)
g <- lm(Ozone ~ Solar.R + Wind + Temp,airquality,na.action = na.exclude)
summary(g)
plot(fitted(g),residuals(g),xlab="Fitted",ylab="Residuals")
gl <- lm(log(Ozone) ~ Solar.R + Wind + Temp,airquality,na.action=na.exclude)
plot(fitted(gl),residuals(gl),xlab="Fitted",ylab="Residuals")
plot(residuals(gl),ylab="Residuals")
abline(h=0)
plot(residuals(gl)[-153],residuals(gl)[-1], xlab=expression(hat(epsilon)[i]),ylab=expression(hat(epsilon)[i+1]))
summary(lm(residuals(gl)[-1] ~ -1+residuals(gl)[-153]))
library(lmtest)
dwtest(Ozone ~ Solar.R + Wind + Temp,data=na.omit(airquality))
g <- lm(sr ~ pop15 + pop75 + dpi + ddpi, savings)
ginf <- influence(g)
ginf$hat
sum(ginf$hat)
countries <- row.names(savings)
halfnorm(lm.influence(g)$hat,labs=countries,ylab="Leverages")
gs <- summary(g)
gs$sig
stud <- residuals(g)/(gs$sig*sqrt(1-ginf$hat))
qqnorm(stud)
abline(0,1)
jack <- rstudent(g)
jack[which.max(abs(jack))]
qt(.05/(50*2),44)
data(star)
plot(star$temp,star$light,xlab="log(Temperature)",ylab="log(Light Intensity)")
ga <- lm(light ~ temp, star)
abline(ga)
range(rstudent(ga))
ga <- lm(light ~ temp, data=star, subset=(temp>3.6))
abline(ga,lty=2)
cook <- cooks.distance(g)
halfnorm(cook,3,labs=countries,ylab="Cook's distances")
gl <- lm(sr ~ pop15+pop75+dpi+ddpi,savings,subset=(cook < max(cook)))
summary(gl)
summary(g)
plot(ginf$coef[,2],ylab="Change in pop15 coef")
identify(1:50,ginf$coef[,2],countries)
gj <- lm(sr ~ pop15+pop75+dpi+ddpi,savings,subset=(countries != "Japan"))
summary(gj)
d <- residuals(lm(sr ~ pop75 + dpi + ddpi,savings))
m <- residuals(lm(pop15 ~ pop75 + dpi + ddpi,savings))
plot(m,d,xlab="pop15 residuals",ylab="Saving residuals")
coef(lm(d ~ m))
coef(g)
abline(0,coef(g)['pop15'])
plot(savings$pop15,residuals(g)+coef(g)['pop15']*savings$pop15,xlab="pop'n under 15", ylab="Saving(adjusted)")
abline(0,coef(g)['pop15'])
prplot(g,1)
g1 <- lm(sr ~ pop15+pop75+dpi+ddpi,savings,subset=(pop15 > 35))
g2 <- lm(sr ~ pop15+pop75+dpi+ddpi,savings,subset=(pop15 < 35))
summary(g1)
summary(g2)
