#la.rent <- read.table("D:/courses/regression/data sets/LARENT.txt",header=F) rent.price <- la.rent[,1] area.bath <- la.rent[,6] dist.beach <- la.rent[,8] dist.ucla <- la.rent[,9] vec.1 <- rep(1,26) lm.1 <- lm(rent.price ~ area.bath + dist.beach + dist.ucla ) lm.2 <- lm(rent.price ~ vec.1 + area.bath + dist.beach + dist.ucla + 0) # Excercise 4, question - 1 anova(lm.1) anova(lm.2) SSE <- anova(lm.2)$Sum[5] # SSE for two models SSR.1 <- sum(anova(lm.2)$Sum[2:4]) # SSR for two models SSR.2 <- sum(anova(lm.2)$Sum[1:4]) summary(lm.1) SSE + SSR.1 # SST for lm.1 sum(anova(lm.2)$Sum[2:5]) sum((rent.price-mean(rent.price))^2) 1 - SSE/(SSE + SSR.1) # R-squared for lm.1 1 - (SSE/(26-4))/((SSE + SSR.1)/(26-1)) # adjusted R-squared for lm.1 (SSR.1/3)/(SSE/(26-4)) # F test for regression model lm.1 summary(lm.2) SSE + SSR.2 # SST for lm.2 sum(anova(lm.2)$Sum[1:5]) sum((rent.price)^2) 1 - SSE/(SSE + SSR.2) # R-squared for lm.2 1 - (SSE/(26-4))/((SSE + SSR.2)/(26)) # adjusted R-squared for lm.1 (SSR.2/4)/(SSE/(26-4)) # F test for regression model lm.2 SSE / qchisq(0.975,22) # 0.95 CI for sigma square SSE / qchisq(0.025,22) sqrt(SSE / qchisq(0.975,22)) # 0.95 CI for sigma sqrt(SSE / qchisq(0.025,22)) # Excercise 4, question - 2 summary(lm.1) anova(lm.1) lm.1a <- lm(rent.price ~ area.bath + dist.ucla + dist.beach) summary(lm.1a) anova(lm.1a) anova(lm.2) (sum(anova(lm.2)$Sum[3:4])/2)/(SSE/22) # Excercise 4, question - 3 predict(lm.1,newdata= data.frame(area.bath = 40, dist.beach = 0, dist.ucla = 6),interval="confidence") (est <- lm.1$coef %*% cbind(c(1,40,0,6))) (se <- sqrt(rbind(c(1,40,0,6)) %*%vcov(lm.1) %*% cbind(c(1,40,0,6)))) est + se*qt(0.975,22) est - se*qt(0.975,22) predict(lm.1,newdata= data.frame(area.bath = 40, dist.beach = 0, dist.ucla = 6),interval="prediction") est + sqrt(se^2 + SSE/22)*qt(0.975,22) est - sqrt(se^2 + SSE/22)*qt(0.975,22)