Modelos EstadísticosPontificia Universidad Javeriana Cali Maestría en Ciencia de Datos Estudiante: Edwin Silva Salas Actividad: II Fecha: 2026-03-08 |
|
María 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 trasladó 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:
| Características | Vivienda 1 | Vivienda 2 |
|---|---|---|
| Tipo | Casa | Apartamento |
| Área construida | 200 | 300 |
| Parqueaderos | 1 | 3 |
| Baños | 2 | 3 |
| Habitaciones | 4 | 5 |
| Estrato | 4 o 5 | 5 o 6 |
| Zona | Norte | Sur |
| Crédito preaprobado | 350 millones | 850 millones |
Ayudar 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) .
Inicialmente se descargan las librerias:
Posteriormente utilizamos las librerias para consultar los datos (base de datos)
library(paqueteMODELOS)
library(tidyverse)
data("vivienda")
knitr::kable(head(vivienda), caption = "Tabla 2.1: Muestra de registros de la base completa de información 'vivienda'")| id | zona | piso | estrato | preciom | areaconst | parqueaderos | banios | habitaciones | tipo | barrio | longitud | latitud |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 1147 | Zona Oriente | NA | 3 | 250 | 70 | 1 | 3 | 6 | Casa | 20 de julio | -76.51168 | 3.43382 |
| 1169 | Zona Oriente | NA | 3 | 320 | 120 | 1 | 2 | 3 | Casa | 20 de julio | -76.51237 | 3.43369 |
| 1350 | Zona Oriente | NA | 3 | 350 | 220 | 2 | 2 | 4 | Casa | 20 de julio | -76.51537 | 3.43566 |
| 5992 | Zona Sur | 02 | 4 | 400 | 280 | 3 | 5 | 3 | Casa | 3 de julio | -76.54000 | 3.43500 |
| 1212 | Zona Norte | 01 | 5 | 260 | 90 | 1 | 2 | 3 | Apartamento | acopi | -76.51350 | 3.45891 |
| 1724 | Zona Norte | 01 | 5 | 240 | 87 | 1 | 3 | 3 | Apartamento | acopi | -76.51700 | 3.36971 |
Se presenta el diccionario de variables del dataset
vivienda, con su tipo de dato en R y una clasificación
estadística:
| Variable | Tipo en R | Tipo estadístico | Rol en el análisis | |
|---|---|---|---|---|
| id | id | numeric | — | — |
| zona | zona | character | Categórica nominal | Predictor potencial |
| piso | piso | character | Categórica ordinal | Descriptiva |
| estrato | estrato | numeric | Categórica ordinal | Predictor potencial |
| preciom | preciom | numeric | Cuantitativa continua | Variable respuesta (Y) |
| areaconst | areaconst | numeric | Cuantitativa continua | Predictor potencial |
| parqueaderos | parqueaderos | numeric | Cuantitativa discreta | Predictor potencial |
| banios | banios | numeric | Cuantitativa discreta | Predictor potencial |
| habitaciones | habitaciones | numeric | Cuantitativa discreta | Predictor potencial |
| tipo | tipo | character | Categórica nominal | Filtro / segmentación |
| barrio | barrio | character | Categórica nominal | Descriptiva |
| longitud | longitud | numeric | Cuantitativa continua | Georreferenciación |
| latitud | latitud | numeric | Cuantitativa continua | Georreferenciación |
Para el apartamento de 300 m² en zona Sur
Se realiza un filtro a la base de datos para incluir solo las ofertas de apartamentos de la zona sur de la ciudad:
base2 <- vivienda %>%
filter(tipo == "Apartamento", zona == "Zona Sur")
base2 %>% head(3) %>% knitr::kable(caption = "Tabla 3.1: Muestra de registros del filtro: Apartamentos de Zona Sur")| id | zona | piso | estrato | preciom | areaconst | parqueaderos | banios | habitaciones | tipo | barrio | longitud | latitud |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 5098 | Zona Sur | 05 | 4 | 290 | 96 | 1 | 2 | 3 | Apartamento | acopi | -76.53464 | 3.44987 |
| 698 | Zona Sur | 02 | 3 | 78 | 40 | 1 | 1 | 2 | Apartamento | aguablanca | -76.50100 | 3.40000 |
| 8199 | Zona Sur | NA | 6 | 875 | 194 | 2 | 5 | 3 | Apartamento | aguacatal | -76.55700 | 3.45900 |
Verificacion del filtro objetivo para la solicitud 2, vivienda tipo apartamento de $ 850 millones.
| Cantidad de registros |
|---|
| 2787 |
| Tipo |
|---|
| Apartamento |
| Zona |
|---|
| Zona Sur |
| Tipo | Zona | Registros en vivienda |
|---|---|---|
| Apartamento | Zona Sur | 2787 |
Se grafican las coordenadas donde se encuentran ubicados los apartamentos de la Zona Sur
Al observar el mapa se identifican puntos dispersos fuera del área geográfica que intuitivamente correspondería a la Zona Sur de Cali. Esto puede ocurrir por las siguientes razones:
La variable zona es una etiqueta comercial,
no geográfica: el campo zona del dataset es
asignado por la agencia inmobiliaria según su propia clasificación de
mercado, la cual no necesariamente coincide con los límites geográficos
estrictos del sur de la ciudad.
Errores de geocodificación: algunos registros
pueden tener coordenadas longitud/latitud
incorrectas o imprecisas, producto del proceso de captura o
geocodificación de las direcciones.
El filtro zona == "Zona Sur" garantiza que todos
los registros tengan la etiqueta correcta según la
clasificación del dataset. La dispersión geográfica observada en el mapa
es una característica de los datos.
| Registros | Lat mín | Lat máx | Lon mín | Lon máx |
|---|---|---|---|---|
| 2787 | 3.33367 | 3.49684 | -76.56525 | -76.464 |
El siguiente análisis exploratorio examina la relación entre el
precio de la vivienda (en millones de pesos) y cinco
variables explicativas clave: área construida, estrato socioeconómico,
número de baños, número de habitaciones y zona de ubicación. Se emplea
el dataset filtrado
filter(tipo == "Apartamento", zona == "Zona Sur") para
enfocar el resultado a la solicitud 2.
| id | zona | piso | estrato | preciom | areaconst | parqueaderos | banios | habitaciones | tipo | barrio | longitud | latitud |
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 5098 | Zona Sur | 05 | 4 | 290 | 96 | 1 | 2 | 3 | Apartamento | acopi | -76.53464 | 3.44987 |
| 698 | Zona Sur | 02 | 3 | 78 | 40 | 1 | 1 | 2 | Apartamento | aguablanca | -76.50100 | 3.40000 |
| 8199 | Zona Sur | NA | 6 | 875 | 194 | 2 | 5 | 3 | Apartamento | aguacatal | -76.55700 | 3.45900 |
| 1241 | Zona Sur | NA | 3 | 135 | 117 | NA | 2 | 3 | Apartamento | alameda | -76.51400 | 3.44100 |
| 5370 | Zona Sur | NA | 3 | 135 | 78 | NA | 1 | 3 | Apartamento | alameda | -76.53600 | 3.43600 |
Interpretación: El gráfico muestra la distribución del precio para los apartamentos de la Zona Sur. La mediana del precio es de $245 millones, con un rango intercuartílico entre $175 y $335 millones. Se identifican valores atípicos por encima de $575 millones (umbral de Tukey), alcanzando hasta $1750 millones, lo que refleja la existencia de propiedades premium con características superiores al segmento típico. Esta distribución establece la línea base para evaluar la viabilidad de la solicitud del cliente, cuyo crédito preaprobado es de $850 millones. El crédito se ubica por encima de la mediana, lo que sugiere altas posibilidades de adquirir un apartamento en esta zona cumpliendo la solicitud del cliente.
Interpretación: El histograma (normalizado a
densidad) junto con la curva KDE muestra que la distribución del precio
tiene un sesgo positivo (asimetría hacia la derecha):
la mayor concentración se ubica entre $175 y
$335 millones, con una cola larga hacia valores altos
por propiedades premium. La línea verde punteada marca la
mediana ($245 M) y la amarilla el crédito
preaprobado ($850 M). Este sesgo es un indicador clave para los
supuestos del modelo lineal: si el residual hereda esta asimetría,
podría justificarse una transformación logarítmica de
preciom antes de ajustar el modelo de regresión
múltiple.
cor_area <- cor(base2$preciom, base2$areaconst, use = "complete.obs")
sprintf("Correlación Precio ~ Área construida: r = %.4f", cor_area) %>%
knitr::kable(col.names = c(" "))| Correlación Precio ~ Área construida: r = 0.7580 |
Interpretación: En los apartamentos de la Zona Sur existe una tendencia positiva clara entre el área construida y el precio: a mayor área, mayor precio. La correlación de Pearson para este segmento es r = 0.758, lo que indica una asociación lineal fuerte entre ambas variables. Para el área objetivo de 300 m², el modelo lineal simple estima un precio de $856.7 millones, valor que se ubica por encima del crédito preaprobado de $850 millones. La dispersión creciente a medida que aumenta el área sugiere heterocedasticidad, lo que deberá tenerse en cuenta en el ajuste del modelo final.
Interpretación: El gráfico de violín muestra la distribución del precio para los apartamentos de la Zona Sur según estrato socioeconómico. En este segmento se identifican estratos del 3 al 6. La tendencia es positiva y progresiva: la mediana del estrato 6 alcanza $580 millones, frente a $128 millones del estrato 3.
Los estratos menores presentan distribuciones más compactas con menor dispersión, mientras que los estratos superiores exhiben colas más amplias hacia valores altos, reflejando mayor heterogeneidad en el precio. Esto confirma que el estrato es una variable fuertemente asociada al precio incluso dentro del segmento de apartamentos de la Zona Sur, y respalda su inclusión como predictor en el modelo.
Considerando el crédito preaprobado de $850 millones, y que la solicitud especifica estrato 5 o 6, se observan las medianas por estrato en la tabla siguiente para evaluar la viabilidad.
| Estrato | Mediana | Cantidad |
|---|---|---|
| 3 | 128 | 201 |
| 4 | 188 | 1091 |
| 5 | 280 | 1033 |
| 6 | 580 | 462 |
cor_banos <- cor(base2$preciom, base2$banios, use = "complete.obs")
sprintf("Correlación Precio ~ Número de baños: r = %.4f", cor_banos) %>%
knitr::kable(col.names = c(" "))| Correlación Precio ~ Número de baños: r = 0.7197 |
Interpretación: En los apartamentos de la Zona Sur, el precio muestra una tendencia positiva y progresiva con el número de baños. La correlación de Pearson en este segmento es r = 0.72, lo que indica una asociación moderada entre precio y número de baños. Para la solicitud del cliente (3 baños, crédito de $850 millones), se observa que el grupo correspondiente presenta medianas compatibles con el presupuesto disponible.
cor_hab <- cor(base2$preciom, base2$habitaciones, use = "complete.obs")
sprintf("Correlación Precio ~ Número de habitaciones: r = %.4f", cor_hab) %>%
knitr::kable(col.names = c(" "))| Correlación Precio ~ Número de habitaciones: r = 0.3318 |
Interpretación: En los apartamentos de la Zona Sur, el precio muestra una tendencia positiva con el número de habitaciones, aunque menos pronunciada que con el área o los baños. La correlación de Pearson en este segmento es r = 0.332, lo que indica una asociación moderada-baja entre precio y número de habitaciones. La variabilidad dentro de cada grupo es elevada, lo que sugiere que esta variable puede estar correlacionada con otros predictores como el área y los baños — deberá evaluarse mediante el VIF (Variance Inflation Factor) en el modelo. Para la solicitud del cliente (5 habitaciones, crédito de $850 millones), se evalúa la mediana del grupo correspondiente frente al presupuesto disponible.
Interpretación: El mapa de calor muestra las
correlaciones de Pearson entre el precio y las variables explicativas
para los apartamentos de la Zona Sur
(base2). Las correlaciones entre predictores sugieren la
necesidad de evaluar el riesgo de multicolinealidad al
incluir todas las variables simultáneamente, lo cual se verifica
formalmente a continuación mediante el VIF.
El VIF (Variance Inflation Factor) cuantifica cuánto se infla la varianza de un coeficiente estimado \(\hat{\beta}_j\) debido a la correlación lineal entre los predictores. Se calcula ajustando una regresión auxiliar de cada predictor \(X_j\) contra los demás, obteniendo su \(R^2_j\):
\[VIF_j = \frac{1}{1 - R^2_j}\]
| VIF | Diagnóstico |
|---|---|
| 1 | Sin multicolinealidad |
| 1 – 5 | Moderada; generalmente aceptable |
| 5 – 10 | Alta; los coeficientes pueden ser inestables |
| > 10 | Severa; los estimadores pierden confiabilidad |
¿Por qué calcular VIF antes de estimar el modelo? Porque la multicolinealidad no se corrige ajustando el modelo; se previene antes de ajustarlo. Si se detecta un VIF alto en esta etapa, se puede decidir:
Estimar el modelo sin este diagnóstico previo podría producir coeficientes con signos contrarios a lo esperado, intervalos de confianza excesivamente amplios y pruebas de significancia engañosas — problemas que ya no se resuelven simplemente reinterpretando la salida del modelo.
A continuación se calcula el VIF sobre las variables que entrarán al
modelo:
preciom ~ areaconst + estrato + habitaciones + parqueaderos + banios.
| Variable | VIF | Diagnóstico | |
|---|---|---|---|
| areaconst | areaconst | 2.067 | Aceptable |
| estrato | estrato | 1.545 | Aceptable |
| habitaciones | habitaciones | 1.429 | Aceptable |
| parqueaderos | parqueaderos | 1.738 | Aceptable |
| banios | banios | 2.529 | Aceptable |
Interpretación: Todos los valores de VIF son menores a 5, por debajo del umbral conservador de 5 y del umbral crítico de 10. Esto confirma que no existe multicolinealidad problemática entre los predictores del modelo. En consecuencia, no es necesario aplicar ninguna de las alternativas correctivas (eliminación de variables, transformaciones, PCA, regularización Ridge/Lasso, ni creación de índices): las cinco variables pueden incluirse simultáneamente en el modelo de regresión lineal múltiple con plena confianza en la estabilidad de sus coeficientes.
| Variable | Valores NA | Registros validos | % completo |
|---|---|---|---|
| preciom | 0 | 2787 | 100.0 |
| areaconst | 0 | 2787 | 100.0 |
| estrato | 0 | 2787 | 100.0 |
| habitaciones | 0 | 2787 | 100.0 |
| parqueaderos | 406 | 2381 | 85.4 |
| banios | 0 | 2787 | 100.0 |
| Total registros | Registros completos | Excluidos | % usado en modelo |
|---|---|---|---|
| 2787 | 2381 | 406 | 85.4 |
Se detectaron 406 registros con al menos un NA en las variables del modelo. A continuacion se aplica imputacion sobre la variable parqueaderos.
La variable parqueaderos puede presentar valores
faltantes no porque el dato sea desconocido, sino porque la propiedad
no cuenta con parqueadero. Imputar con la media
introduciria un valor sin fundamento real en el dominio del problema;
eliminar el registro perderia informacion util. La decision mas
coherente es imputar con 0, interpretando el NA como
ausencia de parqueadero.
| Momento | NA en parqueaderos | Total registros |
|---|---|---|
| Antes de imputar | 406 | 2787 |
| Despues de imputar | 0 | 2787 |
La variable estrato es ordinalmente categórica por
naturaleza, pero puede modelarse de dos formas:
| Enfoque | Codigo en lm() | Supuesto | Coeficientes |
|---|---|---|---|
| Numerico | + estrato |
Efecto lineal y uniforme entre niveles | 1 |
| Factor / dummies | + factor(estrato) |
Cada nivel tiene su propio intercepto | k - 1 |
Decision: tratar estrato como variable numerica
continua. Las razones son:
estrato como numerico, confirmando que no genera
multicolinealidad problematica con los demas predictores.| Estrato | n | Mediana (M COP) | Media (M COP) | Incremento vs estrato anterior |
|---|---|---|---|---|
| 3 | 201 | 128 | 141.1 | NA |
| 4 | 1091 | 188 | 203.6 | 60 |
| 5 | 1033 | 280 | 293.7 | 92 |
| 6 | 462 | 580 | 594.5 | 300 |
La tabla confirma que los incrementos de mediana entre estratos son
positivos y relativamente uniformes, lo que respalda el tratamiento
numerico. Se usara estrato como variable numerica en el
modelo.
preciom antes de estimar?El histograma (sección 4.1) mostró sesgo positivo en la distribución
de preciom. La práctica estándar ante esta situación
es:
log(preciom) y reestimar.No se recomienda transformar preventivamente porque cambiar la
variable respuesta modifica la interpretación de todos
los coeficientes: pasan de ser efectos aditivos en millones COP a
efectos multiplicativos (semi-elasticidades), lo que complica
directamente la predicción final para el cliente (el resultado de
predict() quedaría en escala logarítmica y requeriría
retransformación con corrección de sesgo de retransformación).
Decisión: se estima primero el modelo en escala original (
preciomen millones COP). La necesidad de transformación se evaluará en una sesion posterior.
Se estima el modelo:
\[\text{preciom} = \beta_0 + \beta_1 \cdot \text{areaconst} + \beta_2 \cdot \text{estrato} + \beta_3 \cdot \text{habitaciones} + \beta_4 \cdot \text{parqueaderos} + \beta_5 \cdot \text{banios} + \varepsilon\]
library(pander)
modelo1 <- lm(preciom ~ areaconst + estrato + habitaciones + parqueaderos + banios,
data = base2)
resumen <- summary(modelo1)
resumen##
## Call:
## lm(formula = preciom ~ areaconst + estrato + habitaciones + parqueaderos +
## banios, data = base2)
##
## Residuals:
## Min 1Q Median 3Q Max
## -1252.31 -42.15 -2.06 36.32 934.06
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) -221.04614 13.47771 -16.401 < 2e-16 ***
## areaconst 1.46061 0.04876 29.956 < 2e-16 ***
## estrato 57.00608 2.79648 20.385 < 2e-16 ***
## habitaciones -22.71789 3.39549 -6.691 2.68e-11 ***
## parqueaderos 48.36353 3.02343 15.996 < 2e-16 ***
## banios 48.60871 3.04050 15.987 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 95.17 on 2781 degrees of freedom
## Multiple R-squared: 0.7536, Adjusted R-squared: 0.7531
## F-statistic: 1701 on 5 and 2781 DF, p-value: < 2.2e-16
| Término | Estimación | Error Std. | t | p-valor | IC 95% inf. | IC 95% sup. | Signif. |
|---|---|---|---|---|---|---|---|
| (Intercept) | -221.0461 | 13.4777 | -16.4009 | 0 | -247.4735 | -194.6188 | *** |
| areaconst | 1.4606 | 0.0488 | 29.9560 | 0 | 1.3650 | 1.5562 | *** |
| estrato | 57.0061 | 2.7965 | 20.3849 | 0 | 51.5227 | 62.4895 | *** |
| habitaciones | -22.7179 | 3.3955 | -6.6906 | 0 | -29.3758 | -16.0600 | *** |
| parqueaderos | 48.3635 | 3.0234 | 15.9963 | 0 | 42.4351 | 54.2919 | *** |
| banios | 48.6087 | 3.0405 | 15.9871 | 0 | 42.6469 | 54.5706 | *** |
Códigos de significancia: *** p < 0.001 ** p < 0.01 * p < 0.05 . p < 0.1 ns: no significativo
El intercepto es -221.05 millones COP (p = 0.0000, significativo). Representa el precio estimado de un apartamento con area construida = 0 m2, estrato = 0, 0 habitaciones, 0 parqueaderos y 0 banios. Este valor no tiene interpretacion practica porque las condiciones son irreales, pero es necesario matematicamente para definir el plano de regresion.
areaconst)Por cada metro cuadrado adicional de area construida, el precio del apartamento aumenta en promedio 1.46 millones COP, manteniendo constantes las demas variables (estrato, habitaciones, parqueaderos y banios). (p = 0.0000, significativo). Este resultado es logico: una mayor superficie implica mas material de construccion, mas terreno y mas espacio habitable, lo que se traduce en un mayor valor de mercado.
estrato)Por cada unidad adicional de estrato, el precio aumenta en promedio 57.01 millones COP, controlando por las demas variables. (p = 0.0000, significativo). Este resultado es coherente con el mercado inmobiliario colombiano: el estrato socioeconomico refleja la calidad de la ubicacion, la infraestructura del barrio, los servicios publicos y el nivel de valorizacion, todos factores que incrementan el precio.
habitaciones)Cada habitacion adicional esta asociada a un cambio de -22.72 millones COP en el precio, manteniendo constantes las demas variables. (p = 0.0000, significativo). El signo negativo puede parecer contraintuitivo, pero tiene una explicacion logica: a igualdad de area construida, mas habitaciones implican cuartos mas pequenios, lo que puede indicar una distribucion del espacio menos eficiente o una construccion de menor calidad, reduciendo el valor percibido de la propiedad.
parqueaderos)Cada parqueadero adicional esta asociado a un cambio de 48.36 millones COP en el precio, controlando por las demas variables. (p = 0.0000, significativo). El signo positivo es logico: un parqueadero es una amenidad valorada, especialmente en zonas urbanas donde el estacionamiento es limitado.
banios)Cada banio adicional esta asociado a un cambio de 48.61 millones COP en el precio, manteniendo constantes las demas variables. (p = 0.0000, significativo). El signo positivo es esperado: los banios representan un acabado costoso (plomeria, enchape, sanitarios) y son indicadores de confort y calidad de la vivienda.
| Métrica | Valor |
|---|---|
| R² | 0.7536 |
| R² ajustado | 0.7531 |
| Estadístico F | 1700.86 |
| p-valor (F) | 0.00e+00 |
| Observaciones | 2787 |
| Predictores | 5 |
El modelo explica el 75.4% de la variabilidad total del precio de los apartamentos en Zona Sur (R2 ajustado = 75.3%, que penaliza por el numero de predictores incluidos).
Este nivel de explicacion es bueno para un modelo de valoracion inmobiliaria. Las cinco variables incluidas (area, estrato, habitaciones, parqueaderos y banios) capturan una porcion sustancial de los factores que determinan el precio de una vivienda.
La prueba F global (F = 1700.86, p = 0.00e+00) es significativa, lo que indica que al menos uno de los predictores tiene una relacion lineal estadisticamente significativa con el precio. El modelo en su conjunto es util para predecir.
El 24.6% de variabilidad no explicada por el modelo puede atribuirse a factores como:
Para mejorar el ajuste del modelo se podria considerar:
barrio como
predictor categorico, lo que capturaria las diferencias de precio por
ubicacion especifica dentro de la Zona Sur.piso (numero de
pisos del apartamento), que esta disponible en el dataset y podria
aportar informacion adicional.areaconst^2) o interacciones (ej.
areaconst:estrato).preciom
si los residuales muestran sesgo pronunciado (se evaluara en la seccion
de diagnosticos).El modelo de regresión lineal múltiple se basa en cuatro supuestos fundamentales sobre los residuales \(e_i = y_i - \hat{y}_i\). A continuación se evalúa cada uno de ellos gráfica y formalmente.
El modelo asume una relación lineal entre los predictores y la variable respuesta. Se evalúa mediante el gráfico de residuales vs. valores ajustados: si la relación es lineal, los residuales deben distribuirse aleatoriamente alrededor de cero sin mostrar patrones sistemáticos (curvas, formas de U, abanico).
Interpretación: Si la curva LOESS (naranja) se mantiene cercana a la línea horizontal en cero, el supuesto de linealidad se cumple razonablemente. Si se observa una curvatura pronunciada, esto indicaría que la relación no es puramente lineal y se podría considerar:
areaconst^2)areaconst:estrato)log(preciom))El modelo asume que los errores siguen una distribución normal: \(\varepsilon_i \sim N(0, \sigma^2)\). Se evalúa mediante el Q-Q plot (los puntos deben alinearse sobre la diagonal) y la prueba de Shapiro-Wilk (formalmente).
| Prueba | Estadístico | p-valor | Decisión | |
|---|---|---|---|---|
| W | Shapiro-Wilk | 0.7723 | 2.21e-52 | Se rechaza normalidad (p < 0.05) |
Interpretación: La prueba de Shapiro-Wilk rechaza la hipótesis de normalidad de los residuales. El Q-Q plot probablemente muestra desviaciones en las colas (puntos alejados de la diagonal), lo cual es consistente con la asimetría positiva observada en la distribución del precio.
Sugerencias:
log(preciom) como variable respuesta, lo que tiende a
simetrizar distribuciones con sesgo positivo y estabilizar la
varianza.El modelo asume que la varianza de los errores es constante para todos los niveles de los predictores: \(Var(\varepsilon_i) = \sigma^2\). Si la varianza cambia (heterocedasticidad), los errores estándar de los coeficientes son incorrectos y las pruebas t y los intervalos de confianza pierden validez. Se evalúa con el gráfico Scale-Location y la prueba de Breusch-Pagan.
| Prueba | Estadístico | GL | p-valor | Decisión | |
|---|---|---|---|---|---|
| BP | Breusch-Pagan | 956.8303 | 5 | 1.33e-204 | Se rechaza homocedasticidad (p < 0.05) |
Interpretación: La prueba de Breusch-Pagan rechaza la hipótesis de varianza constante — se detecta heterocedasticidad. Esto significa que la dispersión de los residuales no es uniforme: probablemente aumenta con los valores ajustados (apartamentos más caros tienen residuales más dispersos).
Sugerencias:
coeftest(modelo1, vcov = vcovHC(modelo1, type = 'HC3')) del
paquete sandwich. Esto corrige los errores estándar sin
cambiar los coeficientes.log(preciom) tiende a estabilizar la varianza en datos de
precios.El modelo asume que los errores no están correlacionados entre sí: \(Cov(\varepsilon_i, \varepsilon_j) = 0\) para \(i \neq j\). En datos transversales (como este dataset inmobiliario) la autocorrelación es menos frecuente que en series de tiempo, pero puede ocurrir si los datos tienen un orden espacial o temporal implícito. Se evalúa con la prueba de Durbin-Watson.
| Prueba | Estadístico DW | p-valor | Decisión | |
|---|---|---|---|---|
| DW | Durbin-Watson | 1.5041 | 1.27e-39 | Se detecta autocorrelación (p < 0.05) |
Interpretación: El estadístico de Durbin-Watson es DW = 1.5041. Los valores de referencia son:
| DW | Interpretación |
|---|---|
| ≈ 2 | Sin autocorrelación |
| < 1.5 | Posible autocorrelación positiva |
| > 2.5 | Posible autocorrelación negativa |
La prueba indica autocorrelación significativa en los residuales.
Sugerencias:
nlme::gls) que permita especificar la
estructura de correlación de los errores.| Supuesto | Método de evaluación | Resultado |
|---|---|---|
| Linealidad | Residuales vs. Ajustados + LOESS | Ver gráfico — evaluar curvatura LOESS |
| Normalidad | Q-Q Plot + Shapiro-Wilk | No se cumple (Shapiro-Wilk p < 0.05) |
| Homocedasticidad | Scale-Location + Breusch-Pagan | No se cumple (Breusch-Pagan p < 0.05) |
| Independencia | Durbin-Watson | No se cumple (Durbin-Watson p < 0.05) |
Conclusión general: Se detectaron 3 violación(es) a los supuestos del modelo. Aunque el modelo sigue siendo útil para obtener estimaciones puntuales, las siguientes acciones podrían mejorar la validez de la inferencia:
preciom:
aborda simultáneamente problemas de normalidad y
heterocedasticidad.Estas mejoras se podrían implementar en una iteración posterior del modelo.
Con el modelo estimado en la Sección 5, se procede a predecir el precio de la vivienda solicitada por el segundo cliente. Las características de la Solicitud 2 son:
| Variable | Valor solicitado |
|---|---|
| Tipo | Apartamento |
| Área construida | 300 m² |
| Estrato | 5 o 6 |
| Habitaciones | 5 |
| Parqueaderos | 3 |
| Baños | 3 |
| Zona | Sur |
| Crédito preaprobado | $850 millones |
Dado que el cliente acepta estrato 5 o 6, se calculan ambas predicciones con sus respectivos intervalos de confianza (95%) e intervalos de predicción (95%).
| Escenario | Precio estimado | IC 95% inf | IC 95% sup | IP 95% inf | IP 95% sup | Crédito | Diferencia |
|---|---|---|---|---|---|---|---|
| Estrato 5 | 679.5 | 659.36 | 699.63 | 491.79 | 867.20 | 850 | 170.5 |
| Estrato 6 | 736.5 | 716.23 | 756.78 | 548.78 | 924.22 | 850 | 113.5 |
El modelo estima que un apartamento en la Zona Sur con 300 m², 5 habitaciones, 3 parqueaderos y 3 baños tendría un precio de:
El crédito preaprobado del cliente es de $850 millones.
Estrato 5: El precio estimado ($679.5M) es inferior al crédito disponible, con un margen de $170.5 millones. Sin embargo, el límite superior del intervalo de predicción ($867.2M) excede el crédito, por lo que existe un riesgo de que el precio real supere el presupuesto. Se recomienda buscar propiedades por debajo del precio estimado para mayor seguridad.
Estrato 6: El precio estimado ($736.5M) es inferior al crédito disponible, con un margen de $113.5 millones. No obstante, el intervalo de predicción alcanza hasta $924.2M, lo que supera el crédito. Se sugiere negociar con cautela y priorizar propiedades en el rango inferior de precios del estrato 6.
Ambos estratos presentan precios estimados dentro del crédito preaprobado. Se recomienda explorar ambas opciones y comparar disponibilidad y calidad de las propiedades.
A partir del modelo estimado, se identifican propiedades reales del dataset que se ajusten a las características de la Solicitud 2 y cuyo precio se encuentre dentro del crédito preaprobado de $850 millones. Se aplican los siguientes criterios de búsqueda:
base2)base2)Adicionalmente, se calcula el precio predicho por el modelo para cada propiedad y se seleccionan las 5 ofertas cuyas características sean más cercanas a lo solicitado.
| Oferta | Barrio | Estrato | Área (m²) | Habit. | Baños | Parq. | Piso | Precio real (\(M) | Precio modelo (\)M) | Margen vs crédito ($M) | |
|---|---|---|---|---|---|---|---|---|---|---|
| Oferta 1 | capri | 5 | 270.00 | 4 | 3 | 3 | 05 | 350 | 658.4 | 500 |
| Oferta 2 | San Fernando | 5 | 258.00 | 5 | 4 | 2 | 04 | 350 | 618.4 | 500 |
| Oferta 3 | el ingenio | 6 | 250.00 | 5 | 4 | 2 | 05 | 700 | 663.7 | 150 |
| Oferta 4 | cuarto de legua | 5 | 295.55 | 4 | 4 | 2 | 02 | 410 | 696.0 | 440 |
| Oferta 5 | cuarto de legua | 5 | 320.00 | 4 | 4 | 2 | 06 | 520 | 731.7 | 330 |
Se identificaron 5 ofertas que cumplen con los criterios de la Solicitud 2 dentro del crédito preaprobado.
Oferta 1 — Barrio capri (Estrato 5)
Oferta 2 — Barrio San Fernando (Estrato 5)
Oferta 3 — Barrio el ingenio (Estrato 6)
Oferta 4 — Barrio cuarto de legua (Estrato 5)
Oferta 5 — Barrio cuarto de legua (Estrato 5)
Se sugiere presentar estas cinco opciones al cliente para discusión, destacando:
Se recomienda agendar visitas a las propiedades y validar las condiciones físicas antes de tomar una decisión final.