Descripción del ejercicio:
Con base en los datos de ofertas de vivienda del portal Fincaraiz para apartamento de estrato 4 con área construida menor a 200 m2, la inmobiliaria A&C requiere el apoyo de un cientifico de datos en la construcción de un modelo que lo oriente sobre los precios de inmuebles. Con este propósito el equipo de asesores a diseñado los siguientes pasos para obtener un modelo y así poder a futuro determinar los precios de los inmuebles a negociar.
Nota: Para el ejercicio se filtran únicamente las viviendas de tipo apartamento.
table(vivienda4$tipo)
##
## Apartamento Casa
## 1363 343
datav <- vivienda4[vivienda4$tipo == "Apartamento", ]
head(datav)
## # A tibble: 6 × 5
## zona estrato preciom areaconst tipo
## <fct> <fct> <dbl> <dbl> <fct>
## 1 Zona Norte 4 232. 52 Apartamento
## 2 Zona Norte 4 255. 108 Apartamento
## 3 Zona Sur 4 258. 96 Apartamento
## 4 Zona Norte 4 250. 82 Apartamento
## 5 Zona Norte 4 247. 75 Apartamento
## 6 Zona Norte 4 222. 60 Apartamento
table(datav$tipo)
##
## Apartamento Casa
## 1363 0
1. Análisis exploratorio de las variables precio de vivienda (millones de pesos COP) y área de la vivienda (metros cuadrados)
## zona estrato preciom areaconst
## Zona Centro : 7 3: 0 Min. :207.4 Min. : 40.00
## Zona Norte : 237 4:1363 1st Qu.:228.8 1st Qu.: 60.00
## Zona Oeste : 52 5: 0 Median :236.1 Median : 70.00
## Zona Oriente: 2 6: 0 Mean :237.7 Mean : 75.48
## Zona Sur :1065 3rd Qu.:243.6 3rd Qu.: 84.00
## Max. :305.2 Max. :200.00
## tipo
## Apartamento:1363
## Casa : 0
##
##
##
##
Todos los apartamentos de la base pertenecen al estrato 4. El 78% de los apartamentos se encuentra en la zona sur. El precio mínimo es de 207,4 y el máximo en 305,2 millones de pesos COP, el precio promedio de los apartamentos es de 237,7 millones. En cuanto al área construida, esta va desde los 40 m2 hasta los 200 m2, con un promedio de 75,48 m2.
## `geom_smooth()` using formula = 'y ~ x'
## [1] "Correlación: 0.846327143623574"
Con base en el gráfico de dispersión y el coeficiente de pearson, se evidencia una correlación positiva entre las variables. Lo que significa que entre mayor es el área construida, el precio también aumenta.
3. Estimar el modelo de regresión lineal simple entre \(precio=f(area)+ε\). Interpretación de los coeficientes del modelo β0, β1
##
## Call:
## lm(formula = preciom ~ areaconst, data = datav)
##
## Residuals:
## Min 1Q Median 3Q Max
## -26.5139 -5.0886 -0.0031 4.6406 24.3309
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.001e+02 6.698e-01 298.67 <2e-16 ***
## areaconst 4.984e-01 8.503e-03 58.62 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 7.081 on 1361 degrees of freedom
## Multiple R-squared: 0.7163, Adjusted R-squared: 0.7161
## F-statistic: 3436 on 1 and 1361 DF, p-value: < 2.2e-16
Con base en los valores obtenidos, donde \(β0 = 200.1\) y \(β1 = 0.4984\) se podría interpretar que el precio base de un apartamento es de 200.1 millones de pesos COP independientemente del área construida. Con \(β1\) se esperaría que por cada m2 contruido, el valor del inmueble aumente aproximadamente en $ 498.400 pesos COP.
Adicionalmente, tanto el intercepto como el coeficiente del área construida tienen valores p muy bajos, lo que confirma el efecto del área cosntruida sobre el precio.
Los residuales varían entre -26.51 a 24.33. Esto indica que el modelo tiene algunas predicciones que se alejan significativamente de los precios reales, lo que puede significar heterocedasticidad o valores atípicos.
La mediana de los residuales es muy cercana a cero (-0.0031), lo que sugiere que, en promedio, las predicciones del modelo son razonablemente cercanas a los valores observados.
El R2 indica que aproximadamente el 71.63% de la variabilidad en los precios de las viviendas puede ser explicada por el área construida.
4. Intervalo de confianza (95%) para el coeficiente \(β1\), interpretación y conclusión del coeficiente. Comparación con prueba de hipótesis t.
Intervalo de confianza
\[IC = \hat{\beta_1} \pm t_{\alpha/2, n-k} \times SE(\hat{\beta})\]
donde:
## El intervalo de confianza del 95% para β1: 0.4817357 a 0.515097
Debido a que la hipótesis nula indica que \(\beta_1 = 0\) y el intervalo de confianza no incluye el valor 0, se rechaza la hipotesis nula. Confirmando la relación entre el área construida y precio de los apartamentos y que el precio de los apartamentos aumenta entre 481.735 y 515.097 millones de pesos COP.
Prueba de hipótesis t
Hipótesis Nula:
\(H_0: \beta_1 = 0\) (El área construida no tiene un efecto sobre el precio.)
Hipótesis Alternativa:
\(H_1: \beta_1 \neq 0\) (Existe una relación lineal significativa entre el área construida y el precio.)
Donde:
\[t = \frac{\hat{\beta}_1}{SE(\hat{\beta}_1)}\]
## Valor t: 58.61576
## Valor p: 0
El valor t sugiere una relación fuerte entre las variables. El valor p confirma esto de manera que la relación entre el área construida y el precio es muy poco probable que se deba al azar.
5. indicador de bondad \(R^2\)
El \(R^2\) ajustado (tiene en cuenta el número de predictores) es de 0.7161, confirma la relación entre el área construida y el precio. Sin embargo, un 28.37% de la variabilidad no está explicada por este modelo. Esto puede deberse a otros factores, al obtener los residuales del modelo y analizar 150, se encuentra que la mayoría está en la zona sur, esto podría significar que en esta zona hay otras variables que podrían estar afectando el precio, como mayor demanda, estructura, servicios, infraestructura, entre otros.
datav$residuals <- residuals(modelo)
# Ordenar los apartamentos por los valores absolutos de los residuales más grandes
apartamentos_con_altos_residuales <- datav %>%
arrange(desc(abs(residuals))) %>%
head(150)
table(apartamentos_con_altos_residuales$zona)
##
## Zona Centro Zona Norte Zona Oeste Zona Oriente Zona Sur
## 1 20 7 0 122
6. Análisis precio promedio estimado para un apartamento de 110 metros vs oferta de 200 millones de pesos para un apartamento en la misma zona y área construida.
## El precio estimado para un apartamento de 110 m² es: 254.8893 millones COP.
Con base en el modelo, se determina que el precio promedio de los apartamentos es de 254.8 millones de pesos COP, por lo que la oferta de 200 millones de pesos es bastante atractiva a estar aproximadamente un 21% por debajo. Sin embargo, deben tenerse en cuenta otra variables como pueden ser la infraestructura, la ubicació o la seguridad en la zona.
7. Validación de los supuestos
Homocedasticidad y la linealidad:
Los puntos se distribuyen de manera aleatoria alrededor del cero lo que significa que no hay un patrón evidente en los residuos y la relación lineal entre las variables es adecuada, logrando explicar la relación entre área cosntruida y precio de vivienda.
Existe homocedasticidad, es decir la magnitud de los errores no depende del valor de la variable independiente (área construida).
Histograma y gráfico Q-Q de residuos:
Aunque en el grafico Q-Q se puede ver una leve cola a la derecha, La forma del histograma sugiere que los residuos se distribuyen de manera aproximadamente normal. La curva superpuesta, que representa una distribución normal teórica, refuerza esta idea. De igual manera, la distribución parece simétrica alrededor de cero, lo cual indica que los errores tienden a ser igual de grandes en ambas direcciones (por encima y por debajo de la línea de regresión). Hay pocos atípicos.
Prueba de Shapiro-Wilk
## Valor W de Shapiro-Wilk: 0.9988535
## Valor p de Shapiro-Wilk: 0.5419366
## Los residuos siguen una distribución normal (no se rechaza H0).
Prueba de Breusch-Pagan para homocedasticidad
## Valor p de la prueba de Breusch-Pagan: 0.3614413
## No se rechaza la hipótesis nula de homocedasticidad (varianza constante).
Tanto la prueba de shapiro-Wilk como la de Breush-Pagan confirman respectivamente una distribución normal y una homocedasticidad necesarios para el modelo.
8-10. Transformación para mejorar el ajuste y supuestos del modelo.
Transformación de la variable dependiente (precio)
##
## Call:
## lm(formula = log_precio ~ areaconst, data = datav)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.104645 -0.020942 0.000593 0.019371 0.099110
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 5.318e+00 2.835e-03 1876.11 <2e-16 ***
## areaconst 2.007e-03 3.598e-05 55.77 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.02996 on 1361 degrees of freedom
## Multiple R-squared: 0.6956, Adjusted R-squared: 0.6954
## F-statistic: 3110 on 1 and 1361 DF, p-value: < 2.2e-16
Transformación de la variable área construida
##
## Call:
## lm(formula = preciom ~ log_areaconst, data = datav)
##
## Residuals:
## Min 1Q Median 3Q Max
## -22.9725 -5.4109 -0.1832 4.9141 24.1899
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 53.8202 3.4091 15.79 <2e-16 ***
## log_areaconst 42.8778 0.7936 54.03 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 7.496 on 1361 degrees of freedom
## Multiple R-squared: 0.682, Adjusted R-squared: 0.6818
## F-statistic: 2919 on 1 and 1361 DF, p-value: < 2.2e-16
Transformando ambas variables
##
## Call:
## lm(formula = log_precio ~ log_areaconst, data = datav)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.104277 -0.022240 0.000027 0.020782 0.093359
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 4.722680 0.014102 334.91 <2e-16 ***
## log_areaconst 0.174148 0.003283 53.05 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.03101 on 1361 degrees of freedom
## Multiple R-squared: 0.674, Adjusted R-squared: 0.6738
## F-statistic: 2814 on 1 and 1361 DF, p-value: < 2.2e-16
## [1] 1363
## [1] 1363
## df AIC
## modelo 3 9207.936
## modelo_log 3 -5690.073
## modelo_log_both 3 -5596.803
Ajustando la variable independiente, el valor de \(R^2\) es de 0.6956, lo que significa que aproximadamente el 69.6% de la variabilidad en el logaritmo del precio es explicada por el área construida.
Ajustando la varianle dependiente, el valor de \(R^2\) es de 0.682, lo que significa que aproximadamente el 68.2% de la variabilidad en el precio es explicada por el logaritmo del área construida.
Al ajustar ambas variables, se obtuvo: Coeficiente del log(área construida) de 0.174 es decir, por cada aumento porcentual en el área construida, se espera que el logaritmo del precio aumente en 0.174. El \(R^2\) de 0.674,indica que el 67.4% de la variabilidad en el logaritmo del precio es explicada por el logaritmo del área construida.
Si bien, no sería estrictamente necesario realizar un ajuste debido a que el modelo sin transformaciones logra explicar un mayor porcentaje de la variabilidad, el modelo ajustado es más robusto ya que reduce la influencia de valores atípicos y corrige problemas de heterocedasticidad. También se puede apreciar una distribución mucho más normal que en el modelo sin ajustar.
Comparación de los modelos
## df AIC
## modelo 3 9207.936
## modelo_log 3 -5690.073
## modelo_log_area 3 9363.287
## modelo_log_both 3 -5596.803
El modelo_log (ajusta el precio) es el mejor modelo entre los tres según el criterio AIC, ya que tiene el valor más bajo ofrece el mejor balance entre ajuste y complejidad. Aunque el modelo que ajusta ambas variabnles también es mejor que el modelo original, no es tan bueno como el modelo que ajusta únicamente el precio.
Comparando el AIC:
Comparar R2:
## Modelo AIC
## 1 modelo 9207.936
## 2 modelo_log -5690.073
##
## Call:
## lm(formula = preciom ~ areaconst, data = datav)
##
## Residuals:
## Min 1Q Median 3Q Max
## -26.5139 -5.0886 -0.0031 4.6406 24.3309
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 2.001e+02 6.698e-01 298.67 <2e-16 ***
## areaconst 4.984e-01 8.503e-03 58.62 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 7.081 on 1361 degrees of freedom
## Multiple R-squared: 0.7163, Adjusted R-squared: 0.7161
## F-statistic: 3436 on 1 and 1361 DF, p-value: < 2.2e-16
##
## Call:
## lm(formula = log_precio ~ areaconst, data = datav)
##
## Residuals:
## Min 1Q Median 3Q Max
## -0.104645 -0.020942 0.000593 0.019371 0.099110
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 5.318e+00 2.835e-03 1876.11 <2e-16 ***
## areaconst 2.007e-03 3.598e-05 55.77 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.02996 on 1361 degrees of freedom
## Multiple R-squared: 0.6956, Adjusted R-squared: 0.6954
## F-statistic: 3110 on 1 and 1361 DF, p-value: < 2.2e-16
Graficos de residuos:
Q-Q plot
Residuos vs valores ajustados:
11. INFORME DEL MODELO:
Este informe presenta un análisis comparativo de modelos de regresión utilizados para predecir el precio de apartamentos en función de diversas características. Se han evaluado varios modelos, incluyendo transformaciones logarítmicas de la variable respuesta, y se han analizado los supuestos de los modelos a fin de seleccionar el más apropiado.
Modelo Inicial: Un modelo de regresión lineal simple que utiliza la variable areaconst (área construida) como predictor.
Modelo Transformado: Un modelo que aplica una transformación logarítmica al precio (preciom) para abordar problemas de normalidad en la distribución de los residuos.
Modelo Log-Both: Un modelo que utiliza transformaciones logarítmicas tanto en el precio como en el área construida.
| Modelo | df | AIC |
|---|---|---|
| Modelo inicial | 3 | 9207.936 |
| Modelo Logarítmico | 3 | -5690.073 |
| Modelo Log-Both | 3 | -5596.803 |
AIC (Criterio de Información de Akaike): Un menor valor de AIC indica un mejor ajuste del modelo a los datos. En este caso, el Modelo Logarítmico tiene el menor AIC (-5690.073), lo que sugiere que es el modelo más adecuado entre los evaluados.
Adicionalmente, se realizó un análisis de los residuos de cada modelo para verificar los supuestos de normalidad y homocedasticidad. A través de gráficos de residuos y gráficos Q-Q, se comprobó que el Modelo Logarítmico muestra una mejor distribución de residuos en comparación con el Modelo Inicial, sugiriendo que este último cumple más adecuadamente con los supuestos de normalidad.
Dado que el Modelo Logarítmico presenta el mejor ajuste en términos de AIC y cumple mejor con los supuestos necesarios para un análisis de regresión, se recomienda utilizar este modelo para la predicción de precios de apartamentos. Este enfoque permitirá a la inmobiliaria obtener estimaciones más precisas y confiables.