library(readxl)
vivienda= read_excel("C:/Users/asus/Desktop/Maestria/metodos y simulacion estadistica/Semana 4/datos_vivienda.xlsx")
vivienda
## # A tibble: 26 x 2
## Area_contruida precio_millon
## <dbl> <dbl>
## 1 86 250
## 2 118 385
## 3 130 395
## 4 181 419
## 5 86 240
## 6 98 320
## 7 170 480
## 8 96 268
## 9 85 240
## 10 170 450
## # ... with 16 more rows
attach(vivienda)
par(mfrow=c(1,2))
hist(Area_contruida)
line = mean(Area_contruida)
abline(v=line, col="red", lwd=4)
hist(precio_millon)
line2 = mean(precio_millon)
abline(v=line2, col="red", lwd=4)
summary(vivienda)
## Area_contruida precio_millon
## Min. : 80.0 Min. :240.0
## 1st Qu.: 86.0 1st Qu.:251.2
## Median : 97.0 Median :305.0
## Mean :115.7 Mean :332.1
## 3rd Qu.:130.0 3rd Qu.:395.0
## Max. :195.0 Max. :480.0
#Se observa que la base de datos contiene información sobre el registro del precio de las viviendas (y) de acuerdo al area construida de las viviendas (x). Segùn muestran los histogramas, se observa que el promedio de area construida es de 115.7 Metros, mientras que el promedio del percio de las viviendas es de 332 millones. Es posible observar que a medida que aumenta el area construida de las viviendas, asi mismo aumenta su valor en el mercado.
plot(vivienda$precio_millon,vivienda$Area_contruida)
cor(vivienda$precio_millon,vivienda$Area_contruida)
## [1] 0.9190295
#Existe una relacion lineal postivia entre el area construida y el precio de las viviendas. Se observa también la correlación entre area construida y precio de las viviendas. Entre mayor sea el area construida más elevado es su precioa y su relación es fuerte de acuerdo con el coeficiente de correlación de Pearson (0,91)
mod=lm(precio_millon~Area_contruida,data=vivienda)
summary(mod)
##
## Call:
## lm(formula = precio_millon ~ Area_contruida, data = vivienda)
##
## Residuals:
## Min 1Q Median 3Q Max
## -51.673 -25.612 -6.085 24.875 67.650
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 86.234 22.479 3.836 0.000796 ***
## Area_contruida 2.124 0.186 11.422 3.45e-11 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 33.05 on 24 degrees of freedom
## Multiple R-squared: 0.8446, Adjusted R-squared: 0.8381
## F-statistic: 130.5 on 1 and 24 DF, p-value: 3.45e-11
#Por cada metro cuadrado de area construida el valor del precio de las viviendas aumenta en un 2.12 (dos millones). Si no se aumenta ningun metro del area construida de las viviendas el valor en millones de las viciendas serían de aproximadamente de 86 millones
confint(mod, "Area_contruida", level = 0.95)
## 2.5 % 97.5 %
## Area_contruida 1.74017 2.507771
#Es posible determinar que su el intervalo de confianza es del 95% para el coeficiente β1 (Area construida) este puede tomar un valor entre 1.74 y 2.50 millones por cada metro cuadrado de area construida. Tambièn, la prueba de hipotesis t arroja un valor de 3.45e-11, lo que indica que el Area_Construida es significativa para el modelo, ya que su p-value es < a 0.05.
summary(mod)
##
## Call:
## lm(formula = precio_millon ~ Area_contruida, data = vivienda)
##
## Residuals:
## Min 1Q Median 3Q Max
## -51.673 -25.612 -6.085 24.875 67.650
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 86.234 22.479 3.836 0.000796 ***
## Area_contruida 2.124 0.186 11.422 3.45e-11 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 33.05 on 24 degrees of freedom
## Multiple R-squared: 0.8446, Adjusted R-squared: 0.8381
## F-statistic: 130.5 on 1 and 24 DF, p-value: 3.45e-11
#Es posible observar que el coeficiente de determinaciòn del modelo es de 0.8446, es decir, el modelo explica el 84% de la variabilidad del precio del inmueble.
predict(mod,list(Area_contruida= 110), interval = "confidence")
## fit lwr upr
## 1 319.8706 306.3133 333.4279
##El precio promedio para un apartamento de 110 metos cuadrados sería de 319 millones.El precio para un apartamento con esta area podrìa estar 306 y 333 millones. Asì, la oferta de 200 millones para un precio en esta misma zona sería adecuado pues estaría por debajo del precio promedio de los apartamentos. Sin embargo, habría que considerar otras caracteristicas que tenga el apartamento para ver si es una buena oferta.
par(mfrow=c(2,2))
plot(mod)
#se puede observar que en el grafico de los errores contra los ajsutados la relación no es lineal, por lo tanto es necesaria una transformaciòn para linealizar la relaciòn. #grafico de normalidad: se observa que que hay puntos que se salen de la línea de la distribución normal y no son cercanos a la misma, por tanto esto indica que la relación no es lineal. Por tanto se concluye que es necesario aplicar una transformación al modelo que logre mejorar la estimación. En este caso se aplica un logaritmo debido a que el modelo es exponencial según lo observado.
mod_ajustado = lm((precio_millon)~log(Area_contruida))
summary(mod_ajustado)
##
## Call:
## lm(formula = (precio_millon) ~ log(Area_contruida))
##
## Residuals:
## Min 1Q Median 3Q Max
## -45.837 -20.153 -1.878 20.145 55.145
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -948.53 89.09 -10.65 1.42e-10 ***
## log(Area_contruida) 271.88 18.88 14.40 2.63e-13 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 27 on 24 degrees of freedom
## Multiple R-squared: 0.8963, Adjusted R-squared: 0.8919
## F-statistic: 207.4 on 1 and 24 DF, p-value: 2.63e-13
par(mfrow=c(2,2))
plot(mod_ajustado)
##con un ajuste al modelo mejora la aleatoriedad de los residuales e incluso la normalidad. Al volver a estimar el modelo se obtiene un valor de 271.88 millnes sobre la nueva escala logaritmica de la variable respuesta.
#Al realizar el ajuste del modelo y al compararlo con el modelo inicial se puede observar una variacion leve en los resultados. El modelo inicial inicial presentaba un r2 de 0.8446 y con el ajuste este r2 paso a 0.8963.