Enunciado

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

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) .

Pasos requeridos para la obtención de los resultados

  1. Realice un filtro a la base de datos e incluya solo las ofertas de : base1: 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?).

  2. 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.

  3. 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).

  4. 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).

  5. Con el modelo identificado debe predecir el precio de la vivienda con las características de la primera solicitud.

  6. 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.

  7. Realice los pasos del 1 al 6. Para la segunda solicitud que tiene un crédito pre-aprobado por valor de $850 millones.

Desarrollo

1. Importar la base de datos

#install.packages("devtools") # solo la primera vez
devtools::install_github("dgonxalex80/paqueteMODELOS", force =TRUE)
## digest (0.6.34 -> 0.6.35) [CRAN]
## curl   (5.2.0  -> 5.2.1 ) [CRAN]
## xfun   (0.41   -> 0.42  ) [CRAN]
## magick (2.8.2  -> 2.8.3 ) [CRAN]
## package 'digest' successfully unpacked and MD5 sums checked
## package 'curl' successfully unpacked and MD5 sums checked
## package 'xfun' successfully unpacked and MD5 sums checked
## package 'magick' successfully unpacked and MD5 sums checked
## 
## The downloaded binary packages are in
##  C:\Users\USER\AppData\Local\Temp\RtmpADffnG\downloaded_packages
## ── R CMD build ─────────────────────────────────────────────────────────────────
##   
  
  
   checking for file 'C:\Users\USER\AppData\Local\Temp\RtmpADffnG\remotes1bc5c65b96020\dgonxalex80-paqueteMODELOS-796f588/DESCRIPTION' ...
  
✔  checking for file 'C:\Users\USER\AppData\Local\Temp\RtmpADffnG\remotes1bc5c65b96020\dgonxalex80-paqueteMODELOS-796f588/DESCRIPTION' (368ms)
## 
  
  
  
─  preparing 'paqueteMODELOS': (3.1s)
##    checking DESCRIPTION meta-information ...
  
✔  checking DESCRIPTION meta-information
## 
  
  
  
─  checking for LF line-endings in source and make files and shell scripts
## 
  
─  checking for empty or unneeded directories
## 
  
─  building 'paqueteMODELOS_0.1.0.tar.gz'
## 
  
   
## 
library(paqueteMODELOS)
data("vivienda")

head(vivienda)
## # A tibble: 6 × 13
##      id zona    piso  estrato preciom areaconst parqueaderos banios habitaciones
##   <dbl> <chr>   <chr>   <dbl>   <dbl>     <dbl>        <dbl>  <dbl>        <dbl>
## 1  1147 Zona O… <NA>        3     250        70            1      3            6
## 2  1169 Zona O… <NA>        3     320       120            1      2            3
## 3  1350 Zona O… <NA>        3     350       220            2      2            4
## 4  5992 Zona S… 02          4     400       280            3      5            3
## 5  1212 Zona N… 01          5     260        90            1      2            3
## 6  1724 Zona N… 01          5     240        87            1      3            3
## # ℹ 4 more variables: tipo <chr>, barrio <chr>, longitud <dbl>, latitud <dbl>
base_datos= vivienda

La base de datos contiene un total de 8322 entidades, cada una representando una vivienda de la ciudad de Cali. Estas viviendas están descritas por 13 variables que indican las características propias. A continuación se explica cada una de estas variables:

variable Descripción
zona Ubicación de la vivienda
piso Piso que ocupa la vivienda
estrato Estrato socio-económico : 3,4,5,6
preciom Precio de la vivienda en millones de pesos
areaconst Área construida
parqueaderos Número de parqueaderos
banios Número de baños
habitaciones Número de habitaciones
tipo Tipo de vivienda : Casa, Apartamento
barrio Barrio de ubicación de la vivienda
longitud Coordenada geográfica
latitud Coordenada geográfica

La actividad se centra en las siguientes características específicas de las viviendas: tipo, área construida, número de parqueaderos, cantidad de baños, cantidad de habitaciones, estrato, zona y precio. Por esta razón, se ha tomado la decisión de reducir la base de datos a estas variables con el objetivo de simplificar el análisis y centrarse en aspectos necesarios para el trabajo en cuestión. No obstante, es fundamental reconocer que esta reducción de variables puede conllevar la pérdida de información relevante y potencialmente generar sesgos o limitaciones en la modelización adecuada de las dinámicas del mercado inmobiliario en Cali. Es esencial tener en cuenta estas consideraciones al interpretar los resultados y al realizar análisis posteriores.

library(dplyr)
vivienda <- vivienda %>% select(id,tipo, areaconst,parqueaderos,banios,habitaciones, estrato, zona, preciom, longitud, latitud)

2. Revisión y limpieza de la base de datos

Verificamos si la base de datos tiene valores faltantes

#install.packages("mice")
library(mice)
grafico<- md.pattern(vivienda, rotate.names = TRUE, )

De acuerdo con la grafica se obsserva:

  • 6717 entidades se encuentran completos

  • 1602 entidades tienen faltante unicamente en la variable parqueadero, por tal motivo, se interpreta como que estas viviendas no cuentan con parqueaderos. A continuacion se imputara el valor de 0 en estos elementos.

  • 1 entidad cuenta unicamente con la variable precio, lo cual no es logico, ni aporta informacion relevante para los modelos, por lo que se decide eliminar la entidad.

  • 2 entidades no cuentan registros en ninguna de las variables, por lo que se decide eliminar ambas entidades.

# Imputar el valor de 0 en elementos vacíos de la columna de parqueaderos
vivienda$parqueaderos[is.na(vivienda$parqueaderos)] <- 0

# Eliminar entidades cuando el ID está vacío
vivienda <- vivienda[!is.na(vivienda$id), ]

Comprobamos nuevamente el estado de la base de datos. Observando que esta quedo con 8319 entidades con 13 variables sin faltantes.

clases <- sapply(vivienda, class)
cant.item <- nrow(vivienda)
faltantes <-  colSums(is.na(vivienda))
tablaresumen <- data.frame(Clase= clases, Cant.elementos = cant.item, Faltantes = faltantes)

print(tablaresumen)
##                  Clase Cant.elementos Faltantes
## id             numeric           8319         0
## tipo         character           8319         0
## areaconst      numeric           8319         0
## parqueaderos   numeric           8319         0
## banios         numeric           8319         0
## habitaciones   numeric           8319         0
## estrato        numeric           8319         0
## zona         character           8319         0
## preciom        numeric           8319         0
## longitud       numeric           8319         0
## latitud        numeric           8319         0

Se realizó una revisión de datos duplicados, no encontrando ninguno.

datosduplicados<- vivienda[duplicated(vivienda),]
print(datosduplicados)
## # A tibble: 0 × 11
## # ℹ 11 variables: id <dbl>, tipo <chr>, areaconst <dbl>, parqueaderos <dbl>,
## #   banios <dbl>, habitaciones <dbl>, estrato <dbl>, zona <chr>, preciom <dbl>,
## #   longitud <dbl>, latitud <dbl>

Continuando con el analisis de la base de datos, se identifica la necesidad de verificar la uniformidad de los parametros, observando uniformidad entre ellos

       zona <- table (vivienda$zona)
       print(names(zona))
## [1] "Zona Centro"  "Zona Norte"   "Zona Oeste"   "Zona Oriente" "Zona Sur"
       tipo <- table (vivienda$tipo)
       print(names(tipo))
## [1] "Apartamento" "Casa"

Se verificará la independencia de cada variable y se examinará la ausencia de alta correlación entre ellas. Este proceso es crucial para asegurar que las variables sean adecuadas para su uso en análisis posteriores, ya que la presencia de correlaciones fuertes entre variables puede introducir sesgos en los modelos predictivos o inferenciales.

library(GGally)

# Crear la gráfica con los ajustes deseados
ggpairs(vivienda, 
        upper = list(textsize = 5),  # Reducir el tamaño de la letra
        axisLabels = "rotate") +     # Rotar las etiquetas del eje x
  theme_grey(base_size = 10) +      # Ajustar el tamaño de la trama global
  theme(panel.spacing = unit(0.1, "lines"))  # Ajustar el espacio entre los paneles

No se presentan correlaciones muy altas (mayor al 85%), esto sugiere que las variables son relativamente independientes entre sí, cada variable puede proporcionar información única y valiosa sobre las características de las viviendas sin estar demasiado influenciada por otras variables.

A continucion un resumen estadistico de la data final

summary(vivienda)
##        id           tipo             areaconst       parqueaderos   
##  Min.   :   1   Length:8319        Min.   :  30.0   Min.   : 0.000  
##  1st Qu.:2080   Class :character   1st Qu.:  80.0   1st Qu.: 1.000  
##  Median :4160   Mode  :character   Median : 123.0   Median : 1.000  
##  Mean   :4160                      Mean   : 174.9   Mean   : 1.482  
##  3rd Qu.:6240                      3rd Qu.: 229.0   3rd Qu.: 2.000  
##  Max.   :8319                      Max.   :1745.0   Max.   :10.000  
##      banios        habitaciones       estrato          zona          
##  Min.   : 0.000   Min.   : 0.000   Min.   :3.000   Length:8319       
##  1st Qu.: 2.000   1st Qu.: 3.000   1st Qu.:4.000   Class :character  
##  Median : 3.000   Median : 3.000   Median :5.000   Mode  :character  
##  Mean   : 3.111   Mean   : 3.605   Mean   :4.634                     
##  3rd Qu.: 4.000   3rd Qu.: 4.000   3rd Qu.:5.000                     
##  Max.   :10.000   Max.   :10.000   Max.   :6.000                     
##     preciom          longitud         latitud     
##  Min.   :  58.0   Min.   :-76.59   Min.   :3.333  
##  1st Qu.: 220.0   1st Qu.:-76.54   1st Qu.:3.381  
##  Median : 330.0   Median :-76.53   Median :3.416  
##  Mean   : 433.9   Mean   :-76.53   Mean   :3.418  
##  3rd Qu.: 540.0   3rd Qu.:-76.52   3rd Qu.:3.452  
##  Max.   :1999.0   Max.   :-76.46   Max.   :3.498

Vivienda 1

Paso 1

Realizó un filtro a la base de datos que incluya solo las ofertas de: casas en la zona norte de la ciudad de Cali. Ademas se presentan los primeros 3 registros de las base de datos, las caracteristicas individuales y un mapa con los puntos de las bases.

vivienda1 <- vivienda %>%  filter(tipo == "Casa", zona == "Zona Norte") 

data( vivienda1)
head(vivienda1, 3)
## # A tibble: 3 × 11
##      id tipo  areaconst parqueaderos banios habitaciones estrato zona    preciom
##   <dbl> <chr>     <dbl>        <dbl>  <dbl>        <dbl>   <dbl> <chr>     <dbl>
## 1  1209 Casa        150            2      4            6       5 Zona N…     320
## 2  1592 Casa        380            2      3            3       5 Zona N…     780
## 3  4057 Casa        445            0      7            6       6 Zona N…     750
## # ℹ 2 more variables: longitud <dbl>, latitud <dbl>
library(cowplot)
library(ggplot2)
library(ggpubr)

# Definir tema común para todas las gráficas
mi_tema <- theme_minimal() +
  theme(
    axis.text.x = element_text(angle = 45, hjust = 1)  # Rotar etiquetas del eje x
  )

# Lista para almacenar las gráficas
plots <- list()

# Crear gráficas de barras para cada característica, excluyendo "id", "latitud", "longitud", "preciom" y "areaconst"
for (columna in names(vivienda1)) {
  if (columna %in% c("id", "latitud", "longitud", "preciom", "areaconst")) {
    next  # Salta a la siguiente iteración si es una de las columnas que deseas excluir
  }
  plots[[columna]] <- ggplot(vivienda1, aes_string(x = columna)) +
    geom_bar(fill = "gray", color = "black") +  # Cambia el color de las barras según sea necesario
    labs(title = columna) +
    mi_tema  # Aplica el tema común
}

# Agregar histogramas para las variables "preciom" y "areaconst"
plots[["preciom_hist"]] <- ggplot(vivienda1, aes(x = preciom)) +
  geom_histogram(binwidth = 50, fill = "gray", color = "black") +
  labs(title = "Histograma de Precios", x = "Precio", y = "Frecuencia") +
  mi_tema  # Aplica el tema común

plots[["areaconst_hist"]] <- ggplot(vivienda1, aes(x = areaconst)) +
  geom_histogram(binwidth = 50, fill = "gray", color = "black") +
  labs(title = "Histograma de Área Construida", x = "Área Construida", y = "Frecuencia") +
  mi_tema  # Aplica el tema común

# Mostrar los histogramas junto con las gráficas de barras
ggarrange(plotlist = plots, ncol = 2)
## $`1`

## 
## $`2`

## 
## $`3`

## 
## $`4`

## 
## attr(,"class")
## [1] "list"      "ggarrange"
library(leaflet)

# Coordenadas del centro de Cali
lat_cali <- 3.4516
long_cali <- -76.5320

# Crear el mapa
map <- leaflet(vivienda1) %>%
  addTiles() %>%
  addMarkers(
    lng = ~longitud,
    lat = ~latitud,
    popup = ~paste("ID:", id,
                   "<br>Zona:", enc2utf8(zona),
                   "<br>Tipo:", enc2utf8(tipo),
                   "<br>Estrato:", estrato,
                   "<br>Habitaciones:", habitaciones,
                   "<br>Baños:", banios,
                   "<br>Parqueadero:", parqueaderos,
                   "<br>Área construida:", areaconst),
    clusterOptions = markerClusterOptions()
  ) %>%
  setView(lng = long_cali, lat = lat_cali, zoom = 12)

map

De las consultas anteriores se observa:

  • La base de datos “vivienda1” muestra exclusivamente propiedades que cumplen con dos criterios específicos: estar ubicadas en la zona norte y ser casas. Sin embargo, en cuanto a otras características, como el tamaño, el número de habitaciones o el precio, se observa una amplia variedad entre las distintas propiedades registradas.

  • La base de datos “vivienda1” contiene 722 Inmuebles que cumplen con los dos criterios específicos: estar ubicadas en la zona norte y ser casas.

  • A partir del análisis del mapa, se evidencia que los inmuebles de la base de datos “vivienda1” están distribuidos en diferentes áreas de la ciudad de Cali y no están exclusivamente concentrados en la zona norte, a pesar de lo indicado en las etiquetas de la búsqueda. Esta discrepancia entre la ubicación real de los inmuebles y la información proporcionada refleja una posible inconsistencia en la recopilación o clasificación de datos.

Paso 2

Realizó 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, número de parqueaderos,numero de habitaciones y zona donde se ubica la vivienda.

# Cargar paquetes
library(dplyr)
library(plotly)

# Crear gráfico interactivo para la correlación entre precio y área construida
plot_area_precio <- plot_ly(data = vivienda, x = ~areaconst, y = ~preciom, color = ~zona,
                            type = "scatter", mode = "markers", marker = list(size = 10),
                            text = ~paste("Zona:", zona, "<br>Precio:", preciom, "<br>Área Construida:", areaconst)) %>%
                    layout(title = "Correlación entre Precio y Área Construida",
                           xaxis = list(title = "Área Construida"),
                           yaxis = list(title = "Precio"))

# Crear gráfico interactivo para la correlación entre precio y estrato
plot_estrato_precio <- plot_ly(data = vivienda, x = ~estrato, y = ~preciom, color = ~zona,
                               type = "scatter", mode = "markers", marker = list(size = 10),
                               text = ~paste("Zona:", zona, "<br>Precio:", preciom, "<br>Estrato:", estrato)) %>%
                       layout(title = "Correlación entre Precio y Estrato",
                              xaxis = list(title = "Estrato"),
                              yaxis = list(title = "Precio"))

# Crear gráfico interactivo para la correlación entre precio y número de baños
plot_baños_precio <- plot_ly(data = vivienda, x = ~banios, y = ~preciom, color = ~zona,
                             type = "scatter", mode = "markers", marker = list(size = 10),
                             text = ~paste("Zona:", zona, "<br>Precio:", preciom, "<br>Número de Baños:", banios)) %>%
                     layout(title = "Correlación entre Precio y Número de Baños",
                            xaxis = list(title = "Número de Baños"),
                            yaxis = list(title = "Precio"))

# Crear gráfico interactivo para la correlación entre precio y número de habitaciones
plot_habitaciones_precio <- plot_ly(data = vivienda, x = ~habitaciones, y = ~preciom, color = ~zona,
                                    type = "scatter", mode = "markers", marker = list(size = 10),
                                    text = ~paste("Zona:", zona, "<br>Precio:", preciom, "<br>Número de Habitaciones:", habitaciones)) %>%
                            layout(title = "Correlación entre Precio y Número de Habitaciones",
                                   xaxis = list(title = "Número de Habitaciones"),
                                   yaxis = list(title = "Precio"))

# Crear gráfico interactivo para la correlación entre precio y número de parqueaderos
plot_parqueaderos_precio <- plot_ly(data = vivienda, x = ~parqueaderos, y = ~preciom, color = ~zona,
                            type = "scatter", mode = "markers", marker = list(size = 10),
                            text = ~paste("Zona:", zona, "<br>Precio:", preciom, "<br>Parqueaderos:", areaconst)) %>%
                    layout(title = "Correlación entre Precio y Parqueaderos",
                           xaxis = list(title = "Número de parqueaderos"),
                           yaxis = list(title = "Precio"))

plot_area_precio
plot_estrato_precio
plot_baños_precio
plot_habitaciones_precio
plot_parqueaderos_precio

De las graficas anteriores se pueden concluir:

Precio vs. Área Construida: En general, en todas las zonas analizadas, existe una correlación positiva significativa entre el precio y el área construida. Esto sugiere que, independientemente de la zona, las viviendas más grandes tienden a tener precios más altos.

  • La zona oeste muestra la pendiente más pronunciada, lo que indica que un aumento en el área construida tiene un mayor impacto en el precio en esta zona en comparación con otras.

  • La zona oriente muestra la menor pendiente, lo que sugiere que el aumento en el área construida tiene el menor impacto en el precio en esta zona en comparación con otras áreas de la ciudad

  • Las zonas centro y oriente muestran un rango de precios más bajo en comparación con otras zonas y exhiben pendientes menos pronunciadas en la relación entre el precio y el área construida. Esto indica que, en estas zonas, las viviendas con el mismo tamaño tienden a tener precios menores en comparación con otras áreas de la ciudad.

Precio vs. Estrato: Se observó una correlación positiva entre el precio y el estrato en todas las zonas. Esto indica que, independientemente de la ubicación, las viviendas en estratos más altos tienden a tener precios más altos.

  • En las zonas centro y oriente, predominan las viviendas de estrato 3, con precios relativamente bajos en comparación con otras zonas

  • Las zonas norte, oeste y oriente presentan una distribución más uniforme entre los estratos 3, 4, 5 y 6, con precios que tienden a tener un mismo precio base y un tope correspondiente al estrato más alto.

Precio vs. Número de Baños: En todas las zonas analizadas, se encuentra una correlación positiva entre el precio de la vivienda y el número de baños. Esto sugiere que las viviendas con más baños tienden a tener precios más altos, lo cual es consistente independientemente de la ubicación geográfica.

En todas las zonas, se observa una variedad de oferta en términos de número de baños, que va desde 0 hasta 8 principalmente. Esto indica que los compradores tienen opciones para elegir viviendas con diferentes configuraciones de baños, lo que puede adaptarse a sus necesidades específicas.A pesar de esta variedad en la oferta de baños, se observa que tanto en la zona centro como en la oriente, los precios tienden a ser más bajos en comparación con otras zonas.

Precio vs. Número de Parqueaderos: Se observa una correlación positiva entre el precio de la vivienda y el número de parqueaderos en todas las zonas. Esto indica que las viviendas con más parqueaderos tienden a tener precios más altos, lo cual es consistente en todas las ubicaciones analizadas.

  • En la zona centro, la mayoría de las viviendas tienen un parqueadero, lo que contribuye a precios más bajos en comparación con otras zonas.

  • En las zonas oeste y norte, las viviendas tienen entre 1 y 4 parqueaderos, y se observa que a mayor número de parqueaderos, tanto el precio base como el tope son mayores.

  • En la zona oriente, la mayoría de las viviendas tienen entre 1 y 3 parqueaderos, apesar de esto los precios se mantienen bajos como en la zona centro.

  • En la zona sur, las viviendas tienen entre 1 y 6 parqueaderos, y aunque a mayor número de parqueaderos el precio base es mayor, el precio tope se mantiene estable.

Precio vs. Número de Habitaciones: La relación entre el precio de la vivienda y el número de habitaciones varía en función de la zona. Mientras que en algunas zonas puede existir una correlación positiva significativa, en otras puede ser más débil. Esto sugiere que el número de habitaciones puede influir en el precio de la vivienda de manera diferente según la ubicación geográfica y el contexto específico de cada zona.

  • En la zona centro y oriente, se encuentran viviendas principalmente con 2 a 9 habitaciones, donde la base y el tope de los precios incrementan de acuerdo con la dinámica de “entre más habitaciones, mayor precio”, y los precios tienden a ser más bajos que en otras zonas.

  • En la zona norte y oeste, hay un predominio de inmuebles con habitaciones entre 2 a 5 habitaciones. La base de los precios sigue la dinámica de “entre más habitaciones, mayor precio”, pero los topes tienden a tener su máximo en las habitaciones de 5 y luego a descender.

  • En la zona sur, se encuentran viviendas principalmente con 2 a 8 habitaciones. La base de los precios sigue la dinámica de “entre más habitaciones, mayor precio”, pero los topes de los precios se mantienen a pesar del aumento de las habitaciones.

Todas estas observaciónes sugieren que factores como la ubicación, la infraestructura cercana y la demanda del mercado pueden influir significativamente en la determinación de los precios de las viviendas en diferentes áreas de la ciudad.

