INTRODUCCIÓN

Con el fin de dar respuesta a la solicitud realizada por la compañía internacional interesada en adquirir dos viviendas para sus empleados en la ciudad de Cali, se realizó un análisis de la base de datos de ofertas inmobiliarias disponible para los últimos tres meses. Esta base contiene información de 8.322 registros y 13 variables relacionadas con ubicación, tipo de vivienda, precio, área construida, número de habitaciones, baños, parqueaderos y coordenadas geográficas.

A partir de esta información se revisaron por separado dos casos: la búsqueda de una casa en la zona norte y la búsqueda de un apartamento en la zona sur. El propósito fue estimar un precio razonable para cada solicitud y, con base en ello, recomendar ofertas reales que se ajustaran tanto a las características pedidas como al presupuesto disponible.

EVALUACIÓN DE LA OFERTA INMOBILIARIA URBANA

CARGA DE DATOS

## [1] "LC_COLLATE=es_ES.UTF-8;LC_CTYPE=es_ES.UTF-8;LC_MONETARY=es_ES.UTF-8;LC_NUMERIC=C;LC_TIME=es_ES.UTF-8"
## Rows: 8,322
## Columns: 13
## $ id           <dbl> 1147, 1169, 1350, 5992, 1212, 1724, 2326, 4386, 1209, 159…
## $ zona         <chr> "Zona Oriente", "Zona Oriente", "Zona Oriente", "Zona Sur…
## $ piso         <chr> NA, NA, NA, "02", "01", "01", "01", "01", "02", "02", "02…
## $ estrato      <dbl> 3, 3, 3, 4, 5, 5, 4, 5, 5, 5, 6, 4, 5, 6, 4, 5, 5, 4, 5, …
## $ preciom      <dbl> 250, 320, 350, 400, 260, 240, 220, 310, 320, 780, 750, 62…
## $ areaconst    <dbl> 70, 120, 220, 280, 90, 87, 52, 137, 150, 380, 445, 355, 2…
## $ parqueaderos <dbl> 1, 1, 2, 3, 1, 1, 2, 2, 2, 2, NA, 3, 2, 2, 1, 4, 2, 2, 2,…
## $ banios       <dbl> 3, 2, 2, 5, 2, 3, 2, 3, 4, 3, 7, 5, 6, 2, 4, 4, 4, 3, 2, …
## $ habitaciones <dbl> 6, 3, 4, 3, 3, 3, 3, 4, 6, 3, 6, 5, 6, 2, 5, 5, 4, 3, 3, …
## $ tipo         <chr> "Casa", "Casa", "Casa", "Casa", "Apartamento", "Apartamen…
## $ barrio       <chr> "20 de julio", "20 de julio", "20 de julio", "3 de julio"…
## $ longitud     <dbl> -76.51168, -76.51237, -76.51537, -76.54000, -76.51350, -7…
## $ latitud      <dbl> 3.43382, 3.43369, 3.43566, 3.43500, 3.45891, 3.36971, 3.4…

TABLA DESCRIPTIVA DE VARIABLES (DICCIONARIO)

variable descripcion
zona Ubicación de la vivienda (ej.: Zona Centro, Zona Norte, etc.)
piso Piso que ocupa la vivienda (ej.: primer piso, segundo piso, etc.)
estrato Estrato socio-económico (3, 4, 5, 6)
preciom Precio de la vivienda en millones de pesos
areaconst Área construida de la vivienda
parqueaderos Número de parqueaderos
banios Número de baños
habitaciones Número de habitaciones
tipo Tipo de vivienda (Casa, Apartamento)
barrio Barrio donde se ubica la vivienda (ej.: 20 de Julio, Álamos, etc.)
longitud Coordenada geográfica (longitud)
latitud Coordenada geográfica (latitud)

ANALISIS DE LA BASE DE DATOS

DIMENSIÓN DE LA BASE DE DATOS

Se extrajo la dimensión del dataframe, es decir, el número total de filas (observaciones) y columnas (variables), con el objetivo de conocer la magnitud del conjunto de datos y facilitar la planificación de su análisis.

## [1] 8322   13

CANTIDAD DE REGISTROS

## [1] 8322

CANTIDAD DE COLUMNAS

## [1] 13

ESTRUCTURA DE Y TIPOS DE DATOS DE LA BASE DE DATOS

