#getwd setwd("/Users/hlopes/Desktop/TEACHING/2016-2to6-Econometria-graduacaoeconomia/aulas/aula0309") data = read.table("http://hedibert.org/wp-content/uploads/2014/03/houseprices.txt",header=TRUE) attach(data) # Potential regressors # ------------------------ par(mfrow=c(2,2)) plot(SqFt,Price) plot(Bedrooms,Price) plot(Bathrooms,Price) plot(Brick,Price,xlab="Brick",ylab="Price") # 1st regression model # -------------------------- reg.simples = lm(Price~SqFt) par(mfrow=c(1,1)) plot(SqFt,reg.simples$residuals/22480,xlab="Tamanho",ylab="Residuos padronizados") abline(h=-2,lty=2) abline(h=0,lty=1) abline(h=2,lty=2) # 2nd regression model # -------------------------- reg.multipla = lm(Price~SqFt+Bedrooms) par(mfrow=c(1,3)) plot(SqFt,reg.multipla$residuals/21100,xlab="Tamanho",ylab="Residuos padronizados") abline(h=-2,lty=2) abline(h=0,lty=1) abline(h=2,lty=2) plot(Bedrooms,reg.multipla$residuals/21100,xlab="Bedrooms",ylab="Residuos padronizados") abline(h=-2,lty=2) abline(h=0,lty=1) abline(h=2,lty=2) plot(reg.multipla$fit,reg.multipla$residuals/21100,xlab="Valores ajustados",ylab="Residuos padronizados") abline(h=-2,lty=2) abline(h=0,lty=1) abline(h=2,lty=2) # 3rd regression model # -------------------------- reg.multipla2 = lm(Price~SqFt+Bedrooms+Bathrooms) par(mfrow=c(1,1)) plot(reg.multipla2$fit,reg.multipla2$residuals/20360,xlab="Valores ajustados", ylab="Residuos padronizados") abline(h=-2,lty=2) abline(h=0,lty=1) abline(h=2,lty=2) # 4th regression model # -------------------------- brick=rep(0,128) brick[Brick=="Yes"]=1 reg.multipla3 = lm(Price~SqFt+Bedrooms+Bathrooms+Offers+brick) par(mfrow=c(1,1)) plot(reg.multipla3$fit,reg.multipla3$residuals/12770,xlab="Valores ajustados", ylab="Residuos padronizados") abline(h=-2,lty=2) abline(h=0,lty=1) abline(h=2,lty=3) # Comparing fitted values with observed values # ------------------------------------------------------- par(mfrow=c(2,2)) plot(reg.simples$fit,Price,xlab="Valores ajustados",ylab="Price",xlim=c(65000,220000),ylim=c(65000,220000)) title("Price on SqFt") abline(0,1) legend("topleft",paste("R2=",round(summary(reg.simples)$adj.r,4),sep="")) plot(reg.multipla$fit,Price,xlab="Valores ajustados",ylab="Price",xlim=c(65000,220000),ylim=c(65000,220000)) title("Price on SqFt + Bedrooms") abline(0,1) legend("topleft",paste("R2=",round(summary(reg.multipla)$adj.r,4),sep="")) plot(reg.multipla2$fit,Price,xlab="Valores ajustados",ylab="Price",xlim=c(65000,220000),ylim=c(65000,220000)) title("Price on SqFt + Bedrooms + Bathrooms") abline(0,1) legend("topleft",paste("R2=",round(summary(reg.multipla2)$adj.r,4),sep="")) plot(reg.multipla3$fit,Price,xlab="Valores ajustados",ylab="Price",xlim=c(65000,220000),ylim=c(65000,220000)) title("Price on SqFt + Bedrooms + Bathrooms + Brick") abline(0,1) legend("topleft",paste("R2=",round(summary(reg.multipla3)$adj.r,4),sep=""))