Basandonos en consideraciones del caso, se extrajo la matriz de correlacion para las casas de la zona norte.

library(corrplot)

# Calcular la matriz de correlación
correlation_matrix <- cor(vivienda1[c("preciom", "areaconst", "estrato", "banios", "habitaciones", "parqueaderos")])

# Crear la matriz de correlación con colores y números
corrplot(correlation_matrix, method = "color", addCoef.col = "black",number.cex = 0.7)

correlation_matrix
##                preciom areaconst   estrato    banios habitaciones parqueaderos
## preciom      1.0000000 0.7313480 0.6123503 0.5233357    0.3227096    0.3171472
## areaconst    0.7313480 1.0000000 0.4573818 0.4628152    0.3753323    0.3171473
## estrato      0.6123503 0.4573818 1.0000000 0.4083039    0.1073141    0.3495772
## banios       0.5233357 0.4628152 0.4083039 1.0000000    0.5755314    0.3267374
## habitaciones 0.3227096 0.3753323 0.1073141 0.5755314    1.0000000    0.2689443
## parqueaderos 0.3171472 0.3171473 0.3495772 0.3267374    0.2689443    1.0000000

Consentrandonos en la linea del precio, se evidencia que para las casas de la zona Norte de Cali:

  • Existe una correlación positiva significativa de 0.73 entre el precio de la casa y el área construida. Esto indica que a medida que aumenta el área construida, tiende a aumentar el precio de la vivienda.

  • Hay una correlación positiva de 0.61 entre el precio y el estrato socioeconómico de la vivienda. Esto sugiere que las viviendas en estratos más altos tienden a tener precios más altos.

  • Existe una correlación moderada positiva de 0.52 entre el número de baños y el precio de la casa. Esto indica que las viviendas con más baños tienden a tener precios más altos.

  • Hay una correlación positiva de 0.32 entre el número de habitaciones y el precio de la vivienda. Esto sugiere que las viviendas con más habitaciones tienden a tener precios más altos, aunque la correlación es más débil en comparación con otras características.

  • También se observa una correlación positiva, pero más débil, de 0.32 entre el número de parqueaderos y el precio de la vivienda. Esto indica que las viviendas con más parqueaderos pueden tener precios ligeramente más altos, pero la relación es menos significativa que otras características.

Paso 3

Realizó una estimacion de 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 ) )

Se decidió no normalizar los datos considerando la necesidad de interpretar los coeficientes para determinar su significancia estadística y coherencia contextual. La normalización podría introducir una complejidad adicional en la interpretación de los coeficientes del modelo, dificultando la comprensión de los resultados. Además, si el objetivo principal es una interpretación intuitiva de los coeficientes y no una comparación directa de la magnitud de los efectos entre diferentes variables, la normalización puede no ser necesaria.

Aunque la normalización es una práctica recomendada al realizar un modelo estadistico, en este caso específico, se prefirió mantener las variables en su escala original para facilitar la interpretación de los resultados. Es importante tener en cuenta que al trabajar con variables en diferentes escalas, existe el riesgo de que ciertas variables tengan un efecto desproporcionado en el modelo, lo que podría sesgar las estimaciones de los coeficientes.

Antes de proceder con la estimación del modelo de regresión lineal, es fundamental realizar una división adecuada de los datos disponibles. En este sentido, se lleva a cabo una separación aleatoria de la muestra en un conjunto de datos de entrenamiento y otro de prueba. Esta división permite evaluar la capacidad predictiva del modelo en datos no observados previamente, lo que es esencial para comprender su desempeño en situaciones reales.

Posteriormente, se procede a estimar el modelo utilizando el conjunto de entrenamiento y se evalúa su desempeño mediante diversas métricas de evaluación. Los detalles sobre la estimación del modelo, así como los resultados de su evaluación, se presentan en los anexos adjuntos para su referencia.”

set.seed(123)  # Establecer semilla para reproducibilidad

indices_entrenamiento <- sample(1:nrow(vivienda1), 0.7 * nrow(vivienda1))  # 70% de los datos para entrenamiento
datos_entrenamiento <- vivienda1[indices_entrenamiento, ]
datos_prueba <- vivienda1[-indices_entrenamiento, ]

# Estimar el modelo con los datos de entrenamiento
modelo1 <- lm(preciom ~ areaconst + estrato + habitaciones + parqueaderos + banios, data = datos_entrenamiento)


# Resumen del modelo
summary(modelo1)
## 
## Call:
## lm(formula = preciom ~ areaconst + estrato + habitaciones + parqueaderos + 
##     banios, data = datos_entrenamiento)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -674.01  -80.69  -15.62   52.50  914.60 
## 
## Coefficients:
##                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  -243.60885   33.54114  -7.263 1.46e-12 ***
## areaconst       0.81694    0.05117  15.967  < 2e-16 ***
## estrato        89.39931    8.19779  10.905  < 2e-16 ***
## habitaciones    1.67536    4.63979   0.361   0.7182    
## parqueaderos   -8.10306    4.81803  -1.682   0.0932 .  
## banios         28.74178    5.83754   4.924 1.16e-06 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 149 on 499 degrees of freedom
## Multiple R-squared:  0.6712, Adjusted R-squared:  0.6679 
## F-statistic: 203.7 on 5 and 499 DF,  p-value: < 2.2e-16

El modelo de regresión lineal múltiple estimado para las casas de la zona norte de la ciudad de cali es:

preciom= −243.61 + 0.82 × areaconst + 89.40 × estrato + 1.67 × habitaciones − 8.10 × parqueaderos + 28.74× banios

El modelo de regresión lineal múltiple muestra que las variables “areaconst”, “estrato” y “banios” tienen coeficientes estadísticamente significativos (p < 0.05), mientras que las variables “habitaciones” y “parqueaderos” no lo son.

Los coeficientes estimados se interpretan así:

  • El intercepto indica el valor estimado de la variable respuesta (precio) cuando todas las variables predictoras son cero. Sin embargo, dado que todas las variables predictoras son variables contínuas y no tienen sentido cuando son cero, la interpretación del intercepto en este contexto puede no tener relevancia práctica directa.

  • El coeficiente para “areaconst” es de 0.81694, lo que indica que, manteniendo constantes las otras variables, por cada unidad adicional en el área construida, el precio de la vivienda aumenta en promedio $0.82. Este resultado es lógico y coherente, ya que es de esperar que viviendas más grandes tiendan a tener precios más altos.

  • Para “estrato”, el coeficiente es de 89.39931, lo que sugiere que, manteniendo constantes las otras variables, por cada unidad adicional en el estrato, el precio de la vivienda aumenta en promedio $89.40. Este resultado también es coherente, ya que es común que viviendas ubicadas en estratos más altos tengan precios más elevados.

  • El coeficiente para “banios” es de 28.74178, indicando que, manteniendo constantes las otras variables, por cada baño adicional, el precio de la vivienda aumenta en promedio $28.74. Esto es razonable, ya que los baños adicionales suelen agregar valor a una propiedad.

  • las variables “habitaciones” y “parqueaderos” no son estadísticamente significativas, lo que indica que no contribuyen de manera significativa a la predicción del precio de la vivienda en este modelo.

  • El coeficiente de determinación (R²) del modelo es de 0.6712, lo que significa que alrededor del 67.12% de la variabilidad en el precio de la vivienda puede ser explicada por las variables incluidas en el modelo. Este valor es relativamente alto y sugiere que el modelo tiene un buen ajuste en general.

Estas relaciones son consistentes con la matriz de correlación expuesta en el paso 2. Sin embargo, Para mejorar el modelo y potencialmente aumentar su capacidad predictiva, podríamos considerar las siguientes acciones:

  1. Incluir variables adicionales: El modelo actual puede estar omitiendo variables importantes que influyen en el precio de la vivienda, como la ubicación exacta, la calidad de la construcción, la edad de la propiedad, las comodidades adicionales (piscina, gimnasio, terraza, etc.), y la proximidad a servicios y transporte.

  2. Considerar transformaciones de variables: Podríamos explorar la posibilidad de transformar algunas variables para capturar relaciones no lineales con el precio de la vivienda. Por ejemplo, podríamos considerar el uso de logaritmos o polinomios de las variables predictoras para modelar relaciones no lineales.

  3. La normalización puede ayudar a evitar problemas de sesgo debido a la disparidad en las escalas y puede mejorar la estabilidad numérica del modelo.

Paso 4

Realizó la validación de supuestos del modelo asi:

  • Normalidad de los residuos mediante el histograma de residuos, el gráfico de probabilidad normal y la prueba de Shapiro-Wilk.

  • Homocedasticidad mediante el gráfico de dispersión de residuos frente a valores ajustados y la prueba de Breusch-Pagan.

  • Linealidad mediante el gráfico de dispersión de los residuos.

  • Independencia de los residuos mediante el gráfico de autocorrelación de los residuos y la prueba de Durbin-Watson.

  • Influencia de observaciones y valores atípicos mediante el estadístico Cook’s D, el gráfico de distancia de Cook.

  • Multicolinealidad mediate el factor de inflación de la varianza (VIF).

# Histograma de residuos
hist(resid(modelo1))

# Gráfico de probabilidad normal
qqnorm(resid(modelo1))
qqline(resid(modelo1))

# Prueba de Shapiro-Wilk
shapiro.test(resid(modelo1))
## 
##  Shapiro-Wilk normality test
## 
## data:  resid(modelo1)
## W = 0.87908, p-value < 2.2e-16
  • El histograma de residuo busca una distribución aproximadamente simétrica y centrada en cero, sin embargo no es totalmente simétrica, la asimetría observada sugiere que la distribución de los residuos podría ser sesgada o no seguir exactamente una distribución normal.

  • Al compara la distribución de los residuos del modelo con una distribución teórica normal. La idea es que si los residuos se distribuyen normalmente, los puntos en el gráfico QQ deberían seguir una línea diagonal de 45 grados. En el gráfico se observa que los puntos tienden a ajustarse a la línea sin embargo no se ajustan totalmente, lo cual sugiere que los residuos no siguen exactamente una distribución normal.

  • El resultado del test de normalidad de Shapiro-Wilk muestra un estadístico de prueba (W) de 0.87908 y un valor p muy pequeño, prácticamente cero (p-value < 2.2e-16). Esto indica que hay evidencia significativa para rechazar la hipótesis nula de normalidad de los residuos. En otras palabras, los residuos del modelo no siguen una distribución normal.

# Gráfico de dispersión de residuos vs. valores ajustados
plot(modelo1, which = 1)

#prueba de Breusch-Pagan.
library(lmtest)
bptest(modelo1)
## 
##  studentized Breusch-Pagan test
## 
## data:  modelo1
## BP = 95.562, df = 5, p-value < 2.2e-16
  • En el gráfico de dispersión de residuos vs. valores ajustados se observa una dispersión creciente a medida que aumentan los valores ajustados, eso sugiere que la varianza de los errores aumenta con los valores ajustados, enmarcando una forma de abanico o embudo

  • El resultado del test de heterocedasticidad de Breusch-Pagan muestra que el valor p es prácticamente cero (p < 2.2e-16), se rechaza la hipótesis nula de homocedasticidad. Esto sugiere que hay evidencia significativa de heterocedasticidad en el modelo de regresión. Es decir, la varianza de los errores no es constante a lo largo de los diferentes niveles de las variables independientes.

# Gráfico de dispersión de residuos vs. cada variable independiente
plot(modelo1, which = c(3, 5, 6))

El objetivo de estos gráficos es verificar si los residuos tienen patrones sistemáticos. Se observa que una cantidad considerable de puntos se desvían de la línea horizontal, esto podría indicar una falta de linealidad en el modelo.

# Gráfico de autocorrelación de los residuos
acf(resid(modelo1))

# Prueba de Durbin-Watson
dwtest(modelo1)
## 
##  Durbin-Watson test
## 
## data:  modelo1
## DW = 2.004, p-value = 0.5173
## alternative hypothesis: true autocorrelation is greater than 0
  • El gráfico muestra que algunas de las barras sobrepasan ligeramente las bandas de confianza, lo que sugiere que la autocorrelación en los residuos en esos intervalos de tiempo es mínima. Sin embargo, la mayoría de las barras no están cerca de las bandas, lo que indica que la autocorrelación en esos puntos específicos es insignificante. Esto sugiere que el modelo captura en gran medida la estructura temporal de los datos, pero puede haber algunas áreas donde la autocorrelación no se elimina por completo.

  • El resultado del test de Durbin-Watson indica que el estadístico de Durbin-Watson (DW) de aproximadamente 2.004, con un valor p de 0.5173. Dado que el valor p es mayor que cualquier nivel de significancia razonable, no hay suficiente evidencia para rechazar la hipótesis nula de no autocorrelación. Esto sugiere que no hay autocorrelación positiva en los residuos del modelo, lo que respalda el supuesto de independencia de los residuos en el modelo de regresión.

# Estadístico Cook's D
plot(modelo1, which = 4)

# Gráfico de distancia de Cook
cooks.distance(modelo1)
##            1            2            3            4            5            6 
## 2.279932e-04 1.012841e-04 5.784154e-03 1.145558e-03 7.713443e-04 2.377288e-02 
##            7            8            9           10           11           12 
## 3.796949e-04 1.685710e-03 7.243558e-05 2.733613e-04 7.198468e-07 7.543724e-05 
##           13           14           15           16           17           18 
## 2.034048e-05 1.862405e-04 1.434035e-06 2.464105e-06 3.103266e-05 1.384681e-03 
##           19           20           21           22           23           24 
## 5.925146e-06 5.722571e-04 3.301744e-05 1.118588e-04 4.710540e-02 5.830435e-07 
##           25           26           27           28           29           30 
## 8.907878e-06 4.432527e-05 4.423224e-04 2.900464e-04 4.612854e-03 2.073566e-03 
##           31           32           33           34           35           36 
## 8.993409e-07 7.552642e-04 1.072216e-05 2.304606e-05 1.498900e-02 1.404737e-08 
##           37           38           39           40           41           42 
## 2.024910e-03 1.916393e-04 4.999929e-04 1.935761e-06 3.217982e-04 3.570698e-04 
##           43           44           45           46           47           48 
## 2.474841e-06 4.408068e-04 4.672456e-05 1.427807e-04 2.889079e-02 1.847277e-03 
##           49           50           51           52           53           54 
## 5.848405e-04 8.993409e-07 9.757044e-05 4.592583e-05 2.755285e-03 7.790876e-04 
##           55           56           57           58           59           60 
## 3.130448e-03 2.415388e-02 1.079763e-04 2.628885e-04 7.095811e-04 3.572094e-05 
##           61           62           63           64           65           66 
## 3.517222e-04 4.529822e-04 3.983950e-03 3.485105e-03 1.244529e-01 1.887929e-04 
##           67           68           69           70           71           72 
## 2.430864e-05 8.985846e-05 1.001558e-04 1.298285e-03 4.989723e-04 1.458190e-04 
##           73           74           75           76           77           78 
## 5.638067e-04 1.720290e-06 7.583502e-04 9.385575e-04 3.703340e-04 2.207517e-03 
##           79           80           81           82           83           84 
## 9.141463e-05 6.891495e-02 6.192403e-06 3.113344e-07 6.088262e-04 3.060304e-04 
##           85           86           87           88           89           90 
## 2.066286e-05 9.088719e-03 1.712509e-03 1.956082e-04 3.354443e-05 3.672439e-02 
##           91           92           93           94           95           96 
## 3.904400e-04 2.535732e-04 2.530691e-04 4.707095e-04 3.123720e-03 8.916885e-09 
##           97           98           99          100          101          102 
## 2.131764e-06 1.800931e-05 5.027329e-05 1.168849e-04 7.125511e-06 9.714418e-04 
##          103          104          105          106          107          108 
## 2.074832e-01 2.563853e-03 3.507050e-04 4.308849e-05 9.544539e-03 3.317760e-04 
##          109          110          111          112          113          114 
## 7.736181e-03 9.662640e-06 2.957897e-04 2.208249e-04 7.194267e-05 3.404175e-04 
##          115          116          117          118          119          120 
## 3.633248e-05 3.113344e-07 1.017018e-04 3.634250e-04 1.447464e-04 1.949443e-05 
##          121          122          123          124          125          126 
## 1.696895e-04 7.970823e-05 8.711325e-05 1.171019e-04 2.320808e-04 1.690421e-04 
##          127          128          129          130          131          132 
## 4.868605e-04 1.795635e-02 7.278249e-03 1.431265e-08 3.633370e-03 2.442154e-04 
##          133          134          135          136          137          138 
## 1.312157e-04 3.320651e-03 2.710681e-03 1.391677e-04 1.030333e-03 1.724369e-03 
##          139          140          141          142          143          144 
## 1.978224e-04 5.205058e-06 1.090050e-03 3.374905e-03 1.260910e-04 9.558607e-06 
##          145          146          147          148          149          150 
## 4.237139e-05 1.953286e-04 5.866921e-03 2.836755e-04 3.385017e-01 2.034616e-05 
##          151          152          153          154          155          156 
## 7.580046e-04 5.712925e-04 2.797042e-04 1.019844e-03 1.600543e-02 4.999382e-05 
##          157          158          159          160          161          162 
## 4.113902e-04 1.146106e-03 1.343563e-05 1.556397e-03 4.602410e-04 1.107212e-04 
##          163          164          165          166          167          168 
## 2.694240e-05 5.344939e-04 3.608894e-06 8.126263e-05 7.143976e-04 4.261448e-05 
##          169          170          171          172          173          174 
## 6.981582e-04 1.451562e-04 2.600223e-03 5.620959e-03 1.473907e-05 1.496869e-03 
##          175          176          177          178          179          180 
## 2.022087e-04 2.451816e-03 1.179903e-05 4.218707e-02 7.696727e-04 2.003780e-04 
##          181          182          183          184          185          186 
## 2.316837e-05 1.802976e-07 1.703383e-03 5.961919e-03 5.900026e-04 7.107304e-04 
##          187          188          189          190          191          192 
## 1.358687e-02 3.058408e-05 9.008762e-06 2.423401e-05 3.869670e-05 1.066820e-03 
##          193          194          195          196          197          198 
## 8.117456e-04 6.989195e-03 1.595977e-02 2.319544e-03 1.803750e-05 4.640190e-04 
##          199          200          201          202          203          204 
## 5.196769e-04 9.028111e-05 3.136840e-04 1.159426e-02 3.484159e-05 1.669267e-04 
##          205          206          207          208          209          210 
## 4.700444e-04 8.354721e-03 1.470377e-04 1.771138e-05 1.715124e-05 1.197155e-04 
##          211          212          213          214          215          216 
## 1.068481e-02 2.506360e-08 6.585763e-06 3.810722e-05 1.032712e-04 1.551497e-04 
##          217          218          219          220          221          222 
## 1.223145e-03 1.078013e-03 6.497034e-04 8.236215e-05 1.352230e-05 2.204199e-04 
##          223          224          225          226          227          228 
## 1.994232e-04 6.609715e-08 7.574447e-06 5.188078e-05 1.224970e-03 1.896814e-06 
##          229          230          231          232          233          234 
## 1.825811e-04 7.211820e-05 1.533223e-05 8.685753e-05 7.332833e-04 2.846670e-04 
##          235          236          237          238          239          240 
## 6.974714e-04 5.582192e-04 4.886263e-03 1.006333e-03 5.510382e-04 4.362309e-06 
##          241          242          243          244          245          246 
## 1.921057e-03 6.025544e-04 1.078620e-02 1.902979e-04 2.736094e-04 1.281439e-05 
##          247          248          249          250          251          252 
## 5.906002e-04 3.105034e-04 4.452326e-04 1.420444e-03 1.175951e-05 3.436877e-03 
##          253          254          255          256          257          258 
## 9.200223e-05 8.123739e-05 1.381795e-04 2.230711e-05 3.727512e-03 5.778650e-04 
##          259          260          261          262          263          264 
## 7.922762e-04 1.561863e-02 4.091582e-02 3.815938e-05 7.874021e-06 1.727680e-04 
##          265          266          267          268          269          270 
## 4.423306e-09 4.745960e-05 7.160607e-04 5.613552e-06 7.458235e-03 2.467707e-03 
##          271          272          273          274          275          276 
## 1.710633e-03 6.244764e-04 2.195786e-04 5.785472e-05 7.082449e-04 3.734180e-05 
##          277          278          279          280          281          282 
## 1.451562e-04 1.178639e-04 2.313169e-04 2.936427e-04 2.455879e-04 3.725956e-05 
##          283          284          285          286          287          288 
## 1.153720e-05 2.963701e-04 5.181402e-04 2.050560e-04 2.941013e-03 2.865622e-06 
##          289          290          291          292          293          294 
## 2.844792e-05 6.813256e-06 2.439626e-03 4.456500e-04 1.777624e-07 6.392366e-03 
##          295          296          297          298          299          300 
## 1.409738e-03 8.116195e-04 3.698192e-06 1.048358e-04 1.251731e-03 4.257580e-03 
##          301          302          303          304          305          306 
## 5.977860e-05 1.359368e-10 8.144768e-05 4.424718e-03 6.327865e-04 1.160897e-06 
##          307          308          309          310          311          312 
## 5.354492e-04 2.397414e-04 8.105903e-04 1.327995e-04 2.935247e-08 6.827778e-03 
##          313          314          315          316          317          318 
## 9.143478e-05 7.366735e-04 6.422588e-08 7.190829e-04 1.848617e-03 2.021037e-02 
##          319          320          321          322          323          324 
## 8.036428e-04 6.874880e-04 1.338340e-04 1.891454e-04 1.319873e-04 3.829533e-04 
##          325          326          327          328          329          330 
## 5.653382e-04 3.623984e-04 5.439743e-05 1.496329e-03 1.197006e-04 2.595230e-03 
##          331          332          333          334          335          336 
## 7.835936e-06 4.822109e-04 5.565860e-04 2.928825e-02 5.403317e-04 9.911137e-03 
##          337          338          339          340          341          342 
## 2.551502e-03 1.494734e-06 3.437742e-04 2.763168e-03 1.053272e-04 1.333253e-04 
##          343          344          345          346          347          348 
## 1.167790e-03 3.708928e-04 4.684165e-04 6.533194e-02 4.880744e-04 8.564516e-04 
##          349          350          351          352          353          354 
## 1.489925e-04 7.481893e-05 1.840880e-06 4.027767e-04 1.500582e-07 1.069392e-03 
##          355          356          357          358          359          360 
## 6.374140e-03 1.275256e-02 1.034736e-04 2.555233e-04 1.419131e-02 7.341477e-04 
##          361          362          363          364          365          366 
## 4.045374e-04 6.162554e-05 2.311208e-08 9.662640e-06 2.048865e-05 3.396473e-06 
##          367          368          369          370          371          372 
## 2.964318e-06 6.059515e-05 1.907358e-04 2.258625e-02 4.063649e-05 8.400243e-04 
##          373          374          375          376          377          378 
## 1.652324e-04 6.611200e-04 2.532352e-04 3.203636e-04 5.620362e-05 1.388869e-04 
##          379          380          381          382          383          384 
## 3.369955e-03 7.694166e-05 8.235909e-05 1.089790e-03 1.989051e-04 6.744140e-04 
##          385          386          387          388          389          390 
## 5.935880e-04 3.139743e-03 3.172565e-06 2.363909e-03 6.178385e-04 4.160457e-03 
##          391          392          393          394          395          396 
## 2.822273e-04 1.181645e-04 1.479144e-04 1.421947e-03 3.406442e-05 7.491176e-06 
##          397          398          399          400          401          402 
## 3.766733e-04 1.353634e-04 5.845912e-05 1.864277e-04 9.609706e-05 2.434745e-05 
##          403          404          405          406          407          408 
## 7.027579e-04 3.745535e-04 8.653236e-04 6.150014e-04 2.841102e-04 2.147675e-04 
##          409          410          411          412          413          414 
## 2.309187e-01 1.163495e-03 6.319593e-05 2.662019e-03 6.636017e-04 5.963645e-05 
##          415          416          417          418          419          420 
## 5.986853e-04 8.930133e-05 4.775065e-04 2.598377e-04 1.050269e-04 1.277301e-05 
##          421          422          423          424          425          426 
## 4.034267e-04 1.627889e-03 2.232610e-04 6.224198e-04 4.425129e-04 5.111375e-07 
##          427          428          429          430          431          432 
## 8.584791e-06 3.019792e-07 2.274482e-03 2.914801e-06 2.470846e-05 2.167731e-03 
##          433          434          435          436          437          438 
## 7.374358e-04 3.873362e-04 1.017214e-03 5.891364e-04 3.976010e-02 1.059425e-03 
##          439          440          441          442          443          444 
## 5.223037e-06 9.940492e-05 3.728366e-05 2.032051e-05 2.360465e-03 2.960875e-05 
##          445          446          447          448          449          450 
## 7.627823e-03 2.821010e-02 1.599694e-03 2.151330e-04 5.957753e-04 2.333162e-04 
##          451          452          453          454          455          456 
## 7.825450e-05 3.288767e-03 1.285366e-02 1.068481e-02 1.213721e-04 9.834600e-04 
##          457          458          459          460          461          462 
## 1.206258e-03 1.162446e-03 3.980883e-05 6.708531e-04 9.662640e-06 5.255364e-06 
##          463          464          465          466          467          468 
## 2.135871e-03 1.798012e-06 7.471956e-04 1.834768e-05 2.039576e-03 1.060725e-05 
##          469          470          471          472          473          474 
## 2.609109e-03 3.335347e-03 1.180547e-04 5.091373e-06 3.541945e-06 7.018522e-05 
##          475          476          477          478          479          480 
## 1.685711e-06 1.569286e-04 2.222266e-06 2.264258e-04 2.729355e-04 2.521170e-03 
##          481          482          483          484          485          486 
## 1.016154e-04 6.416877e-06 4.349290e-04 4.420360e-04 3.447505e-04 1.901929e-03 
##          487          488          489          490          491          492 
## 9.666440e-07 3.630026e-04 5.215049e-04 1.054298e-05 3.356455e-03 2.059657e-01 
##          493          494          495          496          497          498 
## 5.339174e-06 5.392519e-05 7.821227e-04 1.931771e-03 9.152429e-04 4.979159e-04 
##          499          500          501          502          503          504 
## 1.259585e-05 2.171599e-04 2.487904e-04 2.572431e-04 1.673613e-02 8.751148e-05 
##          505 
## 1.053780e-04