Tipos de variables en la base de datos
Variable Tipo
id id numeric
zona zona character
piso piso character
estrato estrato numeric
preciom preciom numeric
areaconst areaconst numeric
parqueaderos parqueaderos numeric
banios banios numeric
habitaciones habitaciones numeric
tipo tipo character
barrio barrio character
longitud longitud numeric
latitud latitud numeric
Lo propio hacemos con el dataframe de VIVIENDAS, con el fin de obtener una visión general de las características estadísticas de las variables, se utilizó la función describe() del paquete psych. Esta función proporciona una tabla resumen con los siguientes indicadores por variable: Número de observaciones válidas (n), Media (mean), Desviación estándar (sd), Valores mínimo y máximo, Rango (range) y Curtosis y asimetría (indicadores de forma de la distribución)

ERRORES DE ESCRITURA

En esta etapa no se identificaron errores de escritura en las variables del conjunto de datos actual, dado que todas las columnas fueron interpretadas como variables numéricas. Esto indica que las posibles inconsistencias tipográficas en variables categóricas (como el uso de mayúsculas/minúsculas o espacios) ya han sido previamente corregidas o que dichas variables no están presentes en la versión actual del dataset.

ERROR DE ESCRITURA DATAFRAME

Vemos la estructura y tipos de datos para el dataframe. Muestra el tipo de cada variable: numérica, factor, carácter, etc.

## spc_tbl_ [8,322 × 13] (S3: spec_tbl_df/tbl_df/tbl/data.frame)
##  $ id          : num [1:8322] 1147 1169 1350 5992 1212 ...
##  $ zona        : chr [1:8322] "Zona Oriente" "Zona Oriente" "Zona Oriente" "Zona Sur" ...
##  $ piso        : chr [1:8322] NA NA NA "02" ...
##  $ estrato     : num [1:8322] 3 3 3 4 5 5 4 5 5 5 ...
##  $ preciom     : num [1:8322] 250 320 350 400 260 240 220 310 320 780 ...
##  $ areaconst   : num [1:8322] 70 120 220 280 90 87 52 137 150 380 ...
##  $ parqueaderos: num [1:8322] 1 1 2 3 1 1 2 2 2 2 ...
##  $ banios      : num [1:8322] 3 2 2 5 2 3 2 3 4 3 ...
##  $ habitaciones: num [1:8322] 6 3 4 3 3 3 3 4 6 3 ...
##  $ tipo        : chr [1:8322] "Casa" "Casa" "Casa" "Casa" ...
##  $ barrio      : chr [1:8322] "20 de julio" "20 de julio" "20 de julio" "3 de julio" ...
##  $ longitud    : num [1:8322] -76.5 -76.5 -76.5 -76.5 -76.5 ...
##  $ latitud     : num [1:8322] 3.43 3.43 3.44 3.44 3.46 ...
##  - attr(*, "spec")=
##   .. cols(
##   ..   id = col_double(),
##   ..   zona = col_character(),
##   ..   piso = col_character(),
##   ..   estrato = col_double(),
##   ..   preciom = col_double(),
##   ..   areaconst = col_double(),
##   ..   parqueaderos = col_double(),
##   ..   banios = col_double(),
##   ..   habitaciones = col_double(),
##   ..   tipo = col_character(),
##   ..   barrio = col_character(),
##   ..   longitud = col_double(),
##   ..   latitud = col_double()
##   .. )
##  - attr(*, "problems")=<externalptr>

FILTRO INICIAL Y DEPURACIÓN

DEPURACIÓN (TIPOS Y NA)

FILTRO: CASAS EN ZONA NORTE

TABLA QUE COMPRUEBA LA CONSULTA

MAPA CON PUNTOS

EDA - ENFOCADO EN CORRELACIÓN ENTRE LAS VARIABLES RESPUESTA (PRECIO DE LA CASA)

CORRELACIÓN (CUANTITATIVAS)

##                preciom areaconst    estrato    banios habitaciones parqueaderos
## preciom      1.0000000 0.6853915 0.52827831 0.5086427   0.36508586    0.4116620
## areaconst    0.6853915 1.0000000 0.35352525 0.4574766   0.42068968    0.3069709
## estrato      0.5282783 0.3535252 1.00000000 0.3512569   0.05819709    0.2612647
## banios       0.5086427 0.4574766 0.35125685 1.0000000   0.59038214    0.3918638
## habitaciones 0.3650859 0.4206897 0.05819709 0.5903821   1.00000000    0.2413962
## parqueaderos 0.4116620 0.3069709 0.26126471 0.3918638   0.24139617    1.0000000

