Carga de paquetes requeridos

require(ggplot2)
## Loading required package: ggplot2
require(ggpubr)
## Loading required package: ggpubr

Carga de datos

library(readxl)
datosv <- read_excel("datos_vivienda.xlsx", sheet = "Sheet1")

Desarrollo Punto #1 Análisis exploratorio univariado

par(mfrow=c(1,2))
hist(datosv$Area_construida)

hist(datosv$precio_millon)

Cuando se observa los histogramas de las variables área construida, se puede observar que gran parte de los inmuebles tienen un área de entre 80 y 100 metros cuadrados construidos. Por otra parte, existen muy pocos inmuebles en los datos cuya área construida supere los 140 metros cuadrados.

Esto también se refleja de la misma forma en los precios. Los inmuebles que mayor

Desarrollo Punto #2 Análisis exploratorio bivariado (Análisis de Correlación)

ggplot(datosv,aes(x=Area_construida,y=precio_millon))+geom_point()+theme_bw()+geom_smooth()
## `geom_smooth()` using method = 'loess' and formula 'y ~ x'

cor(datosv$Area_construida,datosv$precio_millon, method = "pearson")
## [1] 0.9190295

Al calcular el coeficiente de relación entre el área construida y el precio en millones en de un inmueble, encontramos que existe una relación positiva fuerte. Esto quiere decir que a mayor área construida, se espera que el precio del inmueble aumente.

También podemos observar esta relación con el gráfico de dispersión, en donde a medida que la variable del eje X (Área Construida) crece, así lo hace la variable dependiente de esta en el eje Y (Precio en millones)

3. Estimación del modelo lineal simple precio = f(area) + e

mdl=lm(datosv$precio_millon~datosv$Area_construida, data = datosv)
summary(mdl)
## 
## Call:
## lm(formula = datosv$precio_millon ~ datosv$Area_construida, data = datosv)
## 
## 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 ***
## datosv$Area_construida    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

Al estimar el modelo de regresión simple, se obtiene que los coeficientes β0 y β1 son 86.234 y 2.124 respectivamente. Esto quiere decir que cuando una propiedad tiene área construida igual a 0, se espera que su precio en millones sea de 86.234 y que por cada metro más de área construida, su precio se incrementa en 2.124 millones.

Así mismo, el nivel de significancia nos indica que la relación entre estas dos variables es estrecha.

4. y 5. Indicador de bondad y Ajuste R2

El indicador de R2 estimado para el modelo es de 0.8446, es decir, que este modelo puede explicar el 84.46% de los precios del conjunto de datos.

6. Predicción usando el modelo estimado

predict(mdl, newdata = list(Area_construida=110.0))
##        1        2        3        4        5        6        7        8 
## 268.8953 336.8624 362.3500 470.6725 268.8953 294.3830 447.3089 290.1350 
##        9       10       11       12       13       14       15       16 
## 266.7714 447.3089 271.0193 337.7545 268.8953 266.7714 290.1350 268.8953 
##       17       18       19       20       21       22       23       24 
## 268.8953 362.3500 370.8459 256.1515 362.3500 271.0193 362.3500 275.2672 
##       25       26 
## 500.4081 447.3089

7. Validación de supuestos para el modelo estimado

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

Los residuales presentan comportamiento, y no hay completa aleatoriedad. Por ende, no podemos afirmar que la relación entre área construida y precio en millones sea lineal

Así mismo, en el gráfico Q-Q normal, se puede ver que el comportamiento no se aproxima mucho a la curva, lo que refuerza la hipótesis de que esta relación no es lineal.

Por lo tanto, debemos realizar una transformación adecuada para poder estimar un mejor modelo, se sugiere usar una transformación con Log en la variable independiente, puesto que el comportamiento de la curva para los datos en el análisis exploratorio se asemeja a una función logarítmica.

8.Transformación aplicada

mdl_ajustado=lm(datosv$precio_millon~log(datosv$Area_construida), data = datosv)
summary(mdl_ajustado)
## 
## Call:
## lm(formula = datosv$precio_millon ~ log(datosv$Area_construida), 
##     data = datosv)
## 
## 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(datosv$Area_construida)   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

9. Comparación de modelo estimado inicial y modelo ajustado.

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

Al revisar el modelo, se puede ver que su ajuste es del 89.63%, lo cual indica que es una mejor estimación que el primer modelo que se estimó. También se validan supuestos. Se plantea la predicción.

predict(mdl_ajustado, newdata = list(Area_construida=110.0), interval = "confidence", level=0.95)
##         fit      lwr      upr
## 1  262.5181 247.7250 277.3112
## 2  348.5238 337.3432 359.7045
## 3  374.8554 362.3238 387.3869
## 4  464.8374 442.8944 486.7804
## 5  262.5181 247.7250 277.3112
## 6  298.0311 286.0620 310.0002
## 7  447.7909 427.9292 467.6527
## 8  292.4251 280.1066 304.7436
## 9  259.3382 244.2341 274.4422
## 10 447.7909 427.9292 467.6527
## 11 265.6612 251.1679 280.1546
## 12 349.4898 338.2792 360.7005
## 13 262.5181 247.7250 277.3112
## 14 259.3382 244.2341 274.4422
## 15 292.4251 280.1066 304.7436
## 16 262.5181 247.7250 277.3112
## 17 262.5181 247.7250 277.3112
## 18 374.8554 362.3238 387.3869
## 19 383.0948 369.9451 396.2445
## 20 242.8556 226.0339 259.6772
## 21 374.8554 362.3238 387.3869
## 22 265.6612 251.1679 280.1546
## 23 374.8554 362.3238 387.3869
## 24 271.8406 257.9129 285.7683
## 25 485.0932 460.5901 509.5962
## 26 447.7909 427.9292 467.6527