require(datarium)
## Loading required package: datarium
require(ggplot2)
## Loading required package: ggplot2
library(readxl)
require(dplyr)
## Loading required package: dplyr
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
datos_vivienda <- read_excel("C:/Users/jhon_/Downloads/datos_vivienda.xlsx")
attach(datos_vivienda)

Actividad - Regresión Lineal Simple Metodos y Simulación Estadística

  1. Realice un análisis exploratorio de las variables precio de vivienda (millones de pesos COP) y area de la vivienda (metros cuadrados) - incluir graficos e indicadores apropiados interpretados.
hist(Area_construida)

hist(precio_millon)

summary(datos_vivienda)
##  Area_construida 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

Para estos datos se observa que la mayor cantidad de viviendas cuentan con un area entre los 80 y 100 metros cuadrados ya que en el histograma planteado es donde mas concentracion de datos se observa, para el valor se observa mayor variabilidad.

  1. Realice un análisis exploratorio bivariado de datos enfocado en la relación entre la variable respuesta (y=precio) en función de la variable predictora (x=area) - incluir graficos e indicadores apropiados interpretados.
ggplot(datos_vivienda,aes(x=Area_construida,y=precio_millon))+geom_point()+theme_bw()

cor(Area_construida,precio_millon)
## [1] 0.9190295

Se evidencia una relacion lineal fuertemente positiva r= 0.9190295, con esto se infiere que el area construida es directamente proporcional al precio del inmueble

  1. Estime el modelo de regresión lineal simple entre precio = f(area)+e. Interprete los coeficientes del modelo B0; B1 en caso de ser correcto.
lm(precio_millon~Area_construida,data=datos_vivienda)
## 
## Call:
## lm(formula = precio_millon ~ Area_construida, data = datos_vivienda)
## 
## Coefficients:
##     (Intercept)  Area_construida  
##          86.234            2.124
precio_millon=86.234+(2.124 *Area_construida)

Con esta regresion podemos comprender que por cada metro cuadrado adicional obtendremos un incremento de 2,124 millones

model=lm(precio_millon~Area_construida)
summary(model)
## Warning in summary.lm(model): essentially perfect fit: summary may be unreliable
## 
## Call:
## lm(formula = precio_millon ~ Area_construida)
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -3.527e-13 -6.390e-15  1.819e-14  3.154e-14  4.652e-14 
## 
## Coefficients:
##                  Estimate Std. Error   t value Pr(>|t|)    
## (Intercept)     8.623e+01  5.259e-14 1.640e+15   <2e-16 ***
## Area_construida 2.124e+00  4.351e-16 4.882e+15   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 7.732e-14 on 24 degrees of freedom
## Multiple R-squared:      1,  Adjusted R-squared:      1 
## F-statistic: 2.383e+31 on 1 and 24 DF,  p-value: < 2.2e-16
  1. Construir un intervalo de confianza (95%) para el coeficiente B1, interpretar y concluir si el coeficiente es igual a cero o no. Compare este resultado con una prueba de hipotesis t.
model=lm(precio_millon~Area_construida)
par(mfrow=c(2,2))
plot(model)

summary(model)
## Warning in summary.lm(model): essentially perfect fit: summary may be unreliable
## 
## Call:
## lm(formula = precio_millon ~ Area_construida)
## 
## Residuals:
##        Min         1Q     Median         3Q        Max 
## -3.527e-13 -6.390e-15  1.819e-14  3.154e-14  4.652e-14 
## 
## Coefficients:
##                  Estimate Std. Error   t value Pr(>|t|)    
## (Intercept)     8.623e+01  5.259e-14 1.640e+15   <2e-16 ***
## Area_construida 2.124e+00  4.351e-16 4.882e+15   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 7.732e-14 on 24 degrees of freedom
## Multiple R-squared:      1,  Adjusted R-squared:      1 
## F-statistic: 2.383e+31 on 1 and 24 DF,  p-value: < 2.2e-16
confint(model,"Area_construida",level = 0.95)
## Warning in summary.lm(object, ...): essentially perfect fit: summary may be
## unreliable
##                 2.5 % 97.5 %
## Area_construida 2.124  2.124

Con un nivel de confianza de 95%, los valores de B1 se encuentran entre 1,74 y 2,5

  1. Calcule e interprete el indicador de bondad y ajuste R2.
lm(log(precio_millon)~log(Area_construida))
## 
## Call:
## lm(formula = log(precio_millon) ~ log(Area_construida))
## 
## Coefficients:
##          (Intercept)  log(Area_construida)  
##               2.2669                0.7464
model2=lm(log(precio_millon)~log(Area_construida))
summary(model2)
## 
## Call:
## lm(formula = log(precio_millon) ~ log(Area_construida))
## 
## Residuals:
##       Min        1Q    Median        3Q       Max 
## -0.008000 -0.006133  0.002384  0.003066  0.012835 
## 
## Coefficients:
##                      Estimate Std. Error t value Pr(>|t|)    
## (Intercept)          2.266891   0.019199   118.1   <2e-16 ***
## log(Area_construida) 0.746389   0.004069   183.4   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.005819 on 24 degrees of freedom
## Multiple R-squared:  0.9993, Adjusted R-squared:  0.9993 
## F-statistic: 3.365e+04 on 1 and 24 DF,  p-value: < 2.2e-16
par(mfrow=c(2,2))
plot(model2)

Con este ajuste al modelo se logro pasar de un R^2 con valor de 84.46% a uno de 87.67%, con este concluimos que efectivamente existe un leve ajuste en comparacion al modelo inicial

  1. Cual seria el precio promedio estimado para un apartamento de 110 metros cuadrados? Considera entonces con este resultado que un apartemento en la misma zona con 110 metros cuadrados en un precio de 200 millones seria una buena oferta? Que consideraciones adicionales sedeben tener?.
predict(model,newdata =list(Area_construida=110))
##       1 
## 319.874

Para este escenario en un predio de 110 metros cuadrados se espera que el precio sea de 319,8706 millones, basado en esta estimacion la oferta de 200 millones seria una muy buena oportunidad de negocio

  1. Realice la validación de supuestos del modelo por medio de graficos apropiados, interpretarlos y sugerir posibles soluciones si se violan algunos de ellos.
par(mfrow=c(2,2))
plot(model)

En grafico “Normal Q-Q” los datos no tienen consistencia ya que se evidencian datos por fuera de la recta

  1. De ser necesario realice una transformación apropiada para mejorar el ajuste y supuestos del modelo. y 9. De ser necesario compare el ajuste y supuestos del modelo inicial y el transformado.
datoshiperb=mutate(datos_vivienda,Areahiperb=1/Area_construida)
model3=lm(datoshiperb$precio_millon ~ datoshiperb$Areahiperb)
par(mfrow=c(2,2))
plot(model2)

par(mfrow=c(2,2))
plot(model3)

Se realizo una transformacion adicional de tipo hiperbolica, en la cual se videncia una mejor tendencia de los datos en cuando a su “QQ Normal” con respecto al modelo 2 de tipo logaritmico, de igual forma los errores en el modelo hiperbolico se encuentran dentro de los rangos y conservan mayor linealidad.