GRAFICOS INTERACTIVOS

ESTIMAR MLRM E INTERPRETACIÓN DE COEFICIENTES Y R²

TRAIN/TEST

ESTIMAR MODELO EN TRAIN

## 
## Call:
## lm(formula = preciom ~ areaconst + estrato + habitaciones + parqueaderos + 
##     banios, data = train)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -820.05  -82.01  -16.44   59.88  927.66 
## 
## Coefficients:
##               Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  -298.9580    56.1527  -5.324 2.00e-07 ***
## areaconst       0.7009     0.0626  11.196  < 2e-16 ***
## estrato        88.6349    12.0653   7.346 1.96e-12 ***
## habitaciones    9.5859     6.8033   1.409  0.15988    
## parqueaderos   21.8842     7.0529   3.103  0.00210 ** 
## banios         24.0205     9.1262   2.632  0.00893 ** 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 159 on 298 degrees of freedom
## Multiple R-squared:  0.618,  Adjusted R-squared:  0.6116 
## F-statistic: 96.44 on 5 and 298 DF,  p-value: < 2.2e-16

VALIDACIÓN DE SUPUESTOS DEL MODELO

GRÁFICOS BASICOS DE DIAGNOSTICO

PRUEBAS (NORMALIDAD, HOMOCEDASTICIDAD, INDEPENDENCIA)

## 
##  Shapiro-Wilk normality test
## 
## data:  resid(m1)
## W = 0.88054, p-value = 1.173e-14
## 
##  studentized Breusch-Pagan test
## 
## data:  m1
## BP = 77.254, df = 5, p-value = 3.148e-15
## 
##  Durbin-Watson test
## 
## data:  m1
## DW = 2.0314, p-value = 0.6054
## alternative hypothesis: true autocorrelation is greater than 0
##    areaconst      estrato habitaciones parqueaderos       banios 
##     1.442014     1.262229     1.637818     1.203020     1.747273

PREDICCIÓN VIVIENDA 1 (CASA NORTE, CREDITO ≤ 350M)

##        fit       lwr      upr
## 1 304.0276 -10.46369 618.5189
##        fit      lwr      upr
## 1 392.6625 77.29381 708.0312

RECOMENDAR ≥ 5 OFERTAS PARA VIVIENDA

MAPA DE LAS 5 OFERTAS

REPETIR 1-6 PARA VIVIENDA 2 (APARTAMENTO – ZONA SUR – CREDITO ≤ 850M)

FILTRO BASE2

EDA AHORA CON BASE2

TRAIN/TEST Y MODELO

## 
## Call:
## lm(formula = preciom ~ areaconst + estrato + habitaciones + parqueaderos + 
##     banios, data = train2)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -994.91  -40.09   -0.49   40.57  859.65 
## 
## Coefficients:
##                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  -250.45557   19.07977 -13.127  < 2e-16 ***
## areaconst       1.71445    0.07165  23.928  < 2e-16 ***
## estrato        53.35366    3.78973  14.078  < 2e-16 ***
## habitaciones  -26.81509    4.72470  -5.676 1.63e-08 ***
## parqueaderos   73.96688    4.95626  14.924  < 2e-16 ***
## banios         45.50903    4.15286  10.958  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 98.26 on 1661 degrees of freedom
## Multiple R-squared:  0.7705, Adjusted R-squared:  0.7698 
## F-statistic:  1115 on 5 and 1661 DF,  p-value: < 2.2e-16

DIAGNOSTICO SUPUESTOS

## 
##  Shapiro-Wilk normality test
## 
## data:  resid(m2)
## W = 0.78638, p-value < 2.2e-16
## 
##  studentized Breusch-Pagan test
## 
## data:  m2
## BP = 537.72, df = 5, p-value < 2.2e-16
## 
##  Durbin-Watson test
## 
## data:  m2
## DW = 2.0179, p-value = 0.6426
## alternative hypothesis: true autocorrelation is greater than 0
##    areaconst      estrato habitaciones parqueaderos       banios 
##     2.311187     1.598052     1.483594     1.890896     2.662817

PREDICCIÓN VIVIENDA 2 (ESTRATOS 5 Ó 6, APTO SUR)

##        fit      lwr      upr
## 1 755.0014 560.1552 949.8476
##        fit      lwr      upr
## 1 808.3551 613.4632 1003.247

OFERTAS RECOMENDADAS (≥ 5) Y MAPA (CRÉDITO ≤ 850)

PREDICCIÓN