De los resultados se observa que varias muestras tienen una influencia mayor en la estimación de los coeficientes de la regresión, las lineas que sobresalen como las 103,149 y 409. Esto puede deberse a varios factores, como valores atípicos en esas observaciones o características particulares que hacen que tengan un peso considerable en la relación entre las variables predictoras y la variable de respuesta.

# Calcular el factor de inflación de la varianza (VIF)
library(car)
vif1<-vif(modelo1)
print (vif1)
##    areaconst      estrato habitaciones parqueaderos       banios 
##     1.521749     1.480024     1.652040     1.215842     1.888384

Los valores de VIF son todos menores a 10, lo que sugiere que la multicolinealidad entre las variables independientes no es un problema importante en este modelo.

las evaluaciones visuales y estadísticas de los residuos indican claramente que no cumplen con los supuestos clave del modelo de regresión lineal. Las violaciones de la normalidad, heterocedasticidad y falta de linealidad pueden afectar la validez de las inferencias realizadas a partir del modelo y la precisión de las predicciones.Todas estas limitaciones combinadas sugieren que el modelo de regresión lineal desarrollado no es apropiado para explicar completamente la variabilidad en los precios de las casas en la zona norte de Cali, basado en las variables predictoras seleccionadas. En consecuencia, utilizar este modelo en su forma actual para tomar decisiones críticas o realizar predicciones precisas puede resultar en estimaciones inexactas y sesgadas. Si se requiere un modelo más confiable, podría ser necesario explorar diferentes enfoques o técnicas de modelado que aborden estas limitaciones, como la transformación de variables, el uso de modelos no lineales o la consideración de métodos robustos que sean menos sensibles a las violaciones de los supuestos.

Paso 5

Con el modelo identificado, se predijo el precio de la vivienda utilizando las características de la primera solicitud.

solicitud1 <- data.frame(estrato = c(4, 5), areaconst = 200, habitaciones = 4, banios = 2, parqueaderos = 1)

# Predecir precio según características vivienda 1
predict(modelo1, newdata = solicitud1)
##        1        2 
## 333.4589 422.8582

De acuerdo con el modelo correspondiente para las casas en la zona norte de la ciudad de Cali, que cuenten con 4 habitaciones, 2 baños, 1 parqueadero y un área construida de 200 metros cuadrados en un estrato 4, su precio sería de 333,458,900 de pesos colombianos. En cuanto al inmueble con las mismas características pero en un estrato 5, su precio sería de 422,858,200 de pesos colombianos.

Paso 6

Se empleó la base de datos de vivienda 1 para identificar inmuebles que cumplan con los criterios de la solicitud 1. Posteriormente, se utilizó el modelo1 previamente desarrollado para evaluar la oferta de casa en la zona Norte de la ciudad de Cali de la siguiente manera:

  • “Oferta”: aquellos inmuebles cuyo valor ofrecido es menor al predicho por el modelo.
  • “Neutro”: aquellos cuyo valor ofrecido es igual al predicho por el modelo.
  • “Costosa”: aquellos cuyo valor ofrecido es mayor al predicho por el modelo.
predvivi1 <-predict(modelo1, newdata = vivienda1)

vivienda1$precio_predicho <- predvivi1

vivienda1$Valoracion <- ifelse(vivienda1$preciom < vivienda1$precio_predicho, "oferta", 
                              ifelse(vivienda1$preciom == vivienda1$precio_predicho, "neutral", "costosa"))

vivienda1
## # A tibble: 722 × 13
##       id tipo  areaconst parqueaderos banios habitaciones estrato zona   preciom
##    <dbl> <chr>     <dbl>        <dbl>  <dbl>        <dbl>   <dbl> <chr>    <dbl>
##  1  1209 Casa        150            2      4            6       5 Zona …     320
##  2  1592 Casa        380            2      3            3       5 Zona …     780
##  3  4057 Casa        445            0      7            6       6 Zona …     750
##  4  4460 Casa        355            3      5            5       4 Zona …     625
##  5  6081 Casa        237            2      6            6       5 Zona …     750
##  6  7824 Casa        160            1      4            5       4 Zona …     600
##  7  7987 Casa        200            4      4            5       5 Zona …     420
##  8  3495 Casa        118            2      4            4       5 Zona …     490
##  9   141 Casa        160            0      2            3       3 Zona …     230
## 10   243 Casa        435            0      0            0       3 Zona …     190
## # ℹ 712 more rows
## # ℹ 4 more variables: longitud <dbl>, latitud <dbl>, precio_predicho <dbl>,
## #   Valoracion <chr>
oferta1 <- subset(vivienda1, 
                  estrato %in% solicitud1$estrato &
                  areaconst >= solicitud1$areaconst &
                  habitaciones >= solicitud1$habitaciones &
                  banios >= solicitud1$banios &
                  parqueaderos >= solicitud1$parqueaderos &
                  preciom <= 350 &
                  Valoracion=="oferta" )
oferta1
## # A tibble: 34 × 13
##       id tipo  areaconst parqueaderos banios habitaciones estrato zona   preciom
##    <dbl> <chr>     <dbl>        <dbl>  <dbl>        <dbl>   <dbl> <chr>    <dbl>
##  1  4210 Casa        200            3      3            4       5 Zona …     350
##  2  4267 Casa        202            1      4            5       5 Zona …     335
##  3  4800 Casa        250            2      4            4       5 Zona …     340
##  4  4209 Casa        300            3      5            6       5 Zona …     350
##  5  4422 Casa        240            2      3            6       5 Zona …     350
##  6  4458 Casa        270            2      4            4       4 Zona …     315
##  7  4483 Casa        250            1      4            6       5 Zona …     342
##  8  1009 Casa        243            1      4            5       5 Zona …     250
##  9  1270 Casa        203            2      2            5       5 Zona …     350
## 10  3352 Casa        300            3      4            4       4 Zona …     335
## # ℹ 24 more rows
## # ℹ 4 more variables: longitud <dbl>, latitud <dbl>, precio_predicho <dbl>,
## #   Valoracion <chr>
library(leaflet)

# Coordenadas del centro de Cali
lat_cali <- 3.4516
long_cali <- -76.5320

# Crear el mapa
mapsol1 <- leaflet(oferta1) %>%
  addTiles() %>%
  addMarkers(
    lng = ~longitud,
    lat = ~latitud,
    popup = ~paste("ID:", id,
                   "<br>Zona:", enc2utf8(zona),
                   "<br>Tipo:", enc2utf8(tipo),
                   "<br>Estrato:", estrato,
                   "<br>Habitaciones:", habitaciones,
                   "<br>Baños:", banios,
                   "<br>Parqueadero:", parqueaderos,
                   "<br>Área construida:", areaconst,
                   "<br>Valoración:",Valoracion)
  ) %>%
  setView(lng = long_cali, lat = lat_cali, zoom = 12)

mapsol1

Se identificaron un total de 34 casas en la zona norte de Cali que cumplen con los requerimientos establecidos en la solicitud 1. Es importante destacar que todas estas viviendas están por debajo del costo previsto por el modelo desarrollado. Este hallazgo sugiere que existen múltiples opciones disponibles que se ajustan a los criterios de búsqueda y que además ofrecen un valor económico favorable en comparación con las estimaciones realizadas por el modelo.

Vivienda 2

Paso 1

Realizó un filtro a la base de datos que incluya solo las ofertas de: apartamentos en la zona sur de la ciudad de Cali. Ademas se presentan los primeros 3 registros de las base de datos, las caracteristicas individuales y un mapa con los puntos de las bases.

vivienda2 <- vivienda %>%  filter(tipo == "Apartamento", zona == "Zona Sur") 

data( vivienda2)
head(vivienda2, 3)
## # A tibble: 3 × 11
##      id tipo    areaconst parqueaderos banios habitaciones estrato zona  preciom
##   <dbl> <chr>       <dbl>        <dbl>  <dbl>        <dbl>   <dbl> <chr>   <dbl>
## 1  5098 Aparta…        96            1      2            3       4 Zona…     290
## 2   698 Aparta…        40            1      1            2       3 Zona…      78
## 3  8199 Aparta…       194            2      5            3       6 Zona…     875
## # ℹ 2 more variables: longitud <dbl>, latitud <dbl>
library(cowplot)
library(ggplot2)
library(ggpubr)

# Definir tema común para todas las gráficas
mi_tema <- theme_minimal() +
  theme(
    axis.text.x = element_text(angle = 45, hjust = 1)  # Rotar etiquetas del eje x
  )

# Lista para almacenar las gráficas
plots <- list()

# Crear gráficas de barras para cada característica, excluyendo "id", "latitud", "longitud", "preciom" y "areaconst"
for (columna in names(vivienda2)) {
  if (columna %in% c("id", "latitud", "longitud", "preciom", "areaconst")) {
    next  # Salta a la siguiente iteración si es una de las columnas que deseas excluir
  }
  plots[[columna]] <- ggplot(vivienda2, aes_string(x = columna)) +
    geom_bar(fill = "gray", color = "black") +  # Cambia el color de las barras según sea necesario
    labs(title = columna) +
    mi_tema  # Aplica el tema común
}

# Agregar histogramas para las variables "preciom" y "areaconst"
plots[["preciom_hist"]] <- ggplot(vivienda2, aes(x = preciom)) +
  geom_histogram(binwidth = 50, fill = "gray", color = "black") +
  labs(title = "Histograma de Precios", x = "Precio", y = "Frecuencia") +
  mi_tema  # Aplica el tema común

plots[["areaconst_hist"]] <- ggplot(vivienda2, aes(x = areaconst)) +
  geom_histogram(binwidth = 50, fill = "gray", color = "black") +
  labs(title = "Histograma de Área Construida", x = "Área Construida", y = "Frecuencia") +
  mi_tema  # Aplica el tema común

# Mostrar los histogramas junto con las gráficas de barras
ggarrange(plotlist = plots, ncol = 2)
## $`1`

## 
## $`2`

## 
## $`3`

## 
## $`4`

## 
## attr(,"class")
## [1] "list"      "ggarrange"
library(leaflet)

# Coordenadas del centro de Cali
lat_cali <- 3.4516
long_cali <- -76.5320

# Crear el mapa
map <- leaflet(vivienda2) %>%
  addTiles() %>%
  addMarkers(
    lng = ~longitud,
    lat = ~latitud,
    popup = ~paste("ID:", id,
                   "<br>Zona:", enc2utf8(zona),
                   "<br>Tipo:", enc2utf8(tipo),
                   "<br>Estrato:", estrato,
                   "<br>Habitaciones:", habitaciones,
                   "<br>Baños:", banios,
                   "<br>Parqueadero:", parqueaderos,
                   "<br>Área construida:", areaconst),
    clusterOptions = markerClusterOptions()
  ) %>%
  setView(lng = long_cali, lat = lat_cali, zoom = 12)

map

De las consultas anteriores se observa:

  • La base de datos “vivienda2” muestra exclusivamente propiedades que cumplen con dos criterios específicos: estar ubicadas en la zona sur y ser apartamentos. Sin embargo, en cuanto a otras características, como el tamaño, el número de habitaciones o el precio, se observa una amplia variedad entre las distintas propiedades registradas.

  • La base de datos “vivienda2” contiene 2787 Inmuebles que cumplen con los dos criterios específicos: estar ubicadas en la zona sur y ser apartamentos.

  • A partir del análisis del mapa, se evidencia que los inmuebles de la base de datos “vivienda2” están distribuidos en diferentes áreas de la ciudad de Cali y no están exclusivamente concentrados en la zona sur, a pesar de lo indicado en las etiquetas de la búsqueda. Esta discrepancia entre la ubicación real de los inmuebles y la información proporcionada refleja una posible inconsistencia en la recopilación o clasificación de datos.

Paso 2

Realizó 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, número de parqueaderos ,numero de habitaciones y zona donde se ubica la vivienda.

# Cargar paquetes
library(dplyr)
library(plotly)

# Crear gráfico interactivo para la correlación entre precio y área construida
plot_area_precio <- plot_ly(data = vivienda, x = ~areaconst, y = ~preciom, color = ~zona,
                            type = "scatter", mode = "markers", marker = list(size = 10),
                            text = ~paste("Zona:", zona, "<br>Precio:", preciom, "<br>Área Construida:", areaconst)) %>%
                    layout(title = "Correlación entre Precio y Área Construida",
                           xaxis = list(title = "Área Construida"),
                           yaxis = list(title = "Precio"))

# Crear gráfico interactivo para la correlación entre precio y estrato
plot_estrato_precio <- plot_ly(data = vivienda, x = ~estrato, y = ~preciom, color = ~zona,
                               type = "scatter", mode = "markers", marker = list(size = 10),
                               text = ~paste("Zona:", zona, "<br>Precio:", preciom, "<br>Estrato:", estrato)) %>%
                       layout(title = "Correlación entre Precio y Estrato",
                              xaxis = list(title = "Estrato"),
                              yaxis = list(title = "Precio"))

# Crear gráfico interactivo para la correlación entre precio y número de baños
plot_baños_precio <- plot_ly(data = vivienda, x = ~banios, y = ~preciom, color = ~zona,
                             type = "scatter", mode = "markers", marker = list(size = 10),
                             text = ~paste("Zona:", zona, "<br>Precio:", preciom, "<br>Número de Baños:", banios)) %>%
                     layout(title = "Correlación entre Precio y Número de Baños",
                            xaxis = list(title = "Número de Baños"),
                            yaxis = list(title = "Precio"))

# Crear gráfico interactivo para la correlación entre precio y número de habitaciones
plot_habitaciones_precio <- plot_ly(data = vivienda, x = ~habitaciones, y = ~preciom, color = ~zona,
                                    type = "scatter", mode = "markers", marker = list(size = 10),
                                    text = ~paste("Zona:", zona, "<br>Precio:", preciom, "<br>Número de Habitaciones:", habitaciones)) %>%
                            layout(title = "Correlación entre Precio y Número de Habitaciones",
                                   xaxis = list(title = "Número de Habitaciones"),
                                   yaxis = list(title = "Precio"))

# Crear gráfico interactivo para la correlación entre precio y número de parqueaderos
plot_parqueaderos_precio <- plot_ly(data = vivienda, x = ~parqueaderos, y = ~preciom, color = ~zona,
                            type = "scatter", mode = "markers", marker = list(size = 10),
                            text = ~paste("Zona:", zona, "<br>Precio:", preciom, "<br>Parqueaderos:", areaconst)) %>%
                    layout(title = "Correlación entre Precio y Parqueaderos",
                           xaxis = list(title = "Número de parqueaderos"),
                           yaxis = list(title = "Precio"))

plot_area_precio
plot_estrato_precio
plot_baños_precio
plot_habitaciones_precio
plot_parqueaderos_precio

De las graficas anteriores se pueden concluir:

Precio vs. Área Construida: En general, en todas las zonas analizadas, existe una correlación positiva significativa entre el precio y el área construida. Esto sugiere que, independientemente de la zona, las viviendas más grandes tienden a tener precios más altos.

  • La zona oeste muestra la pendiente más pronunciada, lo que indica que un aumento en el área construida tiene un mayor impacto en el precio en esta zona en comparación con otras.

  • La zona oriente muestra la menor pendiente, lo que sugiere que el aumento en el área construida tiene el menor impacto en el precio en esta zona en comparación con otras áreas de la ciudad

  • Las zonas centro y oriente muestran un rango de precios más bajo en comparación con otras zonas y exhiben pendientes menos pronunciadas en la relación entre el precio y el área construida. Esto indica que, en estas zonas, las viviendas con el mismo tamaño tienden a tener precios menores en comparación con otras áreas de la ciudad.

Precio vs. Estrato: Se observó una correlación positiva entre el precio y el estrato en todas las zonas. Esto indica que, independientemente de la ubicación, las viviendas en estratos más altos tienden a tener precios más altos.

  • En las zonas centro y oriente, predominan las viviendas de estrato 3, con precios relativamente bajos en comparación con otras zonas

  • Las zonas norte, oeste y oriente presentan una distribución más uniforme entre los estratos 3, 4, 5 y 6, con precios que tienden a tener un mismo precio base y un tope correspondiente al estrato más alto.

Precio vs. Número de Baños: En todas las zonas analizadas, se encuentra una correlación positiva entre el precio de la vivienda y el número de baños. Esto sugiere que las viviendas con más baños tienden a tener precios más altos, lo cual es consistente independientemente de la ubicación geográfica.

En todas las zonas, se observa una variedad de oferta en términos de número de baños, que va desde 0 hasta 8 principalmente. Esto indica que los compradores tienen opciones para elegir viviendas con diferentes configuraciones de baños, lo que puede adaptarse a sus necesidades específicas.A pesar de esta variedad en la oferta de baños, se observa que tanto en la zona centro como en la oriente, los precios tienden a ser más bajos en comparación con otras zonas.

