Con el fin de dar respuesta a la solicitud de la compañía internacional interesada en ubicar a dos de sus empleados con sus familias en la ciudad, se utilizó la base de datos vivienda del paquete paqueteMODELOS en R.
En este informe se dará respuesta a una petición en la que se solicita asesoría para la compra de dos viviendas por una compañía internacional que desea ubicar a dos de sus empleados con sus familias en la ciudad de Cali.El mismo se aborda analizando los dos casos y sus recomendaciones, incluyendo las estimaciones, validaciones y comparación de modelos requeridos.
En una primera etapa se realizó un proceso de depuración y estandarización de los datos, corrigiendo inconsistencias en la escritura de variables: tipo de vivienda y zona de la ciudad, por ejemplo: Casa vs casa, Zona Norte vs norte. Esta normalización permitió garantizar que los filtros se aplicaran de manera precisa.
Posteriormente, se efectuó un filtro inicial para obtener únicamente las viviendas de interés según las condiciones planteadas:
El resultado de este proceso permitió obtener un subconjunto de la base original, sobre el cual se presentaron los primeros tres registros para validar la selección y se construyeron tablas de control que confirmaron que todos los inmuebles cumplen con las condiciones establecidas dentro de tipo de vivienda y zona.
Como complemento, se elaboró un mapa con los puntos georeferenciados de las viviendas filtradas. Esto permitió contrastar si efectivamente todas las ofertas se ubican en la zona correspondiente o si existen inconsistencias en la información. En este análisis preliminar se discute que, en algunos casos, pueden aparecer puntos fuera de la zona esperada debido a errores de digitación, discrepancias en la definición de las zonas o fallas en el registro de coordenadas.
Este primer ejercicio de filtrado constituye la base para los análisis posteriores de modelación, comparación y validación, ya que asegura que los conjuntos de datos utilizados se ajusten a los criterios de búsqueda de la compañía.
## [1] "id" "zona" "piso" "estrato" "preciom"
## [6] "areaconst" "parqueaderos" "banios" "habitaciones" "tipo"
## [11] "barrio" "longitud" "latitud"
## [1] 722
## lat_col: latitud
## lon_col: longitud
El mapa elaborado presenta la distribución espacial de la oferta inmobiliaria urbana según la información procesada en el dataset. Cada punto representa las ubicaciones de las distintas propiedades las cuales fuern clasificadas por sus características como precio, tipo de vivienda, área u otra variable relevante.
Durante la construcción del mapa de oferta inmobiliaria se identificó que el conjunto de datos inicial contenía registros con valores faltantes en las variables de latitud y longitud. Estos casos impedían la correcta conversión del archivo a un objeto espacial, generando errores en la visualización geográfica. Para garantizar la calidad de la información y la correcta georreferenciación de las viviendas, se realizó un proceso de depuración de datos, en el cual se eliminaron únicamente los registros con coordenadas incompletas. De esta forma se mantuvieron aquellos inmuebles con información confiable para el análisis.
Se observa que la mayoría de la oferta inmobiliaria se encuentra concentrada en zonas centrales y de alta accesibilidad, lo que sugiere una relación directa entre la ubicación y el valor de los inmuebles. Esto indica una mayor densidad de propiedades en sectores con mejor infraestructura de transporte, comercio y servicios públicos.
Algunas áreas periféricas presentan menor cantidad de propiedades ofertadas, pero en ciertos casos estas tienen precios competitivos o áreas más amplias. Esto indicaría una segmentación espacial del mercado inmobiliario urbano.
En la distribución se puede observar un posible patrón socioeconómico. En las zonas con mayor número de propiedades de alto valor tienden a agruparse, mientras que sectores con precios más bajos muestran dispersión y menor densidad.
El desbalance o desequilibrio en esta distribución podría indicar brechas en la planeación urbana, donde algunos sectores concentran gran parte de la oferta inmobiliaria y otros carecen de opciones, limitando la equidad en el acceso a vivienda.
Estos hallazgos permiten comprender que la oferta inmobiliaria no solo responde a la disponibilidad del suelo, sino que también responde a las dinámicas sociales y económicas, lo que representa un reto para la gestión territorial y la planificación urbana sostenible.
En esta segunda etapa, se pretende la revisión de la estructura de la data realizando un análisis exploratorio de los datos. El enfoque se realizará en la variable respuesta precio y en el cómo se relaciona con otras variables como area, estrato, número de baños y habitaciones y zona.
Dentro de la interpretación típica de los datos, es visible la existencia de variables de tipo numérico y categórico. Acontinuación, esta exploración:
## id zona piso estrato
## Min. : 1 Length:8322 Length:8322 Min. :3.000
## 1st Qu.:2080 Class :character Class :character 1st Qu.:4.000
## Median :4160 Mode :character Mode :character Median :5.000
## Mean :4160 Mean :4.634
## 3rd Qu.:6240 3rd Qu.:5.000
## Max. :8319 Max. :6.000
## NA's :3 NA's :3
## preciom areaconst parqueaderos banios
## Min. : 58.0 Min. : 30.0 Min. : 1.000 Min. : 0.000
## 1st Qu.: 220.0 1st Qu.: 80.0 1st Qu.: 1.000 1st Qu.: 2.000
## Median : 330.0 Median : 123.0 Median : 2.000 Median : 3.000
## Mean : 433.9 Mean : 174.9 Mean : 1.835 Mean : 3.111
## 3rd Qu.: 540.0 3rd Qu.: 229.0 3rd Qu.: 2.000 3rd Qu.: 4.000
## Max. :1999.0 Max. :1745.0 Max. :10.000 Max. :10.000
## NA's :2 NA's :3 NA's :1605 NA's :3
## habitaciones tipo barrio longitud
## Min. : 0.000 Length:8322 Length:8322 Min. :-76.59
## 1st Qu.: 3.000 Class :character Class :character 1st Qu.:-76.54
## Median : 3.000 Mode :character Mode :character Median :-76.53
## Mean : 3.605 Mean :-76.53
## 3rd Qu.: 4.000 3rd Qu.:-76.52
## Max. :10.000 Max. :-76.46
## NA's :3 NA's :3
## latitud
## Min. :3.333
## 1st Qu.:3.381
## Median :3.416
## Mean :3.418
## 3rd Qu.:3.452
## Max. :3.498
## NA's :3
Indica que la mayoría de las viviendas están entre \(58\) y \(500\) millones aproximadamente, aunque algunas llegan a \(2000\) millones, se podrian etiquetar como valores atípicos. También se puede nombrar que, por ejemplo, hay 50 casas con estrato \(3\), \(30\) de estrato \(4\) y \(20\) de estrato \(5\), esto indica en cual estrato existe una mayor oferta. El máximo de baños de estas viviendas son \(10\) con una media de \(3\), al igual que el número de habitaciones, que posee el mismo dato anterior, lo cual indicaría que por lo menos, las viviendas de areas grandes tienen un baño por habitación.
Esta última exploración indica la existencia de datos faltantes. Para la base estudiada, se registra un mínimo de \(2\) y un máximo de \(3\) datos faltantes que podrian imputarse según la estructura en la que se presentan.
## id zona piso estrato preciom areaconst
## 3 3 2638 3 2 3
## parqueaderos banios habitaciones tipo barrio longitud
## 1605 3 3 3 3 3
## latitud
## 3
Para este proceso, se deben notar los valores de correlación de las variables. Los valores cercanos a \(1\) o \(-1\) indican fuerte correlación positiva o negativa, respectivamente.
## preciom areaconst banios habitaciones
## preciom 1.00 0.69 0.67 0.26
## areaconst 0.69 1.00 0.65 0.52
## banios 0.67 0.65 1.00 0.59
## habitaciones 0.26 0.52 0.59 1.00
Existe correlación no tan fuerte entre las variables “precio” y “area construida”, lo que indica la relación directa de: a mayor área, mayor precio.
En cambio, existe una muy baja correlación entre “precio” y “habitaciones”, lo que indica que hay precios muy altos para el número de habitaciones en la oferta.
A continuación, se presentan tres gráficos que mostrarán las tendencias antes mencionadas,
Los estratos más altos (por color) muestran que los precios son superiores, incluso para áreas similares. Esto muestra que el estrato es un factor adicional que incrementa el precio de forma independiente al área.
En este grafico se muestra la tendencia del aumento del precio si esta tiene un mayor número de baños al igual que un mayor número de habitaciones, aunque existe cierta variabilidad. Las casas, por ejemplo, con pocos baños y pocas habitaciones tienden a ser mucho más económicas.
Esto quiere decir que el número de baños y habitaciones es un factor relevante para la compra de vivienda, afectando el precio de manera considerable.
Si los empleados necesitan espacio para varias personas, es recomendable la priorización de viviendas con un mínimo de \(2\) a \(3\) baños y de \(3\) a \(4\) habitaciones.
Este grafico logra identificar las zonas más costosas y las más económicas. Aqui, la mediana más alta representa la zona más exclusiva, los puntos atípicos representan las casas de lujo que pueden tener mejores acabados en zonas exclusivas, lo que indica que la zona influye mucho a la hora de adquirir vivienda, incluso para casas con características similares.
Indicarle a los empleados el seleccionar zonas que ofrezcan buena ubicación y seguridad, en las cuales no se paguen precios excesivos por casas de lujo innecesarias.
Teniendo claro que las variables a usar son precio=f(área construida, estrato, número de habitaciones, número de baños, parqueaderos).
Se espera que el área construida, el estrato y los parqueaderos sean significativos. Y el número de habitaciones o de baños, en muchas ocaciones no son significativas porque están muy correlacionadas con el área construida.
A continuación, la construcción del modelo:
##
## Call:
## lm(formula = preciom ~ areaconst + estrato + habitaciones + parqueaderos +
## banios, data = vivienda)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1412.57 -88.36 -17.55 56.24 1101.38
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -380.7629 14.3638 -26.51 <2e-16 ***
## areaconst 0.8510 0.0222 38.33 <2e-16 ***
## estrato 97.9107 2.8342 34.55 <2e-16 ***
## habitaciones -31.2744 2.2613 -13.83 <2e-16 ***
## parqueaderos 74.4922 2.5900 28.76 <2e-16 ***
## banios 61.0554 2.6271 23.24 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 177.2 on 6711 degrees of freedom
## (1605 observations deleted due to missingness)
## Multiple R-squared: 0.7206, Adjusted R-squared: 0.7204
## F-statistic: 3462 on 5 and 6711 DF, p-value: < 2.2e-16
El modelo eliminó \(1605\) casos por NA.
Intercepto \(-380.76\): Esto indica que al ser cero todas las variables, como área, estrato, etc., el modelo predice un precio de aproximadamente en menos \(380\) millones. Esto es poco práctico, ya que no es posible encontrar una vivienda con area \(0m²\).
Área construida \(0.8510\): Esto indica que por cada metro cuadrado adicional, el precio va a aumentar en aproximadamente \(851.000/m²\), manteniendo las demás variables constantes, esto hace cierta una de las conclusiones en el apartado anterior en el que se indicó que a más área construida, mayor será el precio.
Estrato \(97.91\): Esto indica que cuando se aumenta el nivel de estrato, el precio aumenta en promedio \(97.9\) millones, manteniendo constantes las demás variables. Esto tiene sentido en cuanto los estratos más altos suelen estar en zonas con mejor valorización, ya que concentran mejores vías, servicios y seguridad.
Habitaciones \(-31.27\): Esto indica que si se desea agregar una habitación, se asocia con una reducción de \(31.3\) millones. Esto se entiende en el supuesto de la existencia de más cuartos, esto implica espacios más pequeños o con menos áreas sociales, lo que no es muy llamativo.
Parqueaderos \(74.49\): Para cada parqueadero adicional, se tendría un incremento en el precio de \(74.5\) millones, esto indica la valorización de los mismos en la ciudad.
Baños \(61.06\): Para cada baño adicional se incrementa el precio en \(61\) millones, esto indicaría que a más baños, mayor precio y mayor comodidad.
El valor del \(R² = 0.7206\) indica que el 72% de la variabilidad se encuentra en los precios de las viviendas, lo que implica un buen ajuste.
El valor del F estadistico \(3492\) y un \(p=2.2e^-16\), indican que el conjunto de predictores es significativo, lo que hace que el modelo tenga un buen ajuste, por lo que el modelo construido en esta sección capta bien la relación entre precio y las variables incluidas.
El modelo es coherente. Las variables como área, estrato, parqueaderos y baños influyen positivamente en el precio, como se esperaba.
La única variable que no fue significativa es el número de habitaciones, lo cual indica posible multicolinealidad con el área construida.
Para mejorar el modelo, podrian interpretarse las transformaciones logarítmicas para el precio y el área, también incluir en el estudio las variables como la zona, área vs estrato la cual reflejo importancias en la primera sección, indicando antigüedad, calidad de acabados, etc.
La amplitud de los residuales indica colas: de \(−1413\) a \(1101\), por lo tanto, utilizar otro tipo de prueba ayudaria a una regresión más robusta.
No eliminar los \(1605\) datos, en cambio, aplicar imputación multiple, realizando validación cruzada y comparar con Bootstrapping para la estabilidad predictiva.
Complementando el análisis del modelo con:
## areaconst estrato habitaciones parqueaderos banios
## 2.190532 1.549549 2.036909 1.816620 2.813537
Los valores de esta prueba indican al ser inferiores a \(5\), la multicolinealidad es baja,entonces, el área construida y las habitaciones están correlacionadas ya que las habitaciones dependen del tamaño de la vivienda. Igualmente, los baños también están correlacionado con el área.
El test de Shapiro no fue posible realizar ya que la muestra tiene más de \(5000\) observaciones. Por lo tanto, el Shapiro-Wilk indica un valor de \(p<0.05\) lo que rechaza normalidad.
##
## Anderson-Darling normality test
##
## data: residuals(modelo)
## A = 224.92, p-value < 2.2e-16
##
## Lilliefors (Kolmogorov-Smirnov) normality test
##
## data: residuals(modelo)
## D = 0.13609, p-value < 2.2e-16
La prueba más recomendable para la regresión sigue la QQ-Normal, por lo tanto:
El supuesto se considera aceptable, el modelo se cumple razonablemente.
##
## studentized Breusch-Pagan test
##
## data: modelo
## BP = 1212.2, df = 5, p-value < 2.2e-16
Indica que al tener una hipótesis inicial en el que los errores tienen varianza constante y un \(p < 0.05\), entonces hay heterocedasticidad.
##
## Durbin-Watson test
##
## data: modelo
## DW = 1.6081, p-value < 2.2e-16
## alternative hypothesis: true autocorrelation is greater than 0
Evidencia de una autocorrelación positiva moderada en los residuos. El p-valor rechaza la hipótesis inicial, por lo tanto, existe autocorrelación positiva significativa.
Como se pide un modelo identificado que pueda predecir el precio de la vivienda con las características de la primera solicitud, es neceesario realizar un ajuste con la regrsion logaritmica ya que el modelo de regresión lineal múltiple que incluye área construida, número de baños, número de habitaciones y estrato es estadísticamente robusto y explica de manera adecuada la variación en el precio de la vivienda. Dicha transformación mejoraría el cumplimiento de los supuestos de regresión y facilita una interpretación porcentual del impacto de cada variable sobre el precio, lo cual es más útil para la toma de decisiones de la compañía. Por lo tanto, dicha transformación es:
##
## Call:
## lm(formula = log(preciom) ~ areaconst + habitaciones + banios +
## estrato, data = vivienda)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.35036 -0.19947 -0.00889 0.18065 1.86551
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.663e+00 1.999e-02 183.281 <2e-16 ***
## areaconst 1.644e-03 3.189e-05 51.566 <2e-16 ***
## habitaciones 3.875e-04 3.272e-03 0.118 0.906
## banios 1.378e-01 3.849e-03 35.805 <2e-16 ***
## estrato 3.149e-01 4.029e-03 78.164 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.3069 on 8314 degrees of freedom
## (3 observations deleted due to missingness)
## Multiple R-squared: 0.7902, Adjusted R-squared: 0.7901
## F-statistic: 7830 on 4 and 8314 DF, p-value: < 2.2e-16
En comparación con el anterior, los resultados visibles se notan en las variables como área contruida, estrato y número de baños.
La variable número de habitaciones no es estadísticamente significativa. Esto indica que, controlando por área, baños y estrato, el número de habitaciones no agrega valor explicativo al precio.
Área construida \(0.001644\): Cada metro cuadrado adicional está asociado con un incremento del 0.164% en el precio de la vivienda, manteniendo todo lo demás constante, un valor inferior al modelo original (\(0.8510\)).
Baños \(0.1378\): Cada baño adicional aumenta el precio en aproximadamente 13.8%.un baño extra es un atributo premium que eleva mucho la valorización de una vivienda. Comparado con el anterior es mucho más bajo (\(61.06\)).
Estrato \(0.3149\): Subir un nivel en estrato implica un incremento aproximado de 31.5% en el precio de la vivienda.Esto refleja la realidad en ciudades Colombianas, ya que el estrato concentra no solo nivel socioeconómico sino también ubicación y calidad de servicios, impactando fuertemente en el valor de la vivienda.
El valor del \(R² =0.79\) , es explicado por el 79% de la variación en la nueva transformación, reflejando un ajuste muy sólido en datos inmobiliarios, donde siempre hay factores poco observables como la vista, los acabados, la cercanía a parques y demás.
El valor del \(R²\) ajustado \(0.7901\), indica que el modelo no se sobreajusta aun si se retiran variables del modelo.
El valor de F-statistic \((7830\), \(p < 2.2e-16)\) indica que todo el modelo es globalmente significativo, por lo que es confiable a proyecciones.
*Desde el punto de vista de negocios, si la variable zona es significativa, entonces, la empresa debe considerar no solo estrato y área, sino también el sector de la ciudad para sus decisiones de compra. Si no lo es, entonces, se podria simplificar el modelo y usar solo estrato, baños y área, lo que facilita la interpretación.
El ajuste del modelo solo con las variables más fuertes área construida, número de baños y estrato socioeconómico, dejando por fuera habitaciones ya que no es significativa y zona, se dejará como recomendación en un proximo informe.
##
## Call:
## lm(formula = log(preciom) ~ areaconst + banios + estrato, data = vivienda)
##
## Residuals:
## Min 1Q Median 3Q Max
## -2.35275 -0.19931 -0.00878 0.18065 1.86482
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3.665e+00 1.558e-02 235.24 <2e-16 ***
## areaconst 1.645e-03 3.092e-05 53.21 <2e-16 ***
## banios 1.380e-01 3.280e-03 42.08 <2e-16 ***
## estrato 3.147e-01 3.603e-03 87.34 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 0.3069 on 8315 degrees of freedom
## (3 observations deleted due to missingness)
## Multiple R-squared: 0.7902, Adjusted R-squared: 0.7902
## F-statistic: 1.044e+04 on 3 and 8315 DF, p-value: < 2.2e-16
Área construida \(1.64%\): Cada metro cuadrado adicional aumenta el precio en aproximadamente 0.164%. Entonces, si una casa cuesta \(200\) millones, aumentar en \(10 m²\) elevaría el precio en aproximadamente unos $\(3,3\) millones adicionales.
Baños \(0.1380\): Cada baño adicional incrementa el precio en 13.8%, manteniendo todo lo demás constante. Entonces, para el precio del item anterior, la vivienda con un baño adicional podría costar aproximadamente $\(227,6\) millones.
Estrato \(0.3147\): Subir un nivel de estrato se asocia a un aumento del 31.5% en el precio. Entonces para una casa en estrato 4, frente a una en estrato 3 con mismas características, costaría aproximadamente 31.5% más.
Todos los coeficientes son altamente significativos, es decir, \(p < 0.001\), lo que refuerza la robustez del modelo.
El valor del \(R²\) = 79%, explica casi \(8\) de cada \(10\) variaciones en el precio de la vivienda.
El \(R²\) ajustado de \(0.7902\) indica que el valor se mantiene, lo que significa que en el modelo no se pierden grados de libertad innecesarios.
Con el F-statistic = \(10440\) y un \(p < 2.2e-16\), el modelo sigue siendo altamente significativo.
El precio de la vivienda en Cali está explicado principalmente por las variables: área construida, número de baños y estrato socioeconómico.
Los factores con mayor peso como el estrato, es el más influyente con un 31.5% más por cada nivel. La variable baños también es muy importante con aproximadamente 14% más por cada baño adicional y finalmente, el área construida influye en menor medida, pero es consistente, con aproximadamente el 0.16% por \(m²\).
Modelo confiable: Con un \(R²\) de 79% y todos los predictores significativos, el modelo es sólido para realizar predicciones y tomar decisiones estratégicas de compra.
se identificaron cinco potenciales inmuebles dentro del presupuesto máximo aprobado de \(350\) millones COP.
## # A tibble: 5 × 9
## id areaconst banios estrato zona pred_price offer_aggressive
## <dbl> <dbl> <dbl> <dbl> <chr> <dbl> <dbl>
## 1 69 80 0 3 Zona Oriente 115. 103.
## 2 7522 87 0 3 Zona Sur 116. 104.
## 3 698 40 1 3 Zona Sur 123. 111.
## 4 3442 40 1 3 Zona Sur 123. 111.
## 5 4485 40 1 3 Zona Oriente 123. 111.
## # ℹ 2 more variables: offer_reasonable <dbl>, offer_max <dbl>
Los dos mejores candidatos para compra de vivienda son:
id = \(7522\) \((87 m²\), pred \(115.84 M, ≈1.33 M/m²)\), es la mejor relación espacio/precio.
id = \(69\) \((80 m²\), pred \(114.51 M, ≈1.43 M/m²)\) es la segunda mejor opción por precio/\(m²\) por su área superior a \(80 m²\).
IDs 698, 3442 y 4485
-´Áreas reducidas \(40 m²\) y alto precio por \(m² ≈3.08 m COP/m²\).
Opciones menos adecuadas para familias:
Priorizar las viviendas ID \(7522\) y \(69\) como primeras opciones de compra, siempre verificando físicamente la existencia de baños y el estado de la construcción.
Mantener como plan alterno los inmuebles más pequeños, como los IDs \(698\), \(3442\) y \(4485\), en caso de que la disponibilidad inmediata o ubicación estratégica prime sobre el espacio.
El presupuesto aprobado de \(350\) millones COP permite incluso adquirir dos viviendas de este rango, cumpliendo con el objetivo de la empresa de alojar a dos empleados y sus familias.