PARA M1 (CASA NORTE)

##        RMSE         MAE     R2_test 
## 148.7317549  97.1848021   0.5853386

PARA M2 (APTOS SUR)

##        RMSE         MAE     R2_test 
## 103.1766549  59.7593190   0.6929045
  1. Revisión del caso 1: vivienda tipo casa en zona norte

Para el primer caso se filtraron únicamente las ofertas correspondientes a casas ubicadas en la zona norte. Después del filtro quedaron 435 registros, lo que muestra que sí existe una oferta suficiente para analizar este tipo de vivienda. Dentro de este grupo, el precio mínimo encontrado fue de 89 millones, el precio medio fue cercano a 480 millones, la mediana fue de 425 millones y el valor máximo llegó a 1.940 millones. Esto deja ver que en esta zona hay casas de muchos niveles de precio, desde opciones relativamente accesibles hasta inmuebles de alto valor.

Al revisar el mapa de las viviendas filtradas se observó que la mayoría de los puntos sí se concentran en el sector norte, aunque algunos parecen estar más dispersos. Esto puede pasar porque la clasificación por zona no siempre coincide exactamente con la ubicación geográfica puntual, porque algunos barrios están cerca de límites entre zonas o porque puede haber pequeñas inconsistencias en el registro de coordenadas. Por tanto, el mapa sirve como apoyo visual, pero no debe verse como una división totalmente exacta.

  1. Comportamiento del precio en las casas de zona norte

Al explorar los datos se observó que el precio de la casa tiene una relación más fuerte con el área construida, seguida del estrato, la cantidad de baños y el número de parqueaderos. La variable que mostró una relación más baja fue el número de habitaciones. En palabras sencillas, esto significa que el valor de una casa en esta zona sube principalmente cuando la vivienda es más grande, está en un mejor estrato y ofrece más comodidades.

Los gráficos también muestran una tendencia clara: a medida que aumenta el área construida, el precio tiende a subir. De igual forma, las viviendas de estratos más altos suelen tener valores mayores. En cambio, el número de habitaciones por sí solo no siempre explica el precio, porque dos casas pueden tener el mismo número de cuartos, pero áreas muy diferentes o condiciones distintas de ubicación y acabados.

  1. Estimación del precio para la vivienda 1

Con la información filtrada se construyó un modelo para estimar el precio de la primera solicitud, es decir, una casa, con 200 m² de área construida, 1 parqueadero, 2 baños, 4 habitaciones, ubicada en zona norte, con preferencia por estrato 4 o 5 y con un crédito preaprobado de 350 millones. El resultado principal del modelo arrojó una estimación cercana a 304 millones de pesos. Además, en la validación del modelo se obtuvo un ajuste intermedio, lo que indica que el modelo es útil como guía, aunque no debe tomarse como un valor exacto e inamovible.

En este caso, el nivel de explicación del modelo fue de alrededor de 61,8% dentro del entrenamiento, y en la prueba externa mostró un desempeño aceptable, con un R² cercano a 0,59. Esto quiere decir que el modelo logra captar una parte importante del comportamiento del precio, pero todavía hay otros factores no incluidos que también influyen, como el estado de conservación, los acabados, el barrio exacto, la antigüedad del inmueble o atributos adicionales no registrados en la base.

  1. Recomendación para la vivienda 1

Teniendo en cuenta que la estimación obtenida se ubicó alrededor de los 304 millones y que el presupuesto máximo disponible es de 350 millones, se considera que sí es viable atender esta solicitud dentro del mercado revisado. De hecho, el análisis permitió identificar al menos cinco ofertas potenciales dentro del presupuesto, ubicadas en barrios como La Merced, Vipasa, El Bosque y Urbanización La Merced, con precios entre 320 y 350 millones.

Entre estas opciones, las más recomendables son aquellas que se acercan mejor a la solicitud original en términos de área y distribución, pero sin sobrepasar el tope del crédito. En general, la recomendación para María es priorizar viviendas alrededor de 320 a 350 millones, ya que se encuentran dentro del rango manejable y permiten responder adecuadamente a la necesidad del cliente. También sería prudente revisar en detalle el estado físico del inmueble y la ubicación exacta antes de cerrar cualquier negociación.

  1. Revisión del caso 2: apartamento en zona sur

Para la segunda solicitud se trabajó con el filtro de apartamentos ubicados en la zona sur. En este caso quedaron 2.381 registros, lo que indica una oferta mucho más amplia que en el caso anterior. Esto es favorable porque permite contar con más alternativas para encontrar un inmueble que se ajuste tanto a las necesidades de la familia como al presupuesto aprobado de 850 millones de pesos.

