Maria comenzó como agente de bienes raíces en Cali hace 10 años. Después de laborar dos años para una empresa nacional, se traslado a Bogotá y trabajó para otra agencia de bienes raíces. Sus amigos y familiares la convencieron de que con su experiencia y conocimientos del negocio debía abrir su propia agencia. Terminó por adquirir la licencia de intermediario y al poco tiempo fundó su propia compañía, C&A (Casas y Apartamentos) en Cali. Santiago y Lina, dos vendedores de la empresa anterior aceptaron trabajar en la nueva compaña. En la actualidad ocho agentes de bienes raíces colaboran con ella en C&A.
Actualmente las ventas de bienes raíces en Cali se han visto disminuidas de manera significativa en lo corrido del año. Durante este periodo muchas instituciones bancarias de ahorro y vivienda están prestando grandes sumas de dinero para la industria y la construcción comercial y residencial. Cuando el efecto producto de las tensiones políticas y sociales disminuya, se espera que la actividad económica de este sector se reactive.
Hace dos días, María recibió una carta solicitando asesoría para la compra de dos viviendas por parte de una compañía internacional que desea ubicar a dos de sus empleados con sus familias en la ciudad. Las solicitudes incluyen las siguientes condiciones:
Tipo casa Area construida 200 parqueaderos 1 baños 2 habitaciones 4 estrato 4 o 5 zona norte credito preaprobado 350 millones
Tipo Apartamento Area construida 300 parqueaderos 3 baños 3 habitaciones 5 estrato 5 o 6 zona Sur credito preaprobado 850 millones
Ayude a María a responder la solicitud, mediante técnicas modelación que usted conoce. Ella requiere le envíe un informe ejecutivo donde analice los dos casos y sus recomendaciones (Informe). Como soporte del informe debe anexar las estimaciones, validaciones y comparación de modelos requeridos (Anexos)
Realice un filtro a la base de datos e incluya solo las ofertas de : base 1: casas, de la zona norte de la ciudad. Presente los primeros 3 registros de las bases y algunas tablas que comprueben la consulta. (Adicional un mapa con los puntos de las bases. Discutir si todos los puntos se ubican en la zona correspondiente o se presentan valores en otras zonas, por que?).
Realice un análisis exploratorio de datos enfocado en la correlación entre la variable respuesta (precio de la casa) en función del área construida, estrato, numero de baños, numero de habitaciones y zona donde se ubica la vivienda. Use gráficos interactivos con el paquete plotly e interprete los resultados.
Estime un modelo de regresión lineal múltiple con las variables del punto anterior (precio = f(área construida, estrato, número de cuartos, número de parqueaderos, número de baños ) ) e interprete los coeficientes si son estadísticamente significativos. Las interpretaciones deber están contextualizadas y discutir si los resultados son lógicos. Adicionalmente interprete el coeficiente R2 y discuta el ajuste del modelo e implicaciones (que podrían hacer para mejorarlo).
Realice la validación de supuestos del modelo e interprete los resultados (no es necesario corregir en caso de presentar problemas, solo realizar sugerencias de que se podría hacer).
Con el modelo identificado debe predecir el precio de la vivienda con las características de la primera solicitud.
Con las predicciones del modelo sugiera potenciales ofertas que responda a la solicitud de la vivienda 1. Tenga encuentra que la empresa tiene crédito pre-aprobado de máximo 350 millones de pesos. Realice un análisis y presente en un mapa al menos 5 ofertas potenciales que debe discutir.
Realice los pasos del 1 al 6. Para la segunda solicitud que tiene un crédito pre-aprobado por valor de $850 millones.
.
id 3
zona 3
piso 2638
estrato 3
preciom 2
areaconst 3
parqueaderos 1605
banios 3
habitaciones 3
tipo 3
barrio 3
longitud 3
latitud 3
FALSE TRUE
103911 4275
Anteriormente, se identificaron 4,275 registros con datos faltantes, principalmente en las columnas ‘piso’ (2,638 valores NA) y ‘parqueaderos’ (1,605 valores NA). Tambien se detectaron ´ tres filas con todos sus valores nulos, las cuales fueron eliminadas. A continuacion, se imputan los valores faltantes en la ´ columna ‘piso’ utilizando la mediana de ‘piso’ segun el tipo ´ de vivienda (apartamento y casa). En el caso de los parqueaderos, se imputo el valor 0, considerando que algunas propiedades podrian no tener parqueadero y, por ende, no registrar esta informacion. ´ Respecto a los datos atípicos, se eliminaron los registros con precios superiores a 850, así como aquellos que mostraban la ausencia de baños o habitaciones. ˜ Además, la variable estrato se transformo en un tipo dummy y se excluyó la variable id, ya que no es relevante para el tipo de analisis realizado en este documento.
Datos faltantes:
.
zona 0
piso 0
estrato 0
preciom 0
areaconst 0
parqueaderos 0
banios 0
habitaciones 0
tipo 0
barrio 0
longitud 0
latitud 0
estrato3 0
estrato4 0
estrato5 0
estrato6 0
Datos atípicos:
Estructura final del dataset:
'data.frame': 7410 obs. of 16 variables:
$ zona : chr "Zona Oriente" "Zona Oriente" "Zona Oriente" "Zona Sur" ...
$ piso : num 2 2 2 2 1 1 1 1 2 2 ...
$ estrato : Factor w/ 4 levels "3","4","5","6": 1 1 1 2 3 3 2 3 3 3 ...
$ preciom : num 250 320 350 400 260 240 220 310 320 780 ...
$ areaconst : num 70 120 220 280 90 87 52 137 150 380 ...
$ parqueaderos: num 1 1 2 3 1 1 2 2 2 2 ...
$ banios : num 3 2 2 5 2 3 2 3 4 3 ...
$ habitaciones: num 6 3 4 3 3 3 3 4 6 3 ...
$ tipo : chr "Casa" "Casa" "Casa" "Casa" ...
$ barrio : chr "20 de julio" "20 de julio" "20 de julio" "3 de julio" ...
$ longitud : num -76.5 -76.5 -76.5 -76.5 -76.5 ...
$ latitud : num 3.43 3.43 3.44 3.44 3.46 ...
$ estrato3 : num 1 1 1 0 0 0 0 0 0 0 ...
$ estrato4 : num 0 0 0 1 0 0 1 0 0 0 ...
$ estrato5 : num 0 0 0 0 1 1 0 1 1 1 ...
$ estrato6 : num 0 0 0 0 0 0 0 0 0 0 ...
zona piso estrato preciom areaconst parqueaderos banios habitaciones
9 Zona Norte 2 5 320 150 2 4 6
10 Zona Norte 2 5 780 380 2 3 3
31 Zona Norte 2 3 180 120 0 3 3
tipo barrio longitud latitud estrato3 estrato4 estrato5 estrato6
9 Casa acopi -76.51341 3.47968 0 0 1 0
10 Casa acopi -76.51674 3.48721 0 0 1 0
31 Casa acopi -76.49768 3.47060 1 0 0 0
Para responder a la solicitud de asesoría en la compra de una vivienda, se realizó un filtrado de la base de datos, seleccionando únicamente aquellas propiedades que cumplen con los criterios de tipo “Casa” y ubicación en la Zona Norte de Cali.
Sin embargo, al realizar la geolocalización de las propiedades en un mapa interactivo, se identificó que algunos puntos clasificados como “Zona Norte” en la base de datos se encuentran fuera de esta zona, específicamente en el sur de la ciudad según sus coordenadas geográficas (latitud y longitud). Esto sugiere la presencia de datos inconsistentes o errores en la clasificación de zonas dentro del dataset.
Para depurar la base de datos, se estableció un rango geográfico de referencia para la Zona Norte, basado en la latitud y longitud de Cali: latitud mayor a 3.45 (dado que el sur tiene valores menores). longitud entre -76.6 y -76.4, correspondiente a la ubicación esperada de la Zona Norte.
Tras aplicar este filtro, se eliminaron los registros con coordenadas fuera del rango esperado, logrando una base de datos más coherente con la realidad geográfica de Cali.
zona piso estrato preciom areaconst
Length:527 Min. :1.000 3:184 Min. :110.0 Min. : 30.0
Class :character 1st Qu.:2.000 4:115 1st Qu.:232.5 1st Qu.: 130.0
Mode :character Median :2.000 5:206 Median :360.0 Median : 223.1
Mean :1.987 6: 22 Mean :385.5 Mean : 239.8
3rd Qu.:2.000 3rd Qu.:502.5 3rd Qu.: 314.0
Max. :4.000 Max. :850.0 Max. :1440.0
parqueaderos banios habitaciones tipo
Min. : 0.000 Min. : 1.000 Min. : 2.000 Length:527
1st Qu.: 0.000 1st Qu.: 2.000 1st Qu.: 3.000 Class :character
Median : 1.000 Median : 3.000 Median : 4.000 Mode :character
Mean : 1.397 Mean : 3.471 Mean : 4.554
3rd Qu.: 2.000 3rd Qu.: 4.000 3rd Qu.: 5.000
Max. :10.000 Max. :10.000 Max. :10.000
barrio longitud latitud estrato3
Length:527 Min. :-76.59 Min. :3.451 Min. :0.0000
Class :character 1st Qu.:-76.52 1st Qu.:3.467 1st Qu.:0.0000
Mode :character Median :-76.52 Median :3.475 Median :0.0000
Mean :-76.51 Mean :3.475 Mean :0.3491
3rd Qu.:-76.50 3rd Qu.:3.484 3rd Qu.:1.0000
Max. :-76.48 Max. :3.496 Max. :1.0000
estrato4 estrato5 estrato6
Min. :0.0000 Min. :0.0000 Min. :0.00000
1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.00000
Median :0.0000 Median :0.0000 Median :0.00000
Mean :0.2182 Mean :0.3909 Mean :0.04175
3rd Qu.:0.0000 3rd Qu.:1.0000 3rd Qu.:0.00000
Max. :1.0000 Max. :1.0000 Max. :1.00000
El análisis de correlación entre el precio de las viviendas (“preciom”)
y otras variables revela patrones interesantes en el mercado
inmobiliario. La relación más fuerte se observa con el área construida
(“areaconst”), con una correlación positiva de 0.72, lo que indica que a
mayor área, mayor es el precio, un resultado previsible. En cuanto a los
estratos socioeconómicos, el precio muestra una correlación negativa
moderada con el estrato 3 (-0.63), sugiriendo que las propiedades más
costosas son menos frecuentes en esta categoría. En contraste, la
relación con el estrato 4 es prácticamente nula (0.05), mientras que en
los estratos 5 y 6 se observa una correlación positiva moderada (0.46 y
0.29, respectivamente), indicando que las viviendas de mayor precio
tienden a ubicarse en estos sectores. Además, el número de baños
presenta una relación moderadamente positiva con el precio (0.61), lo
que sugiere que este factor influye significativamente en el valor de
las propiedades. Por otro lado, el número de habitaciones tiene una
correlación más débil (0.38), lo que indica que su impacto en el precio
es menor en comparación con el área o los baños.
Call:
lm(formula = preciom ~ areaconst + estrato3 + estrato4 + estrato5 +
habitaciones + parqueaderos + banios, data = trainData)
Residuals:
Min 1Q Median 3Q Max
-531.61 -57.47 -14.46 45.55 392.34
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 285.52302 34.42287 8.295 2.16e-15 ***
areaconst 0.48467 0.04607 10.520 < 2e-16 ***
estrato3 -220.65934 30.07682 -7.337 1.45e-12 ***
estrato4 -125.02371 29.12668 -4.292 2.27e-05 ***
estrato5 -82.24778 28.04943 -2.932 0.00358 **
habitaciones 2.24132 4.39692 0.510 0.61054
parqueaderos 12.49942 3.85860 3.239 0.00131 **
banios 25.97878 5.46830 4.751 2.92e-06 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 99.06 on 363 degrees of freedom
Multiple R-squared: 0.7062, Adjusted R-squared: 0.7006
F-statistic: 124.7 on 7 and 363 DF, p-value: < 2.2e-16
El modelo de regresión lineal ajustado para predecir el precio de las viviendas (“preciom”) en función de diversas variables explica aproximadamente el 70.6% de la variabilidad en los precios (R² = 0.7062), lo que indica un buen ajuste. El coeficiente del área construida (“areaconst”) es positivo y significativo (0.48467, p < 2e-16), lo que confirma que el precio aumenta con el tamaño de la vivienda. Los estratos 3, 4 y 5 presentan coeficientes negativos y significativos, siendo el estrato 3 el que más reduce el precio (-220.66), seguido por el estrato 4 (-125.02) y el estrato 5 (-82.25), lo que sugiere que, en comparación con el estrato 6 (referencia), las propiedades en estos estratos tienden a ser más económicas. El número de baños y la cantidad de parqueaderos también tienen un efecto positivo y significativo sobre el precio (25.98 y 12.50, respectivamente), lo que indica que estos factores contribuyen al valor de la propiedad. Sin embargo, el número de habitaciones no resulta significativo (p = 0.61054), lo que sugiere que su impacto en el precio no es relevante cuando se consideran otras variables en el modelo. En general, el modelo es robusto, con una F-estadística altamente significativa (p < 2.2e-16), aunque la dispersión de los residuos sugiere que aún hay variabilidad en los precios no explicada por estas variables.
Para mejorar el modelo de regresión lineal y aumentar su capacidad predictiva, se pueden considerar varias estrategias. En primer lugar, la inclusión de nuevas variables relevantes, como la antigüedad de la vivienda, su estado de conservación o su ubicación exacta, podría aportar información valiosa. Asimismo, explorar interacciones entre variables, como el efecto combinado del área construida y el estrato socioeconómico, podría capturar relaciones más complejas. También es recomendable aplicar transformaciones logarítmicas al precio y a variables con alta dispersión para mejorar la linealidad y estabilizar la varianza
Shapiro-Wilk normality test
data: modelo$residuals
W = 0.93073, p-value = 4.22e-12
Anderson-Darling normality test
data: modelo$residuals
A = 6.8089, p-value < 2.2e-16
studentized Breusch-Pagan test
data: modelo
BP = 83.638, df = 7, p-value = 2.49e-15
Durbin-Watson test
data: modelo
DW = 1.5998, p-value = 3.738e-05
alternative hypothesis: true autocorrelation is greater than 0
Multicolinealidad (VIF)
areaconst estrato3 estrato4 estrato5 habitaciones parqueaderos
1.685548 7.670978 5.375790 7.194260 1.841466 1.319396
banios
2.195818
La validación de los supuestos del modelo revela varios aspectos que
deben abordarse para mejorar su confiabilidad. En cuanto a la normalidad
de los residuos, tanto la prueba de Shapiro-Wilk (p < 4.22e-12) como
la de Anderson-Darling (p < 2.2e-16) indican que los residuos no
siguen una distribución normal, lo que podría afectar la inferencia
estadística del modelo. Para corregir esto, se podría probar una
transformación logarítmica del precio o aplicar modelos más flexibles.
Respecto a la homocedasticidad, la prueba de Breusch-Pagan (p =
2.49e-15) sugiere la presencia de heterocedasticidad, lo que indica que
la variabilidad de los errores no es constante. Esto podría solucionarse
mediante el uso de errores estándar robustos o transformaciones en las
variables. En cuanto a la autocorrelación, la prueba de Durbin-Watson
(DW = 1.60, p < 3.738e-05) señala una autocorrelación positiva en los
residuos, lo que sugiere que el modelo no captura completamente la
estructura de los datos, problema que podría abordarse incluyendo
variables adicionales o empleando modelos de series temporales si los
datos tienen un componente secuencial. Finalmente, la evaluación de la
multicolinealidad mediante el VIF indica que los estratos 3, 4 y 5
tienen valores relativamente altos (> 5), lo que sugiere que están
fuertemente correlacionados y podrían afectar la estabilidad del modelo.
Para mitigar este problema, se podría considerar combinar estos estratos
en una sola variable categórica o utilizar técnicas de reducción de
dimensionalidad como el Análisis de Componentes Principales (PCA). En
general, estos resultados indican que el modelo requiere ajustes para
cumplir mejor con los supuestos de la regresión lineal y mejorar su
precisión predictiva.
# Mostrar resultados
precio_estrato4norte
1
330.8549
precio_estrato5norte
1
373.6308
Como resultado de las predicciones, se concluye que una casa en la zona norte de la ciudad de cali con las características mencionadas cuesta aproximadamente 330 millones de pesos cuando es estrato 4 y 373 millones cuando es estrato 5.
zona piso estrato preciom areaconst parqueaderos banios habitaciones
24 Zona Sur 5 4 290 96 1 2 3
164 Zona Sur 2 3 78 40 1 1 2
284 Zona Sur 4 3 135 117 0 2 3
tipo barrio longitud latitud estrato3 estrato4 estrato5
24 Apartamento acopi -76.53464 3.44987 0 1 0
164 Apartamento aguablanca -76.50100 3.40000 1 0 0
284 Apartamento alameda -76.51400 3.44100 1 0 0
estrato6
24 0
164 0
284 0
zona piso estrato preciom areaconst
Length:2723 Min. : 1.000 3: 200 Min. : 75.0 Min. : 40.00
Class :character 1st Qu.: 3.000 4:1086 1st Qu.:170.0 1st Qu.: 65.00
Mode :character Median : 4.000 5:1029 Median :243.0 Median : 84.00
Mean : 4.362 6: 408 Mean :280.7 Mean : 94.03
3rd Qu.: 5.000 3rd Qu.:328.5 3rd Qu.:108.00
Max. :12.000 Max. :850.0 Max. :932.00
parqueaderos banios habitaciones tipo
Min. : 0.00 Min. :1.00 Min. :1.000 Length:2723
1st Qu.: 1.00 1st Qu.:2.00 1st Qu.:3.000 Class :character
Median : 1.00 Median :2.00 Median :3.000 Mode :character
Mean : 1.17 Mean :2.45 Mean :2.962
3rd Qu.: 2.00 3rd Qu.:3.00 3rd Qu.:3.000
Max. :10.00 Max. :8.00 Max. :6.000
barrio longitud latitud estrato3
Length:2723 Min. :-76.57 Min. :3.334 Min. :0.00000
Class :character 1st Qu.:-76.54 1st Qu.:3.371 1st Qu.:0.00000
Mode :character Median :-76.53 Median :3.383 Median :0.00000
Mean :-76.53 Mean :3.390 Mean :0.07345
3rd Qu.:-76.52 3rd Qu.:3.406 3rd Qu.:0.00000
Max. :-76.46 Max. :3.497 Max. :1.00000
estrato4 estrato5 estrato6
Min. :0.0000 Min. :0.0000 Min. :0.0000
1st Qu.:0.0000 1st Qu.:0.0000 1st Qu.:0.0000
Median :0.0000 Median :0.0000 Median :0.0000
Mean :0.3988 Mean :0.3779 Mean :0.1498
3rd Qu.:1.0000 3rd Qu.:1.0000 3rd Qu.:0.0000
Max. :1.0000 Max. :1.0000 Max. :1.0000
Call:
lm(formula = preciom ~ areaconst + estrato3 + estrato4 + estrato5 +
habitaciones + parqueaderos + banios, data = trainDatasur)
Residuals:
Min 1Q Median 3Q Max
-346.40 -39.99 -3.10 32.39 265.83
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 118.2914 22.9313 5.159 4.10e-07 ***
areaconst 2.0151 0.1483 13.588 < 2e-16 ***
estrato3 -108.6003 17.6264 -6.161 1.92e-09 ***
estrato4 -107.9898 12.0421 -8.968 < 2e-16 ***
estrato5 -98.5662 11.1039 -8.877 < 2e-16 ***
habitaciones -26.5860 7.6539 -3.474 0.000576 ***
parqueaderos 35.4153 7.1066 4.983 9.69e-07 ***
banios 42.0874 6.9979 6.014 4.41e-09 ***
---
Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
Residual standard error: 74.85 on 363 degrees of freedom
Multiple R-squared: 0.8356, Adjusted R-squared: 0.8324
F-statistic: 263.6 on 7 and 363 DF, p-value: < 2.2e-16
Shapiro-Wilk normality test
data: modelosur$residuals
W = 0.9472, p-value = 3.066e-10
Anderson-Darling normality test
data: modelosur$residuals
A = 4.8792, p-value = 4.294e-12
studentized Breusch-Pagan test
data: modelosur
BP = 105.72, df = 7, p-value < 2.2e-16
Durbin-Watson test
data: modelosur
DW = 1.6834, p-value = 0.0007594
alternative hypothesis: true autocorrelation is greater than 0
Multicolinealidad (VIF)
areaconst estrato3 estrato4 estrato5 habitaciones parqueaderos
2.744490 1.979202 2.082955 1.477374 1.405387 2.047546
banios
2.825750
# Mostrar resultados
precio_estrato5sur
1
723.829