Precio vs. Número de Parqueaderos: Se observa una correlación positiva entre el precio de la vivienda y el número de parqueaderos en todas las zonas. Esto indica que las viviendas con más parqueaderos tienden a tener precios más altos, lo cual es consistente en todas las ubicaciones analizadas.

  • En la zona centro, la mayoría de las viviendas tienen un parqueadero, lo que contribuye a precios más bajos en comparación con otras zonas.

  • En las zonas oeste y norte, las viviendas tienen entre 1 y 4 parqueaderos, y se observa que a mayor número de parqueaderos, tanto el precio base como el tope son mayores.

  • En la zona oriente, la mayoría de las viviendas tienen entre 1 y 3 parqueaderos, apesar de esto los precios se mantienen bajos como en la zona centro.

  • En la zona sur, las viviendas tienen entre 1 y 6 parqueaderos, y aunque a mayor número de parqueaderos el precio base es mayor, el precio tope se mantiene estable.

Precio vs. Número de Habitaciones: La relación entre el precio de la vivienda y el número de habitaciones varía en función de la zona. Mientras que en algunas zonas puede existir una correlación positiva significativa, en otras puede ser más débil. Esto sugiere que el número de habitaciones puede influir en el precio de la vivienda de manera diferente según la ubicación geográfica y el contexto específico de cada zona.

  • En la zona centro y oriente, se encuentran viviendas principalmente con 2 a 9 habitaciones, donde la base y el tope de los precios incrementan de acuerdo con la dinámica de “entre más habitaciones, mayor precio”, y los precios tienden a ser más bajos que en otras zonas.

  • En la zona norte y oeste, hay un predominio de inmuebles con habitaciones entre 2 a 5 habitaciones. La base de los precios sigue la dinámica de “entre más habitaciones, mayor precio”, pero los topes tienden a tener su máximo en las habitaciones de 5 y luego a descender.

  • En la zona sur, se encuentran viviendas principalmente con 2 a 8 habitaciones. La base de los precios sigue la dinámica de “entre más habitaciones, mayor precio”, pero los topes de los precios se mantienen a pesar del aumento de las habitaciones.

Todas estas observaciónes sugieren que factores como la ubicación, la infraestructura cercana y la demanda del mercado pueden influir significativamente en la determinación de los precios de las viviendas en diferentes áreas de la ciudad.

Basandonos en consideraciones del caso, se extrajo la matriz de correlacion para los apartamentos de la zona sur.

library(corrplot)

# Calcular la matriz de correlación
correlation_matrix <- cor(vivienda2[c("preciom", "areaconst", "estrato", "banios", "habitaciones", "parqueaderos")])

# Crear la matriz de correlación con colores y números
corrplot(correlation_matrix, method = "color", addCoef.col = "black",number.cex = 0.7)

correlation_matrix
##                preciom areaconst   estrato    banios habitaciones parqueaderos
## preciom      1.0000000 0.7579955 0.6727067 0.7196705    0.3317538    0.6747497
## areaconst    0.7579955 1.0000000 0.4815593 0.6618179    0.4339608    0.5586775
## estrato      0.6727067 0.4815593 1.0000000 0.5686171    0.2125953    0.5491353
## banios       0.7196705 0.6618179 0.5686171 1.0000000    0.5149227    0.5651455
## habitaciones 0.3317538 0.4339608 0.2125953 0.5149227    1.0000000    0.2863117
## parqueaderos 0.6747497 0.5586775 0.5491353 0.5651455    0.2863117    1.0000000

Consentrandonos en la linea del precio, se evidencia que para los apartamentos de la zona sur de Cali:

  • Existe una correlación positiva significativa de 0.76 entre el precio de la casa y el área construida. Esto indica que a medida que aumenta el área construida, tiende a aumentar el precio de la vivienda.

  • Hay una correlación positiva de 0.67 entre el precio y el estrato socioeconómico de la vivienda. Esto sugiere que las viviendas en estratos más altos tienden a tener precios más altos.

  • Existe una correlación moderada positiva de 0.72 entre el número de baños y el precio de la casa. Esto indica que las viviendas con más baños tienden a tener precios más altos.

  • Hay una correlación positiva de 0.33 entre el número de habitaciones y el precio de la vivienda. Esto sugiere que las viviendas con más habitaciones tienden a tener precios más altos, aunque la correlación es más débil en comparación con otras características.

  • También se observa una correlación positiva significativa de 0.67 entre el número de parqueaderos y el precio de la vivienda. Esto indica que las viviendas con más parqueaderos pueden tener precios más altos.

Paso 3

Realizó una estimacion de 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 ) )

Se decidió no normalizar los datos considerando la necesidad de interpretar los coeficientes para determinar su significancia estadística y coherencia contextual. La normalización podría introducir una complejidad adicional en la interpretación de los coeficientes del modelo, dificultando la comprensión de los resultados. Además, si el objetivo principal es una interpretación intuitiva de los coeficientes y no una comparación directa de la magnitud de los efectos entre diferentes variables, la normalización puede no ser necesaria.

Aunque la normalización es una práctica recomendada al realizar un modelo estadistico, en este caso específico, se prefirió mantener las variables en su escala original para facilitar la interpretación de los resultados. Es importante tener en cuenta que al trabajar con variables en diferentes escalas, existe el riesgo de que ciertas variables tengan un efecto desproporcionado en el modelo, lo que podría sesgar las estimaciones de los coeficientes.

Antes de proceder con la estimación del modelo de regresión lineal, es fundamental realizar una división adecuada de los datos disponibles. En este sentido, se lleva a cabo una separación aleatoria de la muestra en un conjunto de datos de entrenamiento y otro de prueba. Esta división permite evaluar la capacidad predictiva del modelo en datos no observados previamente, lo que es esencial para comprender su desempeño en situaciones reales.

Posteriormente, se procede a estimar el modelo utilizando el conjunto de entrenamiento y se evalúa su desempeño mediante diversas métricas de evaluación. Los detalles sobre la estimación del modelo, así como los resultados de su evaluación, se presentan en los anexos adjuntos para su referencia.”

set.seed(123)  # Establecer semilla para reproducibilidad

indices_entrenamiento2 <- sample(1:nrow(vivienda2), 0.7 * nrow(vivienda2))  # 70% de los datos para entrenamiento
datos_entrenamiento2 <- vivienda2[indices_entrenamiento2, ]
datos_prueba2 <- vivienda2[-indices_entrenamiento2, ]

# Estimar el modelo con los datos de entrenamiento
modelo2 <- lm(preciom ~ areaconst + estrato + habitaciones + parqueaderos + banios, data = datos_entrenamiento2)


# Resumen del modelo
summary(modelo2)
## 
## Call:
## lm(formula = preciom ~ areaconst + estrato + habitaciones + parqueaderos + 
##     banios, data = datos_entrenamiento2)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1321.05   -42.49    -1.98    36.04   923.25 
## 
## Coefficients:
##                Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  -224.21590   16.17144 -13.865  < 2e-16 ***
## areaconst       1.54318    0.06105  25.278  < 2e-16 ***
## estrato        58.12424    3.37891  17.202  < 2e-16 ***
## habitaciones  -22.79522    4.08949  -5.574 2.84e-08 ***
## parqueaderos   46.81913    3.56379  13.137  < 2e-16 ***
## banios         45.65646    3.66617  12.453  < 2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 96.71 on 1944 degrees of freedom
## Multiple R-squared:  0.7525, Adjusted R-squared:  0.7519 
## F-statistic:  1182 on 5 and 1944 DF,  p-value: < 2.2e-16

El modelo de regresión lineal múltiple estimado para los apartamentos de la zona sur de la ciudad de cali es:

preciom= −224.21 + 1.54 × areaconst + 58.12 × estrato - 22.79 × habitaciones + 46.81 × parqueaderos + 45.65 × banios

En el modelo de regresión lineal múltiple estimado, los coeficientes de las variables predictoras son estadísticamente significativos, como lo indican los valores de p asociados a cada coeficiente, todos los cuales son muy cercanos a cero y se interpretan así:

  • El intercepto indica el valor estimado de la variable respuesta (precio) cuando todas las variables predictoras son cero. Sin embargo, dado que todas las variables predictoras son variables contínuas y no tienen sentido cuando son cero, la interpretación del intercepto en este contexto puede no tener relevancia práctica directa.

  • El coeficiente para “areaconst” es de 1.54, lo que indica que, manteniendo constantes las otras variables, por cada unidad adicional en el área construida, el precio de la vivienda aumenta en promedio $1.54. Este resultado es lógico y coherente, ya que es de esperar que viviendas más grandes tiendan a tener precios más altos.

  • Para “estrato”, el coeficiente es de 58.12, lo que sugiere que, manteniendo constantes las otras variables, por cada unidad adicional en el estrato, el precio de la vivienda aumenta en promedio $58.12. Este resultado también es coherente, ya que es común que viviendas ubicadas en estratos más altos tengan precios más elevados.

  • Para “habitaciones” el coeficiente es de -22.79, lo que indica que, or cada unidad adicional en el número de habitaciones, el precio de la vivienda disminuye en promedio $22.79, manteniendo constantes todas las demás variables. Esto puede parecer un resultado contradictorio, ya que normalmente se esperaría que un mayor número de habitaciones aumentara el precio de la vivienda.

  • El coeficiente para “parqueaderos” es de 46.81, indicando que, manteniendo constantes las otras variables, por cada parqueadero adicional, el precio de la vivienda aumenta en promedio $46.81. Esto tiene sentido intuitivo, ya que tener más espacio de estacionamiento suele ser una característica deseable y, por lo tanto, puede aumentar el precio de la vivienda.

  • El coeficiente para “banios” es de 45.65, indicando que, manteniendo constantes las otras variables, por cada baño adicional, el precio de la vivienda aumenta en promedio $45.65. Esto es razonable, ya que los baños adicionales suelen agregar valor a una propiedad.

  • El coeficiente de determinación (R²) del modelo es de 0.7525, lo que significa que alrededor del 75,25% de la variabilidad en el precio de la vivienda puede ser explicada por las variables incluidas en el modelo. Este valor de R² indica un buen ajuste del modelo, lo que sugiere que las variables predictoras incluidas explican una cantidad considerable de la variabilidad en el precio de la vivienda.

Estas relaciones son consistentes con la matriz de correlación expuesta en el paso 2. Sin embargo, Para mejorar el modelo y potencialmente aumentar su capacidad predictiva, podríamos considerar las siguientes acciones:

  1. Incluir variables adicionales: El modelo actual puede estar omitiendo variables importantes que influyen en el precio de la vivienda, como la ubicación exacta, la calidad de la construcción, la edad de la propiedad, las comodidades adicionales (piscina, gimnasio, terraza, etc.), y la proximidad a servicios y transporte.

  2. Considerar transformaciones de variables: Podríamos explorar la posibilidad de transformar algunas variables para capturar relaciones no lineales con el precio de la vivienda. Por ejemplo, podríamos considerar el uso de logaritmos o polinomios de las variables predictoras para modelar relaciones no lineales.

  3. La normalización puede ayudar a evitar problemas de sesgo debido a la disparidad en las escalas y puede mejorar la estabilidad numérica del modelo.

Paso 4

Realizó la validación de supuestos del modelo asi:

  • Normalidad de los residuos mediante el histograma de residuos, el gráfico de probabilidad normal y la prueba de Shapiro-Wilk.

  • Homocedasticidad mediante el gráfico de dispersión de residuos frente a valores ajustados y la prueba de Breusch-Pagan.

  • Linealidad mediante el gráfico de dispersión de los residuos.

  • Independencia de los residuos mediante el gráfico de autocorrelación de los residuos y la prueba de Durbin-Watson.

  • Influencia de observaciones y valores atípicos mediante el estadístico Cook’s D, el gráfico de distancia de Cook.

  • Multicolinealidad mediate el factor de inflación de la varianza (VIF).

# Histograma de residuos
hist(resid(modelo2))

# Gráfico de probabilidad normal
qqnorm(resid(modelo2))
qqline(resid(modelo2))

# Prueba de Shapiro-Wilk
shapiro.test(resid(modelo2))
## 
##  Shapiro-Wilk normality test
## 
## data:  resid(modelo2)
## W = 0.76455, p-value < 2.2e-16
  • El histograma de residuo busca una distribución aproximadamente simétrica y centrada en cero, sin embargo no es totalmente simétrica, la asimetría observada sugiere que la distribución de los residuos podría ser sesgada o no seguir exactamente una distribución normal.

  • Al compara la distribución de los residuos del modelo con una distribución teórica normal. La idea es que si los residuos se distribuyen normalmente, los puntos en el gráfico QQ deberían seguir una línea diagonal de 45 grados. En el gráfico se observa que los puntos tienden a ajustarse a la línea sin embargo no se ajustan totalmente, lo cual sugiere que los residuos no siguen exactamente una distribución normal.

  • El resultado del test de normalidad de Shapiro-Wilk muestra un estadístico de prueba (W) de 0.76455 y un valor p muy pequeño, prácticamente cero (p-value < 2.2e-16). Esto indica que hay evidencia significativa para rechazar la hipótesis nula de normalidad de los residuos. En otras palabras, los residuos del modelo no siguen una distribución normal.

# Gráfico de dispersión de residuos vs. valores ajustados
plot(modelo2, which = 1)

#prueba de Breusch-Pagan.
library(lmtest)
bptest(modelo1)
## 
##  studentized Breusch-Pagan test
## 
## data:  modelo1
## BP = 95.562, df = 5, p-value < 2.2e-16
  • En el gráfico de dispersión de residuos vs. valores ajustados se observa una dispersión creciente a medida que aumentan los valores ajustados, eso sugiere que la varianza de los errores aumenta con los valores ajustados, enmarcando una forma de abanico o embudo

  • El resultado del test de heterocedasticidad de Breusch-Pagan muestra que el valor p es prácticamente cero (p < 2.2e-16), se rechaza la hipótesis nula de homocedasticidad. Esto sugiere que hay evidencia significativa de heterocedasticidad en el modelo de regresión. Es decir, la varianza de los errores no es constante a lo largo de los diferentes niveles de las variables independientes.

# Gráfico de dispersión de residuos vs. cada variable independiente
plot(modelo2, which = c(3, 5, 6))

El objetivo de estos gráficos es verificar si los residuos tienen patrones sistemáticos. Se observa que una cantidad considerable de puntos se desvían de la línea horizontal, esto podría indicar una falta de linealidad en el modelo.

# Gráfico de autocorrelación de los residuos
acf(resid(modelo2))

# Prueba de Durbin-Watson
dwtest(modelo2)
## 
##  Durbin-Watson test
## 
## data:  modelo2
## DW = 2.016, p-value = 0.638
## alternative hypothesis: true autocorrelation is greater than 0
  • El gráfico muestra que algunas de las barras sobrepasan ligeramente las bandas de confianza, lo que sugiere que la autocorrelación en los residuos en esos intervalos de tiempo es mínima. Sin embargo, la mayoría de las barras no están cerca de las bandas, lo que indica que la autocorrelación en esos puntos específicos es insignificante. Esto sugiere que el modelo captura en gran medida la estructura temporal de los datos, pero puede haber algunas áreas donde la autocorrelación no se elimina por completo.

  • Durbin-Watson (DW) de aproximadamente 2.016, con un valor p de 0.638. Dado que el valor p es mayor que cualquier nivel de significancia razonable, no hay suficiente evidencia para rechazar la hipótesis nula de no autocorrelación. Esto sugiere que no hay autocorrelación positiva significativa en los residuos del modelo 2, lo que respalda la suposición de independencia de los residuos en el modelo de regresión.

# Estadístico Cook's D
plot(modelo2, which = 4)