En los gráficos de esta segunda base se observó nuevamente que el precio aumenta a medida que crece el área construida y también sube de manera importante en los estratos más altos. Esto era esperable, ya que un apartamento más amplio, mejor ubicado y de mayor estrato suele tener mayor valor en el mercado.

  1. Estimación del precio para la vivienda 2

Para la segunda solicitud se estimó el valor de un apartamento con 300 m², 3 parqueaderos, 3 baños, 5 habitaciones, ubicado en la zona sur y con preferencia de estrato 5 o 6. El modelo arrojó una estimación cercana a 755 millones de pesos, valor que se encuentra por debajo del crédito preaprobado de 850 millones, por lo cual la solicitud también resulta viable dentro del mercado estudiado.

En comparación con el caso de las casas del norte, este segundo modelo mostró un mejor comportamiento general. Su capacidad explicativa fue cercana al 77%, y en la prueba externa presentó un R² cercano a 0,69, además de menores errores de predicción. Esto significa que, para el caso de los apartamentos en zona sur, el modelo ofrece una guía más sólida y confiable para apoyar la decisión comercial.

Un punto interesante es que, al revisar todas las variables juntas, el número de habitaciones apareció con un efecto negativo. Esto no debe interpretarse como que “más habitaciones bajan el precio” de forma general. Más bien sugiere que, cuando ya se tiene en cuenta el área, el estrato, los baños y los parqueaderos, dividir el espacio en más habitaciones no siempre hace que el inmueble valga más. En algunos casos puede significar espacios más reducidos o una distribución menos amplia.

  1. Recomendación para la vivienda 2

Con base en los resultados obtenidos, se concluye que la segunda solicitud también puede ser atendida dentro del presupuesto disponible. El valor estimado del apartamento se encuentra por debajo del tope de financiación, y además se identificaron en el análisis varias ofertas recomendadas en el mapa para este rango de búsqueda.

La recomendación para María es enfocar la búsqueda en apartamentos del sur que se encuentren preferiblemente por debajo de 800 millones, de manera que exista un margen de maniobra para negociación, trámites y posibles gastos adicionales. Dado que el comportamiento del modelo fue mejor en este segundo caso, el respaldo para la recomendación comercial es más fuerte que en la vivienda 1.

  1. Conclusión general

En términos generales, el estudio permitió concluir que las dos solicitudes son viables con base en la información disponible del mercado. Para la vivienda 1, la estimación fue cercana a 304 millones, por lo que sí existen opciones reales dentro del límite de 350 millones. Para la vivienda 2, la estimación fue cercana a 755 millones, valor que también se ajusta al tope de 850 millones aprobado por la empresa.

Aunque los modelos utilizados no explican el comportamiento del precio de manera perfecta, sí ofrecen una base objetiva y útil para orientar la decisión. En ambos casos se recomienda complementar la estimación con una revisión comercial y física de las ofertas seleccionadas, especialmente en aspectos como ubicación exacta, estado del inmueble, acabados, antigüedad y facilidad de acceso. En consecuencia, se recomienda a María presentar a la compañía internacional un grupo corto de opciones priorizadas, mostrando que ambas necesidades pueden ser cubiertas de forma razonable con el presupuesto disponible.

  1. Comentario final sobre el uso del modelo

Finalmente, los resultados de validación muestran que los modelos funcionan como una herramienta de apoyo para la toma de decisiones, pero no como una regla exacta. En ambos casos hubo señales de que el mercado presenta variaciones que el modelo no alcanza a recoger por completo, por lo que la recomendación final siempre debe combinar el resultado numérico con el criterio comercial. Aun así, la independencia de los errores fue adecuada y el segundo caso mostró un desempeño mejor que el primero.

Con este análisis se encontró que sí hay opciones para responder a las dos solicitudes planteadas. En el caso de la casa en zona norte, el valor estimado fue cercano a 304 millones, por lo que el presupuesto de 350 millones sí permite encontrar alternativas adecuadas. Para el apartamento en zona sur, la estimación fue cercana a 755 millones, también dentro del presupuesto máximo de 850 millones. En ambos casos, los resultados sirven como guía para apoyar la decisión, pero siempre es importante revisar también la ubicación exacta, el estado real del inmueble y las condiciones de negociación antes de recomendar la compra definitiva.