# Gráfico de distancia de Cook
cooks.distance(modelo2)
##            1            2            3            4            5            6 
## 5.942842e-05 2.899788e-05 1.279175e-05 8.711347e-05 3.430846e-05 2.953251e-04 
##            7            8            9           10           11           12 
## 2.824679e-08 4.229963e-05 1.915466e-05 2.474829e-05 1.768122e-05 1.902141e-06 
##           13           14           15           16           17           18 
## 7.167350e-04 2.647728e-04 6.148608e-05 2.096728e-07 2.273827e-03 3.121286e-04 
##           19           20           21           22           23           24 
## 8.617925e-05 4.630065e-06 7.282703e-05 2.055419e-06 5.969444e-05 3.911429e-04 
##           25           26           27           28           29           30 
## 2.515659e-07 6.316861e-04 8.475200e-05 1.973206e-04 5.707159e-05 1.223700e-03 
##           31           32           33           34           35           36 
## 2.798427e-04 6.442218e-05 2.391370e-05 7.216223e-05 1.201954e-08 5.261917e-04 
##           37           38           39           40           41           42 
## 9.868722e-05 2.661348e-05 3.709732e-04 7.631834e-05 9.068568e-05 1.384198e-05 
##           43           44           45           46           47           48 
## 1.120320e-04 3.436128e-04 7.374062e-06 2.824586e-07 4.663515e-04 1.137322e-04 
##           49           50           51           52           53           54 
## 8.062816e-08 4.898714e-06 6.736016e-05 7.731036e-06 4.677361e-05 1.920011e-04 
##           55           56           57           58           59           60 
## 3.807398e-05 9.885039e-06 2.422153e-06 7.674494e-05 1.253268e-05 1.016808e-05 
##           61           62           63           64           65           66 
## 1.255570e-04 4.476598e-05 3.746247e-06 3.000480e-06 1.367239e-05 9.190200e-06 
##           67           68           69           70           71           72 
## 1.111952e-05 1.866111e-03 4.623849e-03 2.646388e-04 9.947947e-08 1.228704e-05 
##           73           74           75           76           77           78 
## 1.871163e-04 2.460606e-05 4.280125e-07 4.534775e-01 9.519744e-04 2.514529e-04 
##           79           80           81           82           83           84 
## 3.769167e-06 2.211277e-05 1.016948e-05 2.278181e-04 2.726458e-04 3.963085e-05 
##           85           86           87           88           89           90 
## 1.297471e-04 1.218791e-04 9.376749e-02 1.933384e-03 1.384198e-05 8.833146e-05 
##           91           92           93           94           95           96 
## 7.561915e-04 1.437781e-04 3.062016e-05 2.444276e-04 1.646481e-04 2.030821e-05 
##           97           98           99          100          101          102 
## 3.750172e-06 3.621500e-05 1.691487e-04 6.383081e-08 1.016948e-05 2.242080e-05 
##          103          104          105          106          107          108 
## 7.921482e-05 2.983183e-05 3.635005e-05 2.413601e-08 2.723966e-04 1.887306e-05 
##          109          110          111          112          113          114 
## 2.632514e-04 3.339457e-06 2.644242e-05 2.191275e-03 7.280919e-06 5.284284e-08 
##          115          116          117          118          119          120 
## 2.719296e-05 1.413882e-04 1.846993e-05 3.081821e-04 8.359952e-06 8.491598e-04 
##          121          122          123          124          125          126 
## 2.517248e-04 1.743848e-04 2.213209e-05 5.156351e-04 4.823040e-06 2.379715e-05 
##          127          128          129          130          131          132 
## 4.695638e-05 1.933855e-03 4.988453e-04 3.773950e-04 1.458725e-06 2.206406e-04 
##          133          134          135          136          137          138 
## 2.880667e-03 1.357102e-06 1.258863e-04 2.306402e-05 3.445072e-08 9.412916e-04 
##          139          140          141          142          143          144 
## 4.709256e-05 5.796395e-05 3.746313e-05 5.611586e-03 5.206328e-05 6.532590e-05 
##          145          146          147          148          149          150 
## 1.710312e-04 5.726193e-05 5.790773e-06 3.610562e-04 2.997230e-04 5.425955e-06 
##          151          152          153          154          155          156 
## 8.209701e-05 2.404552e-04 6.490446e-06 1.348956e-06 9.048709e-07 6.806578e-05 
##          157          158          159          160          161          162 
## 6.366389e-04 1.829060e-05 4.427942e-05 5.920815e-05 5.671702e-05 8.323568e-05 
##          163          164          165          166          167          168 
## 6.768773e-07 3.101214e-05 3.960592e-06 5.580984e-06 1.376696e-05 1.234379e-04 
##          169          170          171          172          173          174 
## 2.048206e-04 2.599811e-06 8.459864e-05 1.176087e-05 3.318870e-04 1.502312e-04 
##          175          176          177          178          179          180 
## 8.608900e-04 2.205764e-05 6.554995e-05 7.661680e-06 3.445485e-04 3.535991e-05 
##          181          182          183          184          185          186 
## 2.356010e-05 2.447500e-05 6.458913e-06 3.142429e-05 8.365051e-06 5.419479e-05 
##          187          188          189          190          191          192 
## 2.004392e-04 1.153428e-06 1.417903e-04 8.194205e-04 7.228628e-06 2.293423e-03 
##          193          194          195          196          197          198 
## 3.198684e-06 8.743391e-07 1.504046e-05 2.500788e-06 3.196998e-07 5.357555e-07 
##          199          200          201          202          203          204 
## 3.816024e-05 4.675600e-05 1.693609e-04 1.605025e-05 4.109402e-03 2.946427e-05 
##          205          206          207          208          209          210 
## 8.054836e-05 8.773158e-05 1.714935e-04 1.261066e-05 7.078772e-05 5.080901e-05 
##          211          212          213          214          215          216 
## 1.000893e-04 4.121923e-05 9.886691e-06 5.325085e-05 1.386801e-04 1.505826e-04 
##          217          218          219          220          221          222 
## 2.703021e-04 8.366820e-05 1.002364e-04 4.493393e-05 2.410433e-06 4.681938e-05 
##          223          224          225          226          227          228 
## 7.912535e-03 4.320690e-06 1.762374e-04 2.204884e-06 6.039561e-04 1.170068e-05 
##          229          230          231          232          233          234 
## 4.505993e-06 3.042789e-04 4.216316e-06 2.752189e-04 4.539046e-05 2.227823e-06 
##          235          236          237          238          239          240 
## 8.135661e-05 2.837216e-05 3.300046e-07 2.450081e-05 4.988778e-05 7.620799e-05 
##          241          242          243          244          245          246 
## 4.267341e-07 1.151261e-03 1.549639e-05 3.752076e-07 1.629014e-04 1.702376e-05 
##          247          248          249          250          251          252 
## 1.713271e-04 1.077408e-05 4.062477e-05 4.879717e-05 2.205764e-05 7.834820e-05 
##          253          254          255          256          257          258 
## 3.730015e-04 1.619613e-05 6.544046e-05 7.302182e-04 1.973927e-05 5.401187e-05 
##          259          260          261          262          263          264 
## 2.438201e-07 3.953536e-04 3.296360e-05 1.762374e-04 1.204412e-05 1.136671e-04 
##          265          266          267          268          269          270 
## 4.930163e-04 2.091440e-02 3.387990e-05 1.198234e-04 1.814579e-04 1.693596e-03 
##          271          272          273          274          275          276 
## 1.930595e-04 5.732101e-06 1.621266e-04 1.261511e-10 2.089795e-07 2.477855e-04 
##          277          278          279          280          281          282 
## 5.333638e-04 5.830823e-07 2.190737e-04 1.613538e-03 5.000185e-04 3.816024e-05 
##          283          284          285          286          287          288 
## 1.527514e-06 1.115945e-04 3.282184e-05 1.252616e-04 5.822305e-05 7.516481e-06 
##          289          290          291          292          293          294 
## 1.767739e-06 3.996202e-05 4.441933e-04 2.843329e-04 6.279006e-05 6.533295e-05 
##          295          296          297          298          299          300 
## 7.433482e-05 2.238382e-05 2.346434e-06 1.367413e-05 4.197279e-05 1.015006e-04 
##          301          302          303          304          305          306 
## 3.923106e-06 4.439551e-05 3.880704e-06 4.675600e-05 3.263201e-08 2.351313e-05 
##          307          308          309          310          311          312 
## 3.613196e-06 9.306039e-07 7.379981e-04 2.343137e-03 2.570343e-05 7.367456e-05 
##          313          314          315          316          317          318 
## 7.551629e-06 6.866535e-04 2.084825e-04 8.148449e-04 8.464599e-04 2.775269e-04 
##          319          320          321          322          323          324 
## 5.251254e-05 5.251254e-05 7.767321e-06 1.445359e-05 7.200881e-05 1.189089e-04 
##          325          326          327          328          329          330 
## 9.740976e-05 1.090670e-03 4.985271e-06 1.476143e-05 8.064293e-06 2.438201e-07 
##          331          332          333          334          335          336 
## 1.231208e-04 7.633363e-07 5.003180e-05 6.913928e-08 1.758153e-04 8.238903e-03 
##          337          338          339          340          341          342 
## 1.830052e-04 4.064066e-05 6.964343e-05 8.414604e-09 3.788421e-05 3.441439e-04 
##          343          344          345          346          347          348 
## 2.983183e-05 1.878241e-04 2.523522e-05 4.518782e-04 1.284143e-06 7.332701e-06 
##          349          350          351          352          353          354 
## 1.808461e-04 3.598775e-04 1.493089e-06 5.728437e-04 9.119647e-06 1.602780e-04 
##          355          356          357          358          359          360 
## 1.050777e-06 7.930041e-05 1.657664e-02 1.375022e-04 4.135733e-05 1.378742e-05 
##          361          362          363          364          365          366 
## 4.004820e-04 1.694426e-04 3.494688e-03 1.089614e-04 7.820613e-06 1.125183e-07 
##          367          368          369          370          371          372 
## 9.190200e-06 3.036896e-03 1.554383e-03 1.963201e-05 6.531366e-06 7.344100e-05 
##          373          374          375          376          377          378 
## 4.982879e-07 6.324700e-05 1.754236e-04 4.921769e-05 1.009690e-04 1.107217e-04 
##          379          380          381          382          383          384 
## 2.412716e-06 2.855462e-04 3.902848e-05 4.321345e-04 6.804484e-08 3.136456e-05 
##          385          386          387          388          389          390 
## 7.695002e-05 2.595712e-05 2.559070e-04 2.485563e-07 2.636461e-06 1.451863e-06 
##          391          392          393          394          395          396 
## 1.267834e-04 1.183946e-06 1.838588e-04 2.190244e-05 6.162716e-05 9.847493e-05 
##          397          398          399          400          401          402 
## 3.932350e-05 1.055787e-06 1.915006e-06 3.279711e-03 1.198585e-02 1.359119e-06 
##          403          404          405          406          407          408 
## 2.452851e-04 1.789923e-05 6.430042e-05 2.007810e-05 1.255570e-04 1.176539e-06 
##          409          410          411          412          413          414 
## 1.544598e-04 6.809563e-06 3.158078e-04 1.445118e-05 1.696523e-03 3.568373e-04 
##          415          416          417          418          419          420 
## 6.442218e-05 9.918467e-06 1.489157e-05 2.212050e-05 4.144859e-03 1.489323e-04 
##          421          422          423          424          425          426 
## 7.852883e-06 1.485905e-04 4.128820e-04 7.552630e-05 3.879901e-04 2.521327e-05 
##          427          428          429          430          431          432 
## 1.070074e-04 6.444613e-05 9.681896e-04 2.756602e-05 1.201746e-04 5.029852e-05 
##          433          434          435          436          437          438 
## 6.921737e-04 2.415639e-06 6.889461e-05 7.061226e-09 1.930229e-05 1.219483e-05 
##          439          440          441          442          443          444 
## 6.964343e-05 5.559618e-02 8.677217e-05 4.113111e-06 5.648371e-07 6.108595e-03 
##          445          446          447          448          449          450 
## 1.868603e-06 3.184620e-03 2.695008e-04 1.683990e-04 4.652088e-07 1.424299e-07 
##          451          452          453          454          455          456 
## 1.644116e-05 6.553148e-04 4.788848e-06 7.108851e-07 3.204385e-05 2.372478e-06 
##          457          458          459          460          461          462 
## 1.293079e-10 2.467534e-04 4.734702e-05 3.683704e-01 2.939530e-06 1.723113e-05 
##          463          464          465          466          467          468 
## 1.222220e-04 2.533666e-05 4.839460e-06 6.629522e-04 9.460213e-05 1.565418e-07 
##          469          470          471          472          473          474 
## 1.709079e-04 5.902282e-06 1.499210e-05 3.728648e-05 9.772196e-06 1.632934e-03 
##          475          476          477          478          479          480 
## 2.444163e-04 9.892287e-03 4.722592e-05 1.209538e-05 6.233094e-05 4.199978e-06 
##          481          482          483          484          485          486 
## 1.565418e-07 2.073026e-05 1.430139e-04 4.898714e-06 1.895717e-05 2.152617e-04 
##          487          488          489          490          491          492 
## 8.459864e-05 4.585768e-04 1.010412e-07 3.150917e-03 2.873117e-04 1.059192e-05 
##          493          494          495          496          497          498 
## 1.945271e-05 6.682645e-06 4.639619e-04 8.096995e-06 1.871978e-03 2.015386e-04 
##          499          500          501          502          503          504 
## 1.501202e-04 4.473101e-05 6.383974e-04 1.404240e-04 2.245468e-03 3.453802e-04 
##          505          506          507          508          509          510 
## 5.503109e-06 4.681000e-03 2.553624e-07 9.784355e-06 1.385598e-03 1.416340e-04 
##          511          512          513          514          515          516 
## 1.378312e-06 8.055458e-09 2.467078e-04 3.921779e-05 1.043485e-04 1.170601e-03 
##          517          518          519          520          521          522 
## 1.354201e-05 8.806692e-04 5.728168e-06 3.974157e-05 2.798427e-04 1.030678e-04 
##          523          524          525          526          527          528 
## 1.363514e-05 1.713251e-05 1.337714e-06 1.846719e-05 9.527637e-04 7.467773e-07 
##          529          530          531          532          533          534 
## 1.454252e-06 7.406460e-08 1.360708e-04 1.605025e-05 4.394881e-06 7.332701e-06 
##          535          536          537          538          539          540 
## 2.453187e-04 6.853821e-08 7.887443e-06 1.605025e-05 6.118124e-03 1.503974e-02 
##          541          542          543          544          545          546 
## 6.853821e-08 2.637841e-04 7.941197e-07 9.912074e-04 1.642741e-04 7.680173e-03 
##          547          548          549          550          551          552 
## 2.930775e-05 8.320336e-04 1.218791e-04 2.492002e-05 5.733915e-06 8.205296e-04 
##          553          554          555          556          557          558 
## 2.594134e-04 1.608660e-02 1.535289e-05 3.067425e-05 9.870696e-07 7.512316e-04 
##          559          560          561          562          563          564 
## 3.309448e-04 1.696939e-04 3.967644e-04 1.519715e-04 1.551504e-04 1.124312e-03 
##          565          566          567          568          569          570 
## 8.734879e-05 1.719026e-05 2.774172e-04 1.495042e-04 1.911941e-04 2.205764e-05 
##          571          572          573          574          575          576 
## 6.018524e-08 2.014125e-04 1.160278e-05 5.614960e-05 3.780416e-05 3.638591e-05 
##          577          578          579          580          581          582 
## 3.766957e-05 4.218994e-05 2.222426e-03 1.264954e-04 9.916182e-05 2.337273e-06 
##          583          584          585          586          587          588 
## 2.804944e-03 3.371635e-05 3.500879e-04 2.502079e-04 9.119647e-06 5.868647e-03 
##          589          590          591          592          593          594 
## 2.151756e-04 4.182379e-04 5.175985e-06 3.794402e-05 5.170852e-06 2.569545e-05 
##          595          596          597          598          599          600 
## 5.994045e-04 3.557176e-06 2.338714e-03 2.163476e-04 2.157265e-05 2.218149e-06 
##          601          602          603          604          605          606 
## 3.976307e-04 1.550822e-03 2.887291e-05 2.691337e-03 1.886500e-05 2.009690e-05 
##          607          608          609          610          611          612 
## 1.114004e-05 8.235102e-05 5.871234e-05 1.560350e-05 4.077192e-07 4.015219e-06 
##          613          614          615          616          617          618 
## 3.970379e-04 6.763280e-05 7.494832e-05 1.623680e-04 4.717108e-05 2.801502e-05 
##          619          620          621          622          623          624 
## 2.164950e-04 1.592987e+01 1.886500e-05 1.071050e-04 2.546232e-04 3.367539e-04 
##          625          626          627          628          629          630 
## 3.549158e-05 1.424774e-04 1.678174e-04 1.808689e-04 5.401187e-05 1.266800e-04 
##          631          632          633          634          635          636 
## 8.664880e-05 1.582226e-03 3.390264e-05 4.228302e-05 7.852883e-06 1.899098e-04 
##          637          638          639          640          641          642 
## 3.541348e-04 3.036154e-05 7.241535e-06 1.957583e-04 3.421346e-07 5.551209e-05 
##          643          644          645          646          647          648 
## 3.686668e-05 8.051776e-06 2.087871e-04 1.343693e-06 2.798503e-03 1.313550e-05 
##          649          650          651          652          653          654 
## 4.037086e-04 1.384198e-05 1.902141e-06 1.307901e-05 8.734879e-05 2.392993e-06 
##          655          656          657          658          659          660 
## 1.104556e-04 6.283684e-06 2.793588e-03 8.244462e-05 3.542348e-05 1.559711e-07 
##          661          662          663          664          665          666 
## 5.554072e-04 1.877166e-03 3.439080e-05 8.064293e-06 2.349666e-05 1.664391e-04 
##          667          668          669          670          671          672 
## 8.538420e-06 9.080346e-04 3.635060e-05 1.551670e-03 5.830823e-07 6.296604e-06 
##          673          674          675          676          677          678 
## 2.798337e-05 2.812909e-04 1.321636e-07 9.758790e-09 3.676775e-04 1.970278e-04 
##          679          680          681          682          683          684 
## 3.239756e-04 4.023804e-05 1.650691e-04 8.450098e-06 1.010412e-07 4.260014e-05 
##          685          686          687          688          689          690 
## 2.225765e-05 1.393613e-05 8.117039e-06 1.142269e-05 3.117907e-05 1.455054e-06 
##          691          692          693          694          695          696 
## 7.072173e-06 2.728518e-06 4.280478e-05 5.550424e-05 2.726088e-06 6.711040e-04 
##          697          698          699          700          701          702 
## 6.329480e-05 9.886691e-06 9.176108e-05 1.635902e-05 1.746057e-05 1.673352e-06 
##          703          704          705          706          707          708 
## 6.852575e-07 2.269782e-05 6.819120e-05 8.224104e-04 4.898714e-06 2.721914e-04 
##          709          710          711          712          713          714 
## 3.176885e-08 3.201656e-06 7.332701e-06 4.921769e-05 6.268499e-07 5.767689e-05 
##          715          716          717          718          719          720 
## 3.772498e-08 1.499271e-03 3.122116e-04 9.308227e-05 7.550777e-05 2.467282e-05 
##          721          722          723          724          725          726 
## 3.628957e-05 3.051742e-04 3.412178e-05 4.203835e-04 2.746536e-04 3.728282e-05 
##          727          728          729          730          731          732 
## 4.666927e-05 1.463126e-04 9.542510e-06 1.827880e-06 1.728857e-05 2.089132e-06 
##          733          734          735          736          737          738 
## 7.393307e-05 7.332701e-06 1.264954e-04 3.613196e-06 3.441439e-04 8.406326e-06 
##          739          740          741          742          743          744 
## 3.478605e-05 3.249275e-03 4.770227e-05 3.240823e-05 3.731074e-06 8.667729e-06 
##          745          746          747          748          749          750 
## 8.759086e-06 2.512262e-05 1.974745e-04 3.649373e-05 3.516305e-04 8.434943e-06 
##          751          752          753          754          755          756 
## 5.894798e-05 1.981954e-06 1.535289e-05 8.269082e-05 3.693012e-05 2.358296e-07 
##          757          758          759          760          761          762 
## 5.726193e-05 7.249169e-06 2.277024e-04 1.405756e-05 5.796395e-05 4.168930e-08 
##          763          764          765          766          767          768 
## 5.889128e-04 4.760167e-05 5.169322e-05 2.550036e-05 6.836442e-05 5.103010e-05 
##          769          770          771          772          773          774 
## 4.269884e-05 9.876660e-10 1.338398e-04 1.217922e-06 1.041026e-05 1.845335e-05 
##          775          776          777          778          779          780 
## 5.307596e-02 1.728857e-05 4.681938e-05 1.357802e-03 2.428880e-04 3.062077e-06 
##          781          782          783          784          785          786 
## 1.109194e-04 1.337231e-04 1.789348e-05 7.078984e-05 5.222470e-04 1.087758e-05 
##          787          788          789          790          791          792 
## 9.538291e-07 3.001867e-05 9.471753e-04 3.155498e-05 2.568058e-05 1.528783e-04 
##          793          794          795          796          797          798 
## 1.315752e-04 7.530666e-04 4.281767e-05 1.201954e-08 1.769842e-02 4.018884e-05 
##          799          800          801          802          803          804 
## 5.926173e-05 6.159644e-07 1.725074e-05 1.345400e-06 1.064824e-04 7.227819e-05 
##          805          806          807          808          809          810 
## 6.705424e-04 3.892596e-03 4.141529e-05 4.183609e-05 2.742008e-05 6.275599e-06 
##          811          812          813          814          815          816 
## 3.062016e-05 1.052563e-03 2.370886e-05 6.362770e-04 1.659254e-05 9.473726e-04 
##          817          818          819          820          821          822 
## 2.171692e-06 4.125479e-05 2.735566e-06 1.376883e-04 3.683559e-07 4.179518e-03 
##          823          824          825          826          827          828 
## 2.369682e-05 6.964343e-05 2.025644e-05 1.097610e-04 4.944665e-07 2.271594e-03 
##          829          830          831          832          833          834 
## 1.197573e-06 1.445118e-05 2.175328e-05 1.192136e-04 5.756682e-05 6.398083e-05 
##          835          836          837          838          839          840 
## 5.222253e-06 5.069039e-05 2.285886e-03 1.929791e-04 4.943614e-05 9.149770e-07 
##          841          842          843          844          845          846 
## 8.502860e-05 4.906470e-06 2.824679e-08 3.232229e-05 6.425725e-04 5.604115e-04 
##          847          848          849          850          851          852 
## 1.186637e-03 9.214838e-06 7.164255e-05 6.715611e-05 6.727231e-06 6.562865e-07 
##          853          854          855          856          857          858 
## 1.799063e-05 1.078139e-05 1.524234e-04 2.102368e-04 6.964892e-05 1.541413e-04 
##          859          860          861          862          863          864 
## 1.862184e-06 1.231264e-04 6.731957e-06 3.283940e-03 3.557079e-04 3.150917e-03 
##          865          866          867          868          869          870 
## 4.054132e-06 2.018527e-04 4.754396e-05 1.973927e-05 5.859461e-04 2.743486e-04 
##          871          872          873          874          875          876 
## 8.667729e-06 3.584707e-03 1.768591e-04 9.484886e-04 9.141840e-03 4.423754e-05 
##          877          878          879          880          881          882 
## 2.492103e-05 5.330626e-04 1.739409e-05 1.063286e-06 7.195585e-05 5.610780e-05 
##          883          884          885          886          887          888 
## 6.515964e-06 5.491496e-04 4.197279e-05 2.023363e-06 2.198676e-05 2.885139e-04 
##          889          890          891          892          893          894 
## 3.004683e-05 1.149158e-03 1.087433e-05 5.706587e-05 8.694585e-05 1.291591e-01 
##          895          896          897          898          899          900 
## 5.412786e-04 1.006254e-02 2.636461e-06 1.277652e-05 8.269082e-05 6.980176e-05 
##          901          902          903          904          905          906 
## 3.395896e-07 5.189063e-03 2.127117e-05 1.988229e-04 9.521961e-04 6.429216e-06 
##          907          908          909          910          911          912 
## 3.335256e-04 1.217922e-06 1.321636e-07 1.383862e-04 1.481117e-04 1.252861e-05 
##          913          914          915          916          917          918 
## 1.361941e-04 2.373928e-04 8.608900e-04 9.311420e-06 9.300711e-08 1.936070e-04 
##          919          920          921          922          923          924 
## 6.656050e-06 2.577279e-03 3.056167e-04 1.065050e-05 2.769879e-04 5.190176e-05 
##          925          926          927          928          929          930 
## 4.895407e-05 4.473975e-04 8.255323e-07 4.861869e-07 2.967524e-04 2.551635e-03 
##          931          932          933          934          935          936 
## 1.911941e-04 4.014754e-05 5.436790e-05 4.077192e-07 4.197279e-05 1.053003e-04 
##          937          938          939          940          941          942 
## 3.261998e-05 2.149944e-04 7.280919e-06 3.027493e-05 6.285883e-04 8.414604e-09 
##          943          944          945          946          947          948 
## 6.576681e-05 2.115424e-05 1.185424e-04 1.507296e-05 1.613125e-04 2.586766e-04 
##          949          950          951          952          953          954 
## 3.050830e-04 6.509585e-04 2.450040e-04 1.595232e-08 8.053566e-04 1.077408e-05 
##          955          956          957          958          959          960 
## 1.530381e-04 5.440545e-06 2.710453e-06 1.413958e-05 7.886498e-05 2.195547e-11 
##          961          962          963          964          965          966 
## 8.115545e-04 2.632306e-06 1.088994e-04 6.275599e-06 8.577345e-05 1.233445e-04 
##          967          968          969          970          971          972 
## 1.204624e-05 8.923726e-07 2.082726e-06 1.171236e-04 8.535481e-06 2.152612e-05 
##          973          974          975          976          977          978 
## 2.295339e-05 8.242188e-04 1.354231e-04 3.726682e-04 5.346433e-04 1.556554e-04 
##          979          980          981          982          983          984 
## 5.324777e-05 1.736754e-03 2.734050e-04 1.431446e-04 6.836442e-05 4.742147e-05 
##          985          986          987          988          989          990 
## 5.186478e-05 3.226139e-05 2.802951e-05 6.836442e-05 1.969420e-06 1.020193e-04 
##          991          992          993          994          995          996 
## 1.378312e-06 6.662033e-06 2.310327e-04 1.216830e-03 3.797171e-06 1.710858e-05 
##          997          998          999         1000         1001         1002 
## 3.797300e-05 1.068564e-04 6.907159e-04 1.477954e-05 2.599166e-04 1.104790e-04 
##         1003         1004         1005         1006         1007         1008 
## 6.935956e-05 1.026095e-05 1.120320e-04 7.345928e-08 5.190176e-05 2.871287e-06 
##         1009         1010         1011         1012         1013         1014 
## 2.205764e-05 6.946922e-04 3.756006e-04 1.381313e-03 2.543383e-04 2.578458e-04 
##         1015         1016         1017         1018         1019         1020 
## 1.666020e-06 2.349666e-05 2.194834e-05 2.654841e-05 6.963799e-05 1.089231e-05 
##         1021         1022         1023         1024         1025         1026 
## 1.390780e-03 7.156331e-05 9.122771e-05 2.894688e-04 7.839172e-04 2.211444e-06 
##         1027         1028         1029         1030         1031         1032 
## 2.199093e-05 3.385161e-04 4.705512e-04 1.237321e-04 9.549224e-06 1.437882e-04 
##         1033         1034         1035         1036         1037         1038 
## 1.113377e-04 1.668250e-04 3.617905e-04 6.290287e-05 1.454091e-05 5.825338e-05 
##         1039         1040         1041         1042         1043         1044 
## 2.972296e-03 6.851034e-04 1.577345e-04 3.040440e-06 1.249800e-06 3.231170e-04 
##         1045         1046         1047         1048         1049         1050 
## 4.183609e-05 2.539426e-03 1.295695e-04 2.489045e-05 7.592374e-06 1.126910e-02 
##         1051         1052         1053         1054         1055         1056 
## 1.345400e-06 6.572468e-03 2.694052e-06 8.193673e-06 3.267282e-03 4.035114e-02 
##         1057         1058         1059         1060         1061         1062 
## 4.448667e-04 4.551406e-05 1.104519e-03 2.632866e-04 2.873117e-04 6.878009e-05 
##         1063         1064         1065         1066         1067         1068 
## 1.786907e-05 6.878888e-08 9.610303e-05 1.916696e-07 2.346434e-06 9.875137e-05 
##         1069         1070         1071         1072         1073         1074 
## 1.817248e-04 2.048031e-04 5.666515e-05 3.425852e-06 2.479976e-04 2.018236e-03 
##         1075         1076         1077         1078         1079         1080 
## 5.243415e-06 1.252626e-02 1.352787e-05 1.315752e-04 1.249800e-06 4.863195e-05 
##         1081         1082         1083         1084         1085         1086 
## 1.048613e-05 3.151324e-07 7.506672e-05 4.843468e-05 7.799170e-05 2.771082e-06 
##         1087         1088         1089         1090         1091         1092 
## 2.082726e-06 2.020289e-05 1.074172e-03 4.985271e-06 6.987427e-05 1.820230e-04 
##         1093         1094         1095         1096         1097         1098 
## 1.130794e-04 1.141861e-01 3.810421e-05 4.237861e-06 4.756229e-05 2.796297e-06 
##         1099         1100         1101         1102         1103         1104 
## 4.197279e-05 1.478334e-03 3.948235e-05 1.561347e-04 2.273633e-05 2.427884e-04 
##         1105         1106         1107         1108         1109         1110 
## 2.424377e-04 7.941907e-05 1.386844e-04 1.216882e-06 1.831631e-04 2.099815e-02 
##         1111         1112         1113         1114         1115         1116 
## 4.044323e-08 2.412648e-04 5.909108e-05 2.527642e-04 1.286122e-03 2.820255e-04 
##         1117         1118         1119         1120         1121         1122 
## 6.198752e-03 4.577352e-05 7.106865e-04 4.482525e-05 2.862715e-06 5.887041e-04 
##         1123         1124         1125         1126         1127         1128 
## 2.286006e-04 5.605130e-05 8.064972e-05 1.344344e-04 8.850011e-06 8.053566e-04 
##         1129         1130         1131         1132         1133         1134 
## 2.660124e-06 5.462995e-05 3.267822e-07 5.753287e-06 8.434943e-06 2.363240e-05 
##         1135         1136         1137         1138         1139         1140 
## 2.598283e-04 7.579846e-07 1.412082e-04 2.082726e-06 9.388310e-06 2.729416e-06 
##         1141         1142         1143         1144         1145         1146 
## 3.210947e-03 7.691298e-04 7.259380e-07 1.975157e-04 4.630065e-06 1.154325e-03 
##         1147         1148         1149         1150         1151         1152 
## 6.613666e-05 4.269884e-05 8.853512e-04 1.998525e-06 2.499059e-06 2.084889e-05 
##         1153         1154         1155         1156         1157         1158 
## 1.359119e-06 2.419719e-03 3.293310e-04 2.240745e-05 1.867796e-04 1.287167e-04 
##         1159         1160         1161         1162         1163         1164 
## 5.599864e-05 6.039408e-05 2.013198e-04 8.079202e-04 4.523545e-06 2.782729e-05 
##         1165         1166         1167         1168         1169         1170 
## 6.792369e-05 2.861197e-04 7.661962e-05 1.863521e-04 6.342203e-06 1.224227e-04 
##         1171         1172         1173         1174         1175         1176 
## 2.277024e-04 2.266548e-06 2.854013e-03 1.007914e-05 9.388310e-06 6.003790e-07 
##         1177         1178         1179         1180         1181         1182 
## 5.495967e-04 3.629059e-04 1.744618e-03 1.550822e-03 9.991631e-05 4.028838e-05 
##         1183         1184         1185         1186         1187         1188 
## 1.513459e-01 5.830227e-05 1.983009e-06 1.292311e-05 1.699744e-04 1.808552e-05 
##         1189         1190         1191         1192         1193         1194 
## 7.887642e-05 5.830823e-07 2.817344e-05 1.372034e-06 3.615856e-06 1.267500e-04 
##         1195         1196         1197         1198         1199         1200 
## 4.840364e-05 9.239368e-05 1.046520e-03 1.025556e-04 2.497013e-05 3.412178e-05 
##         1201         1202         1203         1204         1205         1206 
## 2.933955e-06 1.691055e-04 8.660028e-04 3.520202e-05 3.219757e-04 4.197279e-05 
##         1207         1208         1209         1210         1211         1212 
## 6.092043e-07 1.285236e-04 2.435643e-05 2.239161e-05 6.836712e-04 1.389364e-01 
##         1213         1214         1215         1216         1217         1218 
## 2.349645e-04 6.606823e-07 1.145083e-05 8.068153e-08 2.603411e-04 5.686338e-04 
##         1219         1220         1221         1222         1223         1224 
## 1.542028e-05 8.602626e-06 7.311035e-04 1.750047e-04 3.062316e-05 5.284284e-08 
##         1225         1226         1227         1228         1229         1230 
## 1.605025e-05 2.063902e-04 8.419862e-04 1.484156e-05 1.203601e-05 1.098130e-05 
##         1231         1232         1233         1234         1235         1236 
## 5.096592e-05 1.999978e-03 7.542926e-05 2.427311e-06 2.197960e-05 1.915006e-06 
##         1237         1238         1239         1240         1241         1242 
## 1.387392e-04 1.250306e-04 5.618853e-05 8.052663e-05 4.043889e-06 7.250641e-04 
##         1243         1244         1245         1246         1247         1248 
## 2.502981e-04 1.710858e-05 2.572720e-04 3.065557e-06 2.363240e-05 3.931879e-03 
##         1249         1250         1251         1252         1253         1254 
## 2.403459e-05 8.619951e-05 4.125275e-04 1.503514e-04 3.579637e-05 4.259957e-05 
##         1255         1256         1257         1258         1259         1260 
## 7.205985e-06 2.275839e-05 1.138309e-06 2.468655e-05 4.169560e-04 8.719865e-06 
##         1261         1262         1263         1264         1265         1266 
## 1.602764e-04 1.120250e-06 5.350030e-05 2.990807e-05 1.621955e-03 3.340206e-05 
##         1267         1268         1269         1270         1271         1272 
## 1.280656e-04 4.062477e-05 8.520806e-06 3.923098e-04 6.739261e-05 1.026428e-04 
##         1273         1274         1275         1276         1277         1278 
## 1.018244e-04 1.561408e-06 2.228472e-04 1.681098e-03 3.865127e-05 2.971071e-05 
##         1279         1280         1281         1282         1283         1284 
## 2.059509e-04 3.915272e-04 7.941197e-07 2.028838e-05 2.921884e-04 3.387361e-04 
##         1285         1286         1287         1288         1289         1290 
## 3.224353e-06 1.023779e-05 2.757721e-07 4.908987e-04 1.212340e-05 1.100907e-03 
##         1291         1292         1293         1294         1295         1296 
## 5.667663e-04 6.501753e-05 4.001762e-05 5.491493e-05 1.090809e-05 1.316178e-04 
##         1297         1298         1299         1300         1301         1302 
## 1.137259e-04 5.891151e-03 1.345400e-06 4.255495e-05 9.119647e-06 5.201398e-05 
##         1303         1304         1305         1306         1307         1308 
## 2.002435e-05 8.539746e-05 3.069133e-04 1.929368e-04 6.652566e-06 1.403054e-04 
##         1309         1310         1311         1312         1313         1314 
## 6.346399e-04 6.873106e-06 9.903663e-04 3.707233e-04 1.230828e-05 1.768344e-04 
##         1315         1316         1317         1318         1319         1320 
## 4.437255e-05 8.719865e-06 3.676714e-05 4.725750e-03 1.882472e-02 2.190963e-04 
##         1321         1322         1323         1324         1325         1326 
## 4.320690e-06 7.692734e-06 8.792882e-06 1.201954e-08 6.725938e-04 2.941807e-05 
##         1327         1328         1329         1330         1331         1332 
## 1.055515e-05 2.286619e-05 1.475638e-03 4.595819e-03 1.067445e-06 2.427938e-04 
##         1333         1334         1335         1336         1337         1338 
## 1.477954e-05 2.814986e-05 1.179881e-04 7.852883e-06 4.807267e-09 3.001168e-05 
##         1339         1340         1341         1342         1343         1344 
## 2.448789e-05 5.051035e-06 4.217727e-05 1.471035e-01 1.055961e-04 2.376514e-04 
##         1345         1346         1347         1348         1349         1350 
## 1.456404e-04 1.585200e-04 4.077191e-04 5.858126e-06 1.920332e-05 6.268499e-07 
##         1351         1352         1353         1354         1355         1356 
## 9.450254e-06 2.142177e-05 3.754700e-05 1.776623e-05 1.723535e-04 3.873777e-05 
##         1357         1358         1359         1360         1361         1362 
## 9.473024e-05 1.204412e-05 1.438945e-04 7.315813e-05 1.493225e-04 7.623814e-05 
##         1363         1364         1365         1366         1367         1368 
## 2.047429e-04 1.170098e-05 1.871978e-03 7.887684e-05 3.895395e-05 1.504348e-05 
##         1369         1370         1371         1372         1373         1374 
## 5.521332e-05 1.685362e-04 4.982629e-08 4.259895e-04 8.974532e-04 6.444613e-05 
##         1375         1376         1377         1378         1379         1380 
## 5.871234e-05 1.364228e-03 3.109428e-05 5.436790e-05 1.771827e-06 9.082144e-07 
##         1381         1382         1383         1384         1385         1386 
## 7.293836e-04 7.941062e-05 1.779064e-04 2.113850e-04 3.945853e-04 3.588375e-05 
##         1387         1388         1389         1390         1391         1392 
## 1.311046e-06 3.494575e-05 1.029688e-04 1.064744e-06 2.400933e-06 1.565270e-04 
##         1393         1394         1395         1396         1397         1398 
## 1.108530e-03 8.248515e-05 5.830227e-05 1.890433e-09 4.624858e-05 4.405240e-06 
##         1399         1400         1401         1402         1403         1404 
## 1.566074e-04 1.684525e-03 2.104165e-04 2.550505e-05 4.758317e-06 1.372032e-04 
##         1405         1406         1407         1408         1409         1410 
## 3.777259e-06 6.446787e-06 1.023779e-05 1.867381e-04 1.391125e-06 1.798682e-03 
##         1411         1412         1413         1414         1415         1416 
## 6.159644e-07 3.759382e-05 5.144966e-05 1.656350e-05 3.040440e-06 1.921945e-05 
##         1417         1418         1419         1420         1421         1422 
## 4.106231e-06 3.026338e-05 6.963799e-05 4.857277e-05 6.781746e-04 3.359510e-04 
##         1423         1424         1425         1426         1427         1428 
## 3.664040e-05 2.664545e-03 1.936913e-04 1.195598e-06 9.708122e-05 4.077192e-07 
##         1429         1430         1431         1432         1433         1434 
## 5.681647e-05 7.861505e-05 2.641923e-04 8.060919e-04 5.068648e-05 1.256871e-04 
##         1435         1436         1437         1438         1439         1440 
## 9.034586e-05 8.430760e-05 6.771522e-05 1.891235e-04 2.501171e-04 4.062477e-05 
##         1441         1442         1443         1444         1445         1446 
## 2.505487e-04 1.618614e-05 7.597194e-04 5.590027e-05 1.528286e-04 2.803526e-06 
##         1447         1448         1449         1450         1451         1452 
## 4.377586e-03 1.445118e-05 4.840364e-05 3.163574e-06 3.419270e-02 3.613196e-06 
##         1453         1454         1455         1456         1457         1458 
## 1.808552e-05 2.291896e-04 3.642864e-06 9.126359e-05 5.991016e-07 5.600307e-08 
##         1459         1460         1461         1462         1463         1464 
## 1.361395e-04 6.792369e-05 6.146623e-04 5.436790e-05 5.628756e-04 4.770227e-05 
##         1465         1466         1467         1468         1469         1470 
## 4.425955e-05 3.363605e-07 5.608269e-04 8.450098e-06 9.599986e-06 8.017055e-05 
##         1471         1472         1473         1474         1475         1476 
## 3.958224e-06 7.550777e-05 1.158832e-04 9.137274e-05 4.417365e-06 5.864547e-05 
##         1477         1478         1479         1480         1481         1482 
## 1.018699e-04 9.869393e-06 4.277196e-05 2.560742e-04 1.738627e-05 4.084313e-05 
##         1483         1484         1485         1486         1487         1488 
## 9.894134e-05 1.386844e-04 1.959517e-04 3.464012e-04 5.544944e-05 8.261730e-06 
##         1489         1490         1491         1492         1493         1494 
## 2.955013e-05 4.914964e-05 7.403171e-06 3.624540e-04 3.076609e-08 5.914692e-05 
##         1495         1496         1497         1498         1499         1500 
## 4.786894e-04 1.275894e-05 3.960592e-06 1.201746e-04 2.098149e-05 2.877889e-04 
##         1501         1502         1503         1504         1505         1506 
## 6.424433e-05 2.320871e-04 8.520806e-06 2.893670e-04 4.077191e-04 7.390418e-05 
##         1507         1508         1509         1510         1511         1512 
## 1.710858e-05 3.545197e-05 6.928417e-05 2.645482e-04 1.004940e-05 1.770646e-03 
##         1513         1514         1515         1516         1517         1518 
## 4.192227e-04 8.022188e-04 1.762374e-04 8.414604e-09 1.823435e-03 5.991016e-07 
##         1519         1520         1521         1522         1523         1524 
## 7.655225e-04 4.054830e-03 2.604922e-05 5.553938e-07 1.353569e-04 1.028062e-05 
##         1525         1526         1527         1528         1529         1530 
## 2.746848e-05 4.141529e-05 7.357750e-05 6.548821e-06 5.847994e-04 1.616297e-04 
##         1531         1532         1533         1534         1535         1536 
## 9.532128e-06 1.185703e-05 6.037092e-05 2.564193e-04 5.746932e-05 1.632027e-05 
##         1537         1538         1539         1540         1541         1542 
## 2.001814e-04 1.881324e-02 1.962154e-04 3.317055e-05 3.376860e-07 1.318693e-04 
##         1543         1544         1545         1546         1547         1548 
## 1.871978e-03 6.652566e-06 1.690954e-05 1.496425e-05 2.242480e-04 2.560525e-04 
##         1549         1550         1551         1552         1553         1554 
## 1.248911e-03 1.932848e-06 6.300158e-04 3.171452e-06 8.786250e-06 8.918932e-04 
##         1555         1556         1557         1558         1559         1560 
## 9.907701e-06 5.853772e-06 1.336216e-05 1.854533e-04 1.445118e-05 1.748231e-04 
##         1561         1562         1563         1564         1565         1566 
## 8.952207e-06 1.236498e-04 3.199934e-05 1.018534e-04 1.835708e-05 2.137952e-05 
##         1567         1568         1569         1570         1571         1572 
## 1.846993e-05 5.492945e-05 7.332701e-06 7.509570e-04 1.605325e-04 6.412716e-05 
##         1573         1574         1575         1576         1577         1578 
## 3.559056e-06 2.339693e-04 1.155361e-04 1.425409e-04 1.022063e-04 1.152090e-03 
##         1579         1580         1581         1582         1583         1584 
## 2.292413e-04 1.678600e-04 3.239078e-06 3.696403e-04 2.223796e-06 5.615893e-06 
##         1585         1586         1587         1588         1589         1590 
## 9.641770e-04 2.220396e-05 1.045194e-01 9.257000e-04 5.204116e-05 1.188979e-04 
##         1591         1592         1593         1594         1595         1596 
## 1.451859e-07 8.633096e-06 1.072959e-04 2.030481e-05 9.634935e-07 3.508477e-06 
##         1597         1598         1599         1600         1601         1602 
## 4.014754e-05 2.032562e-03 1.559711e-07 9.124164e-04 1.081973e-06 1.068985e-05 
##         1603         1604         1605         1606         1607         1608 
## 2.844959e-04 8.660910e-05 1.886500e-05 7.755121e-04 5.379805e-06 1.523418e-04 
##         1609         1610         1611         1612         1613         1614 
## 3.182688e-06 1.561778e-05 2.082726e-06 4.109054e-11 1.883746e-05 2.223247e-05 
##         1615         1616         1617         1618         1619         1620 
## 1.549280e-05 1.845335e-05 3.054874e-07 1.573354e-04 3.125599e-05 3.455966e-06 
##         1621         1622         1623         1624         1625         1626 
## 6.146623e-04 2.179393e-04 1.443732e-01 3.412178e-05 9.018660e-06 2.869845e-04 
##         1627         1628         1629         1630         1631         1632 
## 1.371813e-05 1.535492e-05 2.710453e-06 8.406326e-06 7.555693e-05 2.104965e-05 
##         1633         1634         1635         1636         1637         1638 
## 2.056251e-03 6.254508e-05 2.392697e-05 2.964270e-06 3.861484e-04 5.805031e-08 
##         1639         1640         1641         1642         1643         1644 
## 2.532151e-04 4.829166e-04 5.331186e-03 1.233656e-04 2.025585e-05 4.565949e-05 
##         1645         1646         1647         1648         1649         1650 
## 8.979413e-06 5.830823e-07 2.291310e-05 6.128196e-05 1.465418e-04 9.042790e-07 
##         1651         1652         1653         1654         1655         1656 
## 1.079192e-03 2.550891e-05 1.366730e-05 1.086722e-03 1.991977e-05 3.008337e-05 
##         1657         1658         1659         1660         1661         1662 
## 2.019348e-05 3.606364e-04 6.806886e-05 1.427730e-04 7.974905e-06 3.089297e-05 
##         1663         1664         1665         1666         1667         1668 
## 4.520075e-05 8.830908e-04 4.628670e-03 9.470260e-04 8.394445e-04 1.493089e-06 
##         1669         1670         1671         1672         1673         1674 
## 6.461275e-06 1.371813e-05 1.973166e-04 5.770923e-06 7.661001e-07 3.656717e-05 
##         1675         1676         1677         1678         1679         1680 
## 2.149371e-05 2.655202e-05 2.330439e-05 1.271941e-04 2.438484e-05 6.726865e-04 
##         1681         1682         1683         1684         1685         1686 
## 1.078139e-05 1.482904e-04 5.553938e-07 6.391205e-05 2.857361e-02 3.772498e-08 
##         1687         1688         1689         1690         1691         1692 
## 5.639255e-09 2.455683e-04 1.490208e-03 1.851344e-04 1.005063e-04 1.785884e-04 
##         1693         1694         1695         1696         1697         1698 
## 4.612556e-06 5.830823e-07 2.654147e-05 1.338396e-04 6.668094e-06 1.407649e-04 
##         1699         1700         1701         1702         1703         1704 
## 5.408616e-06 2.829617e-03 2.000617e-06 7.150084e-04 5.373460e-03 9.251439e-04 
##         1705         1706         1707         1708         1709         1710 
## 1.004496e-04 2.277024e-04 2.427884e-04 3.363329e-04 2.878616e-04 1.699048e-04 
##         1711         1712         1713         1714         1715         1716 
## 4.385712e-04 4.385498e-09 1.384198e-05 2.391938e-04 1.363514e-05 9.373760e-05 
##         1717         1718         1719         1720         1721         1722 
## 2.104965e-05 4.725245e-05 6.352490e-07 1.059192e-05 2.009086e-05 1.054223e-04 
##         1723         1724         1725         1726         1727         1728 
## 1.825822e-02 2.578696e-05 1.073223e-05 2.598313e-05 1.110912e-04 1.097146e-05 
##         1729         1730         1731         1732         1733         1734 
## 1.281466e-04 5.882181e-03 1.969420e-06 1.673152e-04 1.945763e-05 2.601994e-06 
##         1735         1736         1737         1738         1739         1740 
## 4.701056e-06 3.935448e-04 2.415639e-06 2.273009e-04 1.342758e-05 5.436790e-05 
##         1741         1742         1743         1744         1745         1746 
## 1.820034e-07 1.057495e-06 1.168872e-03 1.140472e-04 2.122566e-04 7.655225e-04 
##         1747         1748         1749         1750         1751         1752 
## 7.374062e-06 5.432263e-05 2.330404e-04 1.140973e-05 6.043499e-04 4.780615e-03 
##         1753         1754         1755         1756         1757         1758 
## 2.051684e-04 7.063416e-05 6.474827e-05 1.910495e-04 3.923106e-06 4.977602e-04 
##         1759         1760         1761         1762         1763         1764 
## 3.342158e-04 2.343529e-05 3.219689e-05 1.311999e-05 9.471953e-06 2.957205e-05 
##         1765         1766         1767         1768         1769         1770 
## 7.332701e-06 1.065131e-06 2.314791e-06 1.831050e-04 3.046248e-06 3.511089e-04 
##         1771         1772         1773         1774         1775         1776 
## 7.592393e-05 3.611845e-06 3.627570e-07 1.943722e-03 1.602780e-04 5.135449e-05 
##         1777         1778         1779         1780         1781         1782 
## 6.677811e-03 3.770683e-04 2.715722e-05 1.554785e-05 2.467874e-03 1.237574e-05 
##         1783         1784         1785         1786         1787         1788 
## 4.125479e-05 3.661453e-04 1.138309e-06 2.052262e-05 1.362843e-04 3.911287e-07 
##         1789         1790         1791         1792         1793         1794 
## 4.411496e-05 3.206519e-05 2.461680e-04 1.241798e-03 1.340022e-07 2.064608e-03 
##         1795         1796         1797         1798         1799         1800 
## 2.933715e-06 8.945760e-04 6.748084e-05 8.935813e-05 1.383383e-04 3.932618e-05 
##         1801         1802         1803         1804         1805         1806 
## 6.949938e-07 1.605025e-05 4.077192e-07 7.410092e-05 4.699994e-07 3.047667e-05 
##         1807         1808         1809         1810         1811         1812 
## 5.270293e-05 2.306946e-06 1.533021e-05 7.852883e-06 5.397912e-06 4.875113e-05 
##         1813         1814         1815         1816         1817         1818 
## 2.346434e-06 5.795619e-06 3.174251e-08 4.919996e-05 1.892848e-04 9.272519e-06 
##         1819         1820         1821         1822         1823         1824 
## 1.109086e-05 2.948405e-05 7.239110e-05 5.131126e-03 1.033791e-04 9.485917e-05 
##         1825         1826         1827         1828         1829         1830 
## 4.077192e-07 3.003536e-06 9.380721e-05 3.492572e-05 1.502465e-04 6.727231e-06 
##         1831         1832         1833         1834         1835         1836 
## 2.191275e-03 4.197279e-05 1.484156e-05 8.957774e-07 4.289022e-05 7.212330e-05 
##         1837         1838         1839         1840         1841         1842 
## 4.441933e-04 1.127297e-05 1.086219e-04 3.351732e-05 2.876786e-02 6.806578e-05 
##         1843         1844         1845         1846         1847         1848 
## 1.802512e-04 1.075173e-05 1.069628e-05 3.117907e-05 8.790650e-04 2.232024e-05 
##         1849         1850         1851         1852         1853         1854 
## 5.223205e-04 6.429216e-06 6.531366e-06 6.738342e-05 1.618412e-04 3.747614e-04 
##         1855         1856         1857         1858         1859         1860 
## 7.744293e-05 1.198780e-03 7.941197e-07 3.478685e-04 1.089614e-04 2.156297e-03 
##         1861         1862         1863         1864         1865         1866 
## 2.958744e-04 5.037171e-05 2.023363e-06 6.441753e-05 6.329480e-05 1.715346e-04 
##         1867         1868         1869         1870         1871         1872 
## 1.906857e-05 1.268052e-04 4.619016e-04 7.633363e-07 3.598900e-05 1.248647e-05 
##         1873         1874         1875         1876         1877         1878 
## 6.168634e-04 7.865621e-05 2.023363e-06 9.746973e-07 1.210666e-05 2.914036e-05 
##         1879         1880         1881         1882         1883         1884 
## 4.678236e-05 3.460628e-05 6.544046e-05 2.215970e-04 3.075561e-06 1.155005e-04 
##         1885         1886         1887         1888         1889         1890 
## 9.294519e-06 7.698251e-06 1.149158e-03 4.410517e-06 2.082653e-03 2.469427e-04 
##         1891         1892         1893         1894         1895         1896 
## 5.103010e-05 3.054874e-07 6.567080e-04 1.777713e-03 3.918210e-05 8.526275e-04 
##         1897         1898         1899         1900         1901         1902 
## 4.624858e-05 1.165342e-03 1.197573e-06 1.305063e-04 3.733375e-04 8.357864e-05 
##         1903         1904         1905         1906         1907         1908 
## 1.332976e-03 2.984565e-06 8.723348e-06 1.147538e-03 1.477428e-03 2.064699e-04 
##         1909         1910         1911         1912         1913         1914 
## 3.442014e-04 6.964343e-05 2.367903e-03 8.272162e-04 2.392697e-05 3.614349e-06 
##         1915         1916         1917         1918         1919         1920 
## 3.316461e-05 1.146726e-04 6.121292e-06 4.225389e-05 4.232631e-04 4.378738e-06 
##         1921         1922         1923         1924         1925         1926 
## 5.679874e-06 5.154946e-05 1.418055e-05 2.644242e-05 2.214031e-08 1.266349e-07 
##         1927         1928         1929         1930         1931         1932 
## 3.464136e-05 9.121884e-04 2.087272e-05 3.939367e-05 6.417097e-05 4.677865e-06 
##         1933         1934         1935         1936         1937         1938 
## 4.554809e-05 5.324777e-05 1.426264e-05 1.127199e-04 1.176539e-06 7.467773e-07 
##         1939         1940         1941         1942         1943         1944 
## 5.605108e-05 9.397103e-07 5.769306e-06 2.821907e-05 6.667404e-04 4.267716e-04 
##         1945         1946         1947         1948         1949         1950 
## 3.651193e-06 3.923106e-06 1.120108e-05 2.547151e-05 6.365956e-04 1.518352e-05

De los resultados se observa que varias muestras tienen una influencia mayor en la estimación de los coeficientes de la regresión, las lineas que sobresalen como las 76,460 y 620. Esto puede deberse a varios factores, como valores atípicos en esas observaciones o características particulares que hacen que tengan un peso considerable en la relación entre las variables predictoras y la variable de respuesta.

# Calcular el factor de inflación de la varianza (VIF)
library(car)
vif2<-vif(modelo2)
print (vif2)
##    areaconst      estrato habitaciones parqueaderos       banios 
##     2.108461     1.693630     1.405477     1.763493     2.464873

Los valores de VIF son todos menores a 10, lo que sugiere que la multicolinealidad entre las variables independientes no es un problema importante en este modelo.

Los resultados indican que el modelo podría no ser apropiado para su uso debido a las violaciones significativas de los supuestos fundamentales de la regresión lineal. Las violaciones de la normalidad, heterocedasticidad, falta de linealidad y autocorrelación de los residuos pueden afectar la validez de las inferencias realizadas a partir del modelo y la precisión de las predicciones. Por lo tanto, es importante ejercer precaución al interpretar y utilizar los resultados del modelo en su forma actual. Si se requiere un modelo más confiable, podría ser necesario explorar diferentes enfoques o técnicas de modelado que aborden estas limitaciones, como la transformación de variables, el uso de modelos no lineales o la consideración de métodos robustos que sean menos sensibles a las violaciones de los supuestos.

Paso 5

Con el modelo identificado, se predijo el precio de la vivienda utilizando las características de la segunda solicitud.

solicitud2 <- data.frame(estrato = c(5, 6), areaconst = 300, habitaciones = 5, banios = 3, parqueaderos = 3)

# Predecir precio según características vivienda 2
predict(modelo2, newdata = solicitud2)
##        1        2 
## 692.8101 750.9343

De acuerdo con el modelo correspondiente para los apartamentos en la zona sur de la ciudad de Cali, que cuenten con 5 habitaciones, 3 baños, 3 parqueaderos y un área construida de 300 metros cuadrados en un estrato 4, su precio sería de 692,810,100 de pesos colombianos. En cuanto al inmueble con las mismas características pero en un estrato 6, su precio sería de 750,934,300 de pesos colombianos.

Paso 6

Se empleó la base de datos de vivienda2 para identificar inmuebles que cumplan con los criterios de la solicitud 2. Posteriormente, se utilizó el modelo2 previamente desarrollado para evaluar la oferta de apartamento en la zona sur de Cali de la siguiente manera:

  • “Oferta”: aquellos inmuebles cuyo valor ofrecido es menor al predicho por el modelo.
  • “Neutro”: aquellos cuyo valor ofrecido es igual al predicho por el modelo.
  • “Costosa”: aquellos cuyo valor ofrecido es mayor al predicho por el modelo.
predvivi2 <-predict(modelo2, newdata = vivienda2)

vivienda2$precio_predicho <- predvivi2

vivienda2$Valoracion <- ifelse(vivienda2$preciom < vivienda2$precio_predicho, "oferta", 
                              ifelse(vivienda2$preciom == vivienda2$precio_predicho, "neutral", "costosa"))

vivienda2
## # A tibble: 2,787 × 13
##       id tipo   areaconst parqueaderos banios habitaciones estrato zona  preciom
##    <dbl> <chr>      <dbl>        <dbl>  <dbl>        <dbl>   <dbl> <chr>   <dbl>
##  1  5098 Apart…        96            1      2            3       4 Zona…     290
##  2   698 Apart…        40            1      1            2       3 Zona…      78
##  3  8199 Apart…       194            2      5            3       6 Zona…     875
##  4  1241 Apart…       117            0      2            3       3 Zona…     135
##  5  5370 Apart…        78            0      1            3       3 Zona…     135
##  6  6975 Apart…        75            1      2            3       4 Zona…     220
##  7  5615 Apart…        72            2      2            3       3 Zona…     210
##  8  6262 Apart…        68            0      2            3       3 Zona…     105
##  9  7396 Apart…        58            1      2            2       3 Zona…     115
## 10  6949 Apart…        84            0      2            3       4 Zona…     220
## # ℹ 2,777 more rows
## # ℹ 4 more variables: longitud <dbl>, latitud <dbl>, precio_predicho <dbl>,
## #   Valoracion <chr>
oferta2 <- subset(vivienda2, 
                  estrato %in% solicitud2$estrato &
                  areaconst >= solicitud2$areaconst &
                  habitaciones >= solicitud2$habitaciones &
                  banios >= solicitud2$banios &
                  parqueaderos >= solicitud2$parqueaderos &
                  preciom <= 850 &
                  Valoracion=="oferta" )

oferta2
## # A tibble: 2 × 13
##      id tipo    areaconst parqueaderos banios habitaciones estrato zona  preciom
##   <dbl> <chr>       <dbl>        <dbl>  <dbl>        <dbl>   <dbl> <chr>   <dbl>
## 1  7182 Aparta…       573            3      8            5       5 Zona…     730
## 2  7512 Aparta…       300            3      5            6       5 Zona…     670
## # ℹ 4 more variables: longitud <dbl>, latitud <dbl>, precio_predicho <dbl>,
## #   Valoracion <chr>
library(leaflet)

# Coordenadas del centro de Cali
lat_cali <- 3.4516
long_cali <- -76.5320

# Crear el mapa
mapsol2 <- leaflet(oferta2) %>%
  addTiles() %>%
  addMarkers(
    lng = ~longitud,
    lat = ~latitud,
    popup = ~paste("ID:", id,
                   "<br>Zona:", enc2utf8(zona),
                   "<br>Tipo:", enc2utf8(tipo),
                   "<br>Estrato:", estrato,
                   "<br>Habitaciones:", habitaciones,
                   "<br>Baños:", banios,
                   "<br>Parqueadero:", parqueaderos,
                   "<br>Área construida:", areaconst,
                   "<br>Valoración:",Valoracion)
  ) %>%
  setView(lng = long_cali, lat = lat_cali, zoom = 12)

mapsol2

Se identificaron dos apartamentos en la zona sur de Cali que cumplen con los requerimientos establecidos en la solicitud 2. Es importante destacar que ambas viviendas se encuentran por debajo del costo previsto por el modelo desarrollado.

Conclusiones

  1. Calidad de los datos de ingreso al modelo: Se observó que los datos de ingreso al modelo son fundamentales para la precisión y confiabilidad de las predicciones. Es crucial contar con datos limpios, completos y representativos que capturen adecuadamente la diversidad y complejidad de los inmuebles en la ciudad de Cali. La calidad de los datos de ingreso afecta directamente la calidad de las predicciones del modelo, por lo que se recomienda realizar un proceso exhaustivo de limpieza, validación y mejora continua de los datos para garantizar resultados precisos y confiables.

  2. Uso de un modelo de regresión lineal múltiple para la estimación de precios de los inmuebles en la ciudad de Cali: El modelo de regresión lineal múltiple proporciona una herramienta poderosa para la estimación de precios de los inmuebles en la ciudad de Cali. Permite analizar la relación entre múltiples variables predictoras y el precio de los inmuebles, lo que ayuda a entender mejor los factores que influyen en los precios y a realizar predicciones precisas. Sin embargo, es importante tener en cuenta que este tipo de modelo asume ciertos supuestos que deben cumplirse para obtener resultados válidos. Además, es necesario realizar un análisis continuo de los datos y del modelo para identificar posibles mejoras y garantizar su validez y relevancia en un entorno cambiante.

  3. Impactos de un modelo que no cumple con los supuestos: Cuando un modelo de regresión lineal múltiple no cumple con los supuestos fundamentales, como la normalidad de los residuos, la homocedasticidad y la independencia de los errores, puede tener varios impactos negativos en las predicciones y en las conclusiones derivadas del modelo. Por ejemplo, las predicciones pueden ser sesgadas o imprecisas, lo que podría llevar a decisiones erróneas o a una interpretación incorrecta de los resultados. Además, los intervalos de confianza y los p-values de los coeficientes pueden no ser válidos, lo que afecta la confiabilidad de las inferencias realizadas a partir del modelo. Por lo tanto, es crucial realizar una validación exhaustiva de los supuestos del modelo y tomar medidas correctivas adecuadas para garantizar la precisión y validez de las predicciones.

Anexos

Estimaciones, validaciones y comparación del modelo 1

# Realizar estimaciones con el conjunto de prueba
predicciones_prueba <- predict(modelo1, newdata = datos_prueba)
predicciones_prueba
##         1         2         3         4         5         6         7         8 
##  434.7423  588.8713  867.5712  531.7796  457.7080  217.8096  302.4975  602.2316 
##         9        10        11        12        13        14        15        16 
##  380.4056  614.4028  591.3138  496.6142  564.1463  494.9849  545.7796  751.9783 
##        17        18        19        20        21        22        23        24 
##  805.0895  569.5539  732.4781  790.5468  855.4658  516.1830  882.0859  431.7232 
##        25        26        27        28        29        30        31        32 
##  250.9591  236.9803  148.3694  173.7361  201.7362  144.2847  240.0573  142.6093 
##        33        34        35        36        37        38        39        40 
##  257.4697  239.3233  274.5312  534.4714  185.1982  389.6651  150.0448  356.5230 
##        41        42        43        44        45        46        47        48 
##  175.4115  178.7042  166.4500  186.8072  267.1237  456.4602  384.4868  427.9086 
##        49        50        51        52        53        54        55        56 
##  577.9224  524.5396  499.6047  418.8813  404.7641  252.7893  186.8736  406.0009 
##        57        58        59        60        61        62        63        64 
##  738.2427  441.2160  561.5460  666.0444 1033.6687  860.0566  565.3293  482.3577 
##        65        66        67        68        69        70        71        72 
##  658.2732  627.3251  570.1391  369.8233  551.5516  679.8251  472.2387  643.4106 
##        73        74        75        76        77        78        79        80 
##  722.1522  807.5658  472.2387  496.7470  439.6274  757.5171  751.8074  670.1131 
##        81        82        83        84        85        86        87        88 
##  425.3914  452.4579  474.4744  467.6025  368.4294  439.6274  592.2801  674.6783 
##        89        90        91        92        93        94        95        96 
##  665.6464  610.6831  712.2152  720.8050  477.8805  462.5178  441.2363  490.8661 
##        97        98        99       100       101       102       103       104 
##  508.4780  374.5212  364.4613  419.4531  399.8049  331.7255  382.8394  225.4602 
##       105       106       107       108       109       110       111       112 
##  239.9500  117.1768  221.1603  195.0845  215.7481  204.8878  284.8404  162.2989 
##       113       114       115       116       117       118       119       120 
##  209.1213  353.9649  160.6236  219.7001  178.6378  606.8855  664.1701  273.9294 
##       121       122       123       124       125       126       127       128 
## 1074.5869  325.5870  186.4128  320.3500  300.4452  241.7326  435.2611  499.1264 
##       129       130       131       132       133       134       135       136 
##  778.6442  455.8998  513.0195  598.8928  474.4329  523.7470  666.1227  537.5941 
##       137       138       139       140       141       142       143       144 
##  407.4851  508.8524  234.2148  234.5295  289.3554  156.6052  247.4103  139.4245 
##       145       146       147       148       149       150       151       152 
##  487.9057  203.2124  487.8746  506.6358  545.7801  634.3081  600.3660  494.3081 
##       153       154       155       156       157       158       159       160 
##  977.9213  684.5775  527.8852  476.1746  719.1297  406.6521  564.3630 1107.5337 
##       161       162       163       164       165       166       167       168 
##  694.9734  795.6647  686.5888  833.2684  629.1467  617.6250  134.4399  555.6084 
##       169       170       171       172       173       174       175       176 
##  626.4672  409.1438  510.6101  454.2245  459.7030  746.0633  590.4803  453.3417 
##       177       178       179       180       181       182       183       184 
## 1072.2564  473.8156  741.3824  389.8689  949.8466  631.7255  186.8072  123.7124 
##       185       186       187       188       189       190       191       192 
##  323.5928  211.4643 1324.6045  215.5490  261.4886  160.6236  156.3901  274.5312 
##       193       194       195       196       197       198       199       200 
##  274.5312  258.4489  237.7273  258.4489  133.7059  193.3013  185.1319  215.5490 
##       201       202       203       204       205       206       207       208 
##  215.5490  381.2968  445.9478  384.0679  430.7799  574.2078  468.8916  410.6984 
##       209       210       211       212       213       214       215       216 
##  394.6632  608.7376  542.1319  636.3394  665.6141  136.1153  208.9062  103.5039 
##       217 
##  280.5064
## Verificacion de las estimaciones 
datos_prueba$precio_predicho <- predicciones_prueba 

datos_prueba$Valoracion <- ifelse(datos_prueba$preciom < datos_prueba$precio_predicho, "oferta", 
                              ifelse(datos_prueba$preciom == datos_prueba$precio_predicho, "neutral", "costosa"))

datos_prueba
## # A tibble: 217 × 13
##       id tipo  areaconst parqueaderos banios habitaciones estrato zona   preciom
##    <dbl> <chr>     <dbl>        <dbl>  <dbl>        <dbl>   <dbl> <chr>    <dbl>
##  1  1209 Casa        150            2      4            6       5 Zona …     320
##  2  1592 Casa        380            2      3            3       5 Zona …     780
##  3  4057 Casa        445            0      7            6       6 Zona …     750
##  4  4460 Casa        355            3      5            5       4 Zona …     625
##  5  7987 Casa        200            4      4            5       5 Zona …     420
##  6   141 Casa        160            0      2            3       3 Zona …     230
##  7  1276 Casa        117            0      3            4       4 Zona …     305
##  8  1899 Casa        300            0      5            6       5 Zona …     380
##  9  2014 Casa        330            0      3            0       3 Zona …     270
## 10  2730 Casa        319            0      5            4       5 Zona …     460
## # ℹ 207 more rows
## # ℹ 4 more variables: longitud <dbl>, latitud <dbl>, precio_predicho <dbl>,
## #   Valoracion <chr>
# Calcular métricas de evaluación
error_cuadratico_medio <- mean((datos_prueba$preciom - predicciones_prueba)^2)
error_absoluto_medio <- mean(abs(datos_prueba$preciom - predicciones_prueba))
r_cuadrado <- 1 - sum((datos_prueba$preciom - predicciones_prueba)^2) / sum((datos_prueba$preciom - mean(datos_prueba$preciom))^2)

# Imprimir resultados
print("Métricas de evaluación del modelo 1:")
## [1] "Métricas de evaluación del modelo 1:"
print(paste("Error Cuadrático Medio:", error_cuadratico_medio))
## [1] "Error Cuadrático Medio: 32793.5876527063"
print(paste("Error Absoluto Medio:", error_absoluto_medio))
## [1] "Error Absoluto Medio: 109.526481171784"
print(paste("R cuadrado:", r_cuadrado))
## [1] "R cuadrado: 0.609399717419335"

Estas métricas sugieren que el modelo 1 tiene un ajuste razonable a los datos, con un nivel moderado de precisión en las predicciones. El Error Cuadrático Medio indica que, en promedio, las predicciones del modelo difieren del valor real en alrededor de 32,793.59 unidades monetarias. Mientras tanto, el Error Absoluto Medio muestra que, en promedio, las predicciones tienen un error absoluto de aproximadamente 109.53 unidades monetarias. El R cuadrado de 0.6094 indica que alrededor del 61% de la variabilidad en los precios de las casas en la zona norte de Cali puede ser explicada por las variables predictoras incluidas en el modelo. Esto sugiere que el modelo proporciona una estimación razonable de los precios de las casas, aunque podría mejorarse para capturar más completamente la variabilidad en los datos.

Estimaciones, validaciones y comparación del modelo 2

# Realizar estimaciones con el conjunto de prueba
predicciones_prueba2 <- predict(modelo2, newdata = datos_prueba2)

predicciones_prueba2
##           1           2           3           4           5           6 
##  677.441440  193.765977  132.555379  479.649067   15.388900  184.506894 
##           7           8           9          10          11          12 
##  176.790991  189.136435  219.483424  142.317304  275.037921  170.618269 
##          13          14          15          16          17          18 
##  170.618269  178.334172  266.008991  337.166524  337.166524  142.317304 
##          19          20          21          22          23          24 
##  370.952360  325.676409  182.963713  187.593255  236.458409  187.593255 
##          25          26          27          28          29          30 
##   27.734343   16.932080   66.837573    9.216178   16.932080   68.380753 
##          31          32          33          34          35          36 
##   66.837573  170.618269  193.765977  376.772595  143.357642   35.097760 
##          37          38          39          40          41          42 
##  132.325226  416.895288  336.262299  272.468182  305.901531  328.762770 
##          43          44          45          46          47          48 
##  493.875663  208.845295  351.557991  154.662748  177.981685  198.043032 
##          49          50          51          52          53          54 
##  267.322019  275.037921  123.799138  201.632235  193.413490  184.154407 
##          55          56          57          58          59          60 
##  201.481879  190.327129  215.873346  135.792095  210.740962  225.777155 
##          61          62          63          64          65          66 
##  336.126186  247.138339  247.490825  313.330965  330.817645  250.347033 
##          67          68          69          70          71          72 
##  376.772595  275.037921   13.845719  186.050074   23.104802   66.313856 
##          73          74          75          76          77          78 
##   69.923934  321.734719  114.540055  148.137539  175.247811  211.931656 
##          79          80          81          82          83          84 
##  226.696484  145.051178  321.857053  190.679616  123.799138  257.560094 
##          85          86          87          88          89          90 
##  313.330965  241.087950  329.953464  228.742507  248.803853  360.939407 
##          91          92          93          94          95          96 
##  318.246975  510.103874  569.792491  407.758539  471.646696  533.373915 
##          97          98          99         100         101         102 
##  641.567780  431.286755  555.882667  421.008208  534.917096  337.791700 
##         103         104         105         106         107         108 
##  331.898027  510.226208  627.155439  519.485291  471.933164  568.867067 
##         109         110         111         112         113         114 
##  611.744509  552.796306  604.007732  248.803853  384.991340  690.663087 
##         115         116         117         118         119         120 
##  604.007732  453.414999  322.359895  259.606116  499.710413  478.772864 
##         121         122         123         124         125         126 
##  289.946010  306.928090  383.448160  469.010939  348.593963  582.689674 
##         127         128         129         130         131         132 
##  336.248520  487.364969  424.963677  569.153536  334.705339  572.239897 
##         133         134         135         136         137         138 
##  563.885039  912.070892  769.012806 1187.804454  383.297804  325.446256 
##         139         140         141         142         143         144 
##  207.654601  322.359895  584.470102  525.658013 1005.709156  279.084824 
##         145         146         147         148         149         150 
##  541.376287  449.071926  339.334881  540.737331  541.872034  498.662980 
##         151         152         153         154         155         156 
##  979.761556  603.340754  580.479516  507.038712  546.005828  523.210607 
##         157         158         159         160         161         162 
##  689.119907  618.448095  346.698297  332.809672  228.742507   23.104802 
##         163         164         165         166         167         168 
##   63.751212  635.740449   73.390803  129.971860  264.752279  562.746172 
##         169         170         171         172         173         174 
##  298.702250  124.961810  140.041128  124.961810  186.050074  198.395518 
##         175         176         177         178         179         180 
##  551.095675  478.042475  204.568240  189.136435   88.470122  313.495100 
##         181         182         183         184         185         186 
##  694.761817  317.744133  300.919503  247.260672  328.410283  375.229415 
##         187         188         189         190         191         192 
##  127.925837   38.536607   81.106706   67.772505  170.618269  201.129393 
##         193         194         195         196         197         198 
##  201.481879  120.209935  123.799138  138.878456  117.245907  250.605208 
##         199         200         201         202         203         204 
##  184.154407  247.260672  184.154407  213.188368  204.568240  251.537728 
##         205         206         207         208         209         210 
##  174.895325  177.981685  170.618269  199.938699  444.386068  132.325226 
##         211         212         213         214         215         216 
##  444.386068  267.322019  204.718596  170.618269  143.507998  198.043032 
##         217         218         219         220         221         222 
##  198.043032  254.854241  119.169596  170.618269  134.248915  169.075089 
##         223         224         225         226         227         228 
##  170.618269  242.795266  178.334172  404.549844   97.729205  353.847945 
##         229         230         231         232         233         234 
##   55.225123  124.839476  477.582170  525.888165  451.871818  356.187532 
##         235         236         237         238         239         240 
##  279.667463  331.849131  360.178119  290.469726  321.857053  406.093025 
##         241         242         243         244         245         246 
## 1001.474226  420.484491  379.981290  398.377122  267.608488  452.094875 
##         247         248         249         250         251         252 
##  259.606116  300.985521  238.001590  412.035594  422.551389  331.849131 
##         253         254         255         256         257         258 
##  236.772900  277.771796  284.297004  321.857053  352.720663  221.313073 
##         259         260         261         262         263         264 
## 1154.601581  259.606116  326.486594  221.313073  341.918399  383.297804 
##         265         266         267         268         269         270 
##  251.890214  316.581461  398.377122  366.989796  418.274333  311.571411 
##         271         272         273         274         275         276 
##  224.982073  207.302115  317.915332  158.272825  247.948524  181.068046 
##         277         278         279         280         281         282 
##  210.740962  181.650685  239.774923  176.790991  207.302115  234.915229 
##         283         284         285         286         287         288 
##  317.105178  319.503687  349.634302  313.617434  375.229415  325.676409 
##         289         290         291         292         293         294 
##  368.173342 1092.571096  186.050074  286.241568  314.141150  366.322818 
##         295         296         297         298         299         300 
##  302.815170  591.159445  423.068010  396.833942  254.854241  232.345489 
##         301         302         303         304         305         306 
##  240.585108  198.395518  224.277100  182.963713  117.245907  231.326025 
##         307         308         309         310         311         312 
##   70.426776  347.804652  268.742866  193.765977  338.479552  242.508797 
##         313         314         315         316         317         318 
##  242.508797  136.144582  198.395518  467.181289  617.222283  250.577186 
##         319         320         321         322         323         324 
##  201.129393  232.059020  267.322019  117.626416    4.939122  340.252885 
##         325         326         327         328         329         330 
##  178.334172  279.667463  257.710450  392.707243  230.285687  305.901531 
##         331         332         333         334         335         336 
##  259.606116  268.865199  259.606116  209.197782  333.039825  171.621337 
##         337         338         339         340         341         342 
##  234.915229  382.945317  259.606116  268.865199  268.865199  247.777294 
##         343         344         345         346         347         348 
##  275.037921  337.669366  178.334172  178.334172  343.842088  274.685435 
##         349         350         351         352         353         354 
##  340.375219  349.634302  233.888670  287.383365  262.692477  398.377122 
##         355         356         357         358         359         360 
##  248.451367  398.443140  244.174311  251.890214  146.594359  242.631131 
##         361         362         363         364         365         366 
##  209.197782  231.828868   82.269377  159.693672  127.925837   82.269377 
##         367         368         369         370         371         372 
##  351.557991  270.638532  523.891364  324.943414   32.011399  413.924166 
##         373         374         375         376         377         378 
##  228.156098  376.223786  311.054789  315.331845  312.597970  349.634302 
##         379         380         381         382         383         384 
##  636.578657  120.209935   53.329457   59.502179   84.413518   72.134091 
##         385         386         387         388         389         390 
##    3.043456  117.790551   85.383761  205.247240  151.073544  167.531908 
##         391         392         393         394         395         396 
##   25.838677  120.712777  141.461975   61.045359  128.278323  383.584273 
##         397         398         399         400         401         402 
##  319.151200  268.865199  293.269618   27.381857   65.674901   74.200989 
##         403         404         405         406         407         408 
##   73.390803   54.492129  229.259128  287.383365  305.901531  350.014810 
##         409         410         411         412         413         414 
##  397.204305  132.325226  396.833942  316.417326  362.073785  241.604572 
##         415         416         417         418         419         420 
##  358.254429  270.638532  255.206728  143.479976  539.833106  564.523994 
##         421         422         423         424         425         426 
##  453.414999  722.336883  563.246084  648.997214  620.867479  554.245447 
##         427         428         429         430         431         432 
##  613.752536  471.933164  380.878420  546.005828  447.242277  541.089818 
##         433         434         435         436         437         438 
##  534.564609  502.796774  495.080872  519.485291  542.280512  267.779718 
##         439         440         441         442         443         444 
##  490.164861  467.303623  849.610678  433.706138  515.142218  602.178082 
##         445         446         447         448         449         450 
##  517.589624  605.264443  540.737331  453.414999  602.178082  583.659916 
##         451         452         453         454         455         456 
##  513.246551  525.658013  565.075733  471.933164  540.737331  602.178082 
##         457         458         459         460         461         462 
##  576.230483  713.458308  615.047243  690.663087  620.982717  752.037821 
##         463         464         465         466         467         468 
##  584.470102  467.303623  450.328638  476.210220  612.627859  479.649067 
##         469         470         471         472         473         474 
##  599.091721  459.940207  540.450863  590.758062  392.843356  534.707818 
##         475         476         477         478         479         480 
##  583.770384  857.613049  599.779573  533.021429  549.378658  650.303146 
##         481         482         483         484         485         486 
##  546.910053  468.846803  710.371947  617.609887  408.949233  563.885039 
##         487         488         489         490         491         492 
##  533.021429  124.315759  401.463483   78.020345  724.784288  207.654601 
##         493         494         495         496         497         498 
##  263.732816  107.986824  302.692837  193.413490  276.581102  305.901531 
##         499         500         501         502         503         504 
##  241.087950  293.269618  328.029775  270.408380  440.947221  270.408380 
##         505         506         507         508         509         510 
##  270.408380  328.410283  328.410283  258.062936  215.370504  425.621958 
##         511         512         513         514         515         516 
##  363.114124  398.377122  434.222760  434.222760  457.017981  337.288858 
##         517         518         519         520         521         522 
##  213.827323  290.850235   66.837573   87.631914  295.099268  402.503822 
##         523         524         525         526         527         528 
##  323.393138  760.738069  455.181236  293.556087  353.740126  178.334172 
##         529         530         531         532         533         534 
##  282.467355  163.339192  389.851034  312.597970  321.857053  347.731540 
##         535         536         537         538         539         540 
##  321.333336  344.128557  393.223864  328.564601  305.377814  297.899160 
##         541         542         543         544         545         546 
##  620.982717  673.450854  444.033582  358.254429  189.136435  559.391610 
##         547         548         549         550         551         552 
##  605.449297  375.229415  316.064839  245.881627  250.347033  295.099268 
##         553         554         555         556         557         558 
##  408.152827  506.399757  375.581901  372.143054  170.618269  164.445547 
##         559         560         561         562         563         564 
##  265.778838  123.799138  248.301011  193.413490  316.064839  302.312328 
##         565         566         567         568         569         570 
##  111.453694  146.594359  340.375219  170.618269  170.618269  210.740962 
##         571         572         573         574         575         576 
##  275.037921  198.395518  264.235658  164.445547  193.413490  187.593255 
##         577         578         579         580         581         582 
##  186.050074  251.080028  257.710450  322.237561  116.083235  247.260672 
##         583         584         585         586         587         588 
##  230.285687  320.694381  311.435298  320.694381  173.704630  193.765977 
##         589         590         591         592         593         594 
##  341.918399  120.712777  226.172767  251.890214  190.679616  258.062936 
##         595         596         597         598         599         600 
##  317.608020  195.309157  263.732816  275.037921  259.253630  231.828868 
##         601         602         603         604         605         606 
##  247.138339  253.433394  172.161450  146.594359  170.618269  126.885499 
##         607         608         609         610         611         612 
##  319.151200  198.395518  184.154407  209.197782  201.481879  123.799138 
##         613         614         615         616         617         618 
##  176.790991  143.507998  236.458409  170.618269  201.481879  320.694381 
##         619         620         621         622         623         624 
##  234.915229  176.790991  143.507998  348.091121  275.037921  170.618269 
##         625         626         627         628         629         630 
##  123.799138  320.694381  186.050074  109.910513  140.421637   82.419733 
##         631         632         633         634         635         636 
##  122.255957  327.554955  203.175416  146.594359  126.533012  123.799138 
##         637         638         639         640         641         642 
##  251.890214  170.618269  117.626416  185.697588  162.902367  248.803853 
##         643         644         645         646         647         648 
##  138.878456  365.970332  256.519755  186.050074  308.348937  355.520555 
##         649         650         651         652         653         654 
##  320.694381  317.608020  221.190739  323.780742  146.594359  201.129393 
##         655         656         657         658         659         660 
##  399.333894  297.899160  201.129393  192.955791  192.955791  199.938699 
##         661         662         663         664         665         666 
##  134.248915  189.136435  293.433754  293.433754  236.458409  204.215754 
##         667         668         669         670         671         672 
##  146.594359  193.413490  181.420533  259.253630  267.322019  278.124282 
##         673         674         675         676         677         678 
##  247.260672  245.717492  259.606116  346.928449  123.799138  274.685435 
##         679         680         681         682         683         684 
##  259.606116  198.395518  348.091121  262.570144  162.902367  123.799138 
##         685         686         687         688         689         690 
##  276.581102  264.113324  336.126186  360.150096  376.772595  201.481879 
##         691         692         693         694         695         696 
##  145.051178  196.852338  244.174311  195.309157  208.845295  172.161450 
##         697         698         699         700         701         702 
##  182.963713  116.083235  123.799138  182.963713  231.706534  123.799138 
##         703         704         705         706         707         708 
##  282.401338  170.618269  170.618269  386.031678  390.661220  199.938699 
##         709         710         711         712         713         714 
##  325.323922  260.362275  146.594359  242.128289  208.845295  201.129393 
##         715         716         717         718         719         720 
##  216.561198  198.043032  202.794907  143.507998  323.780742  245.214650 
##         721         722         723         724         725         726 
##  186.050074  201.129393  208.845295  193.413490  266.969533  193.765977 
##         727         728         729         730         731         732 
##  250.224700  320.694381  207.302115  236.458409  323.780742  215.751012 
##         733         734         735         736         737         738 
##  195.309157  232.869206  256.167269  201.481879  203.025060  201.481879 
##         739         740         741         742         743         744 
##  190.679616  259.606116  297.710809  343.489602  198.395518  270.055894 
##         745         746         747         748         749         750 
##  198.395518  280.735823  251.890214  241.087950  123.799138  345.004760 
##         751         752         753         754         755         756 
##  265.778838  146.594359  170.618269  320.694381  390.661220  243.671469 
##         757         758         759         760         761         762 
##  198.395518  184.506894  245.214650  262.570144  256.519755  297.833142 
##         763         764         765         766         767         768 
##  398.377122  268.512713  201.481879  209.348138  162.902367  186.050074 
##         769         770         771         772         773         774 
##  158.272825  170.618269  182.963713  215.018017  116.083235  189.136435 
##         775         776         777         778         779         780 
##  216.561198  216.561198  266.969533  326.486594  239.544770  189.577550 
##         781         782         783         784         785         786 
##  123.799138  170.618269  128.428679  192.222796  320.694381  212.284143 
##         787         788         789         790         791         792 
##  456.501360  122.255957  265.778838  174.895325  126.885499  149.261616 
##         793         794         795         796         797         798 
##  193.413490  273.875249  170.618269  131.515040  181.923375  352.720663 
##         799         800         801         802         803         804 
##  129.238865  170.618269  348.119143  262.692477  196.499851  262.570144 
##         805         806         807         808         809         810 
##  212.284143  204.568240  247.138339  203.025060  198.395518  216.913684 
##         811         812         813         814         815         816 
##  275.037921  189.136435  313.330965  329.953464  259.544389  247.260672 
##         817         818         819         820         821         822 
##  275.037921  320.694381  233.372048  345.032783  196.974671  198.043032 
##         823         824         825         826         827         828 
##  136.144582  185.697588  250.347033  555.495064  733.658698  138.497948 
##         829         830         831         832         833         834 
##  341.659953  266.617046  328.762770  267.322019  166.778039   66.837573 
##         835         836         837 
##  425.867902  328.029775  663.668054
# Verificacion de las estimaciones 

datos_prueba2$precio_predicho <- predicciones_prueba2 

datos_prueba2$Valoracion <- ifelse(datos_prueba2$preciom < datos_prueba2$precio_predicho, "oferta", 
                              ifelse(datos_prueba2$preciom == datos_prueba2$precio_predicho, "neutral", "costosa"))

datos_prueba2
## # A tibble: 837 × 13
##       id tipo   areaconst parqueaderos banios habitaciones estrato zona  preciom
##    <dbl> <chr>      <dbl>        <dbl>  <dbl>        <dbl>   <dbl> <chr>   <dbl>
##  1  8199 Apart…       194            2      5            3       6 Zona…     875
##  2  6975 Apart…        75            1      2            3       4 Zona…     220
##  3   822 Apart…        73            1      2            3       3 Zona…     150
##  4  8299 Apart…       125            2      3            3       6 Zona…     305
##  5   301 Apart…        57            0      1            3       3 Zona…     115
##  6  5534 Apart…        69            1      2            3       4 Zona…     175
##  7  5368 Apart…        64            1      2            3       4 Zona…     226
##  8   693 Apart…        72            1      2            3       4 Zona…     225
##  9   741 Apart…        54            1      2            3       5 Zona…     164
## 10  2406 Apart…        72            0      2            3       4 Zona…     215
## # ℹ 827 more rows
## # ℹ 4 more variables: longitud <dbl>, latitud <dbl>, precio_predicho <dbl>,
## #   Valoracion <chr>
# Calcular métricas de evaluación
error_cuadratico_medio2 <- mean((datos_prueba2$preciom - predicciones_prueba2)^2)
error_absoluto_medio2 <- mean(abs(datos_prueba2$preciom - predicciones_prueba2))
r_cuadrado2 <- 1 - sum((datos_prueba2$preciom - predicciones_prueba2)^2) / sum((datos_prueba2$preciom - mean(datos_prueba2$preciom))^2)

# Imprimir resultados
print("Métricas de evaluación del modelo 2:")
## [1] "Métricas de evaluación del modelo 2:"
print(paste("Error Cuadrático Medio:", error_cuadratico_medio2))
## [1] "Error Cuadrático Medio: 8409.31810711649"
print(paste("Error Absoluto Medio:", error_absoluto_medio2))
## [1] "Error Absoluto Medio: 57.2677618622234"
print(paste("R cuadrado:", r_cuadrado2))
## [1] "R cuadrado: 0.755154643574454"

Las métricas de evaluación del modelo 2 sugieren que este modelo tiene un buen ajuste a los datos observados. Con un Error Cuadrático Medio relativamente bajo y un R cuadrado significativo, el modelo 2 demuestra una capacidad considerable para explicar la variabilidad en los precios de los apartamentos en la zona sur de Cali utilizando las variables predictoras seleccionadas.

# Métricas del modelo 1
error_cuadratico_medio_1 <- 32793.59
error_absoluto_medio_1 <- 109.53
r_cuadrado_1 <- 0.6094

# Métricas del modelo 2
error_cuadratico_medio_2 <- 8409.32
error_absoluto_medio_2 <- 57.27
r_cuadrado_2 <- 0.7552

library(knitr)

# Crear un marco de datos con las métricas de ambos modelos
metricas <- data.frame(
  Modelo = c("Modelo 1", "Modelo 2"),
  Error_Cuadratico_Medio = c(error_cuadratico_medio_1, error_cuadratico_medio_2),
  Error_Absoluto_Medio = c(error_absoluto_medio_1, error_absoluto_medio_2),
  R_Cuadrado = c(r_cuadrado_1, r_cuadrado_2)
)

# Imprimir el cuadro
kable(metricas, format = "markdown")
Modelo Error_Cuadratico_Medio Error_Absoluto_Medio R_Cuadrado
Modelo 1 32793.59 109.53 0.6094
Modelo 2 8409.32 57.27 0.7552
# Comparación de R cuadrado
if (r_cuadrado_1 > r_cuadrado_2) {
  cat("El modelo 1 tiene un R cuadrado mayor, lo que sugiere un mejor ajuste a los datos.\n")
} else if (r_cuadrado_1 < r_cuadrado_2) {
  cat("El modelo 2 tiene un R cuadrado mayor, lo que sugiere un mejor ajuste a los datos.\n")
} else {
  cat("Ambos modelos tienen el mismo R cuadrado.\n")
}
## El modelo 2 tiene un R cuadrado mayor, lo que sugiere un mejor ajuste a los datos.
# Comparación de Error Cuadrático Medio
if (error_cuadratico_medio_1 < error_cuadratico_medio_2) {
  cat("El modelo 1 tiene un Error Cuadrático Medio menor, lo que indica una mejor precisión en las predicciones.\n")
} else if (error_cuadratico_medio_1 > error_cuadratico_medio_2) {
  cat("El modelo 2 tiene un Error Cuadrático Medio menor, lo que indica una mejor precisión en las predicciones.\n")
} else {
  cat("Ambos modelos tienen el mismo Error Cuadrático Medio.\n")
}
## El modelo 2 tiene un Error Cuadrático Medio menor, lo que indica una mejor precisión en las predicciones.
# Comparación de Error Absoluto Medio
if (error_absoluto_medio_1 < error_absoluto_medio_2) {
  cat("El modelo 1 tiene un Error Absoluto Medio menor, lo que indica una mejor precisión en las predicciones.\n")
} else if (error_absoluto_medio_1 > error_absoluto_medio_2) {
  cat("El modelo 2 tiene un Error Absoluto Medio menor, lo que indica una mejor precisión en las predicciones.\n")
} else {
  cat("Ambos modelos tienen el mismo Error Absoluto Medio.\n")
}
## El modelo 2 tiene un Error Absoluto Medio menor, lo que indica una mejor precisión en las predicciones.

Basándonos en las métricas de evaluación de ambos modelos, se puede concluir que el Modelo 2, destinado a predecir los precios de apartamentos en la zona sur de Cali, supera al Modelo 1, utilizado para casas en la zona norte de Cali, en varios aspectos clave. En primer lugar, el Modelo 2 exhibe un R cuadrado más alto, lo que indica que es capaz de explicar una mayor proporción de la variabilidad en los datos de salida para apartamentos en el sur de Cali. Además, el Modelo 2 presenta un Error Cuadrático Medio y un Error Absoluto Medio inferiores en comparación con el Modelo 1, lo que sugiere una mejor precisión en las predicciones realizadas específicamente para apartamentos en la zona sur. Estas conclusiones respaldan la elección del Modelo 2 como el más adecuado para el propósito de modelar y predecir los precios de apartamentos en esta área específica de la ciudad. Sin embargo, es importante tener en cuenta otros factores y consideraciones específicas del contexto antes de tomar decisiones finales basadas únicamente en estas métricas de evaluación del modelo.