1. Introduccion

Durante los últimos años, el mercado de bienes raices ha venido creciendo de manera significativa en la ciudad de Cali; sólo en el 2022, las ventas del sector alcanzaron los 6.100 millones de pesos. Esto, debido al crecimiento de la población, así como al aumento de la inversión extranjera directa y la creación de nuevos proyectos inmobiliarios a lo largo de la ciudad.

Es por ello que, teniendo en cuenta este contexto favorable y la amplia experiencia de la compañia B&C, a continuación se presenta un informe detallado sobre el análisis exploratorio de los datos almacenados en las bases suministradas por la compañía, el cual tiene como propósito contribuir al desarrollo de su negocio, sirviendo como insumo para la toma de decisiones informadas.

Es importante señalar que, el siguiente es un análisis estadistico realizado con el lenguaje de programación R, por lo que se hará uso de tablas, gráficas y análisis de valores estadísticos para facilitar la visualización de los datos y su respectiva comprensión. Por último, se presentaran unas conclusiones a partir del análisis de los resultados encontrados.

2. Objetivo general

Realizar un análisis descriptivo de la base de datos inmobiliarias en Cali perteneciente a la emprea B&C, con el fin de encontrar un valor agregado en los datos que puedan beneficiar la toma de decisiones de la compañia.

Objetivos especificos

  • Determinar el precio de las viviendas en diferentes zonas.
  • Estimar el tipo de viviendas más vendidas.
  • Establecer las características más buscadas en las viviendas.

3. Métodos

En esta sección se enuncian de forma general los métodos estadisticos y herramientas utilizadas para realizar el análisis.

Análisis descriptivo de los datos

El análisis descriptivo de los datos es una técnica estadística que se utiliza para describir y resumir los datos existentes. Su objetivo es identificar patrones, tendencias y características clave de los datos, sin hacer predicciones sobre el futuro. Para orientar el análisis este se basa en una o varias preguntas de investigación y no tiene una hipótesis. Además, incluye la recopilación de datos relacionados, posteriormente, los organiza, tabula y describe el resultado. Un análisis básico descriptivo implica el cálculo de las medidas simples de composición y distribución de variables. Dependiendo del tipo de datos, pueden ser proporciones, tasas, razones o promedios.

R

R es un lenguaje de programación estadística que se utiliza ampliamente en la investigación y el análisis de datos. Es un software libre y de código abierto que permite a los usuarios acceder y modificar el código fuente, lo que lo hace muy flexible y personalizable. Asimismo, es especialmente útil para el análisis y cálculo estadístico, y ofrece una amplia gama de herramientas para la visualización de datos y la creación de gráficos de alta calidad. Además, de ser multiplataforma, lo que significa que se puede utilizar en diferentes sistemas operativos.

4. Resultados

En primera instancia se realiza una descripción de cada una de las variables encontradas en la base de datos, como se muestra a continuación:

  1. id: Identificador de la base de datos.
  2. zona: (Variable categorica nominal). Ubicación zonal del inmueble en la ciudad.
  3. piso: (variable cuantitativa discreta). Cantidad de pisos con los que cuenta el inmueble.
  4. estrato: (variable cuantitativa discreta). Corresponde al estrato socioeconomico al cual pertenece la vivienda, por sus características físicas y el entorno cercano que la rodea.
  5. preciom: (Variable cuantitativa continua). Costo de venta del inmueble.
  6. areaconst: (Variable cuantitativa continua). Corresponde al área construida del inmueble en mts2.
  7. parquea: (Variable cuantitativa discreta). Cantidad de parqueaderos con los que cuenta el inmueble.
  8. baños: (Variable cuantitativa discreta). Cantidad de baños con los que cuenta el inmueble.
  9. habitac: (Variable cuantitativa discreta). Número de habitaciones con las que cuenta el inmueble.
  10. tipo: (Variable categórica nominal). Tipo de inmueble (apartamento o casa).
  11. barrio: (Variable categórica nominal). Ubicación barrial del inmueble.
  12. latitud: (Variable cuantitativa continua). Latitud geografica del inmueble.
  13. longitud: (Variable cuantitativa continua). Longitud geografica del inmueble.

De lo anterior podemos observar que la mayoria de las variables son cuantitativas discretas o continuas. A continuación se muestra un resumén de las carateristicas de estas variables:

summary(vivienda_faltantes[c("piso", "estrato", "preciom", "parquea", "banios", "habitac", "areaconst")])
##       piso           estrato         preciom          parquea      
##  Min.   : 1.000   Min.   :3.000   Min.   :  58.0   Min.   : 1.000  
##  1st Qu.: 2.000   1st Qu.:4.000   1st Qu.: 220.0   1st Qu.: 1.000  
##  Median : 3.000   Median :5.000   Median : 330.0   Median : 2.000  
##  Mean   : 3.772   Mean   :4.634   Mean   : 434.2   Mean   : 1.836  
##  3rd Qu.: 5.000   3rd Qu.:5.000   3rd Qu.: 540.0   3rd Qu.: 2.000  
##  Max.   :12.000   Max.   :6.000   Max.   :1999.0   Max.   :10.000  
##  NA's   :2641     NA's   :3       NA's   :2        NA's   :1606    
##      banios          habitac         areaconst   
##  Min.   : 0.000   Min.   : 0.000   Min.   :  30  
##  1st Qu.: 2.000   1st Qu.: 3.000   1st Qu.:  80  
##  Median : 3.000   Median : 3.000   Median : 123  
##  Mean   : 3.112   Mean   : 3.605   Mean   : 175  
##  3rd Qu.: 4.000   3rd Qu.: 4.000   3rd Qu.: 229  
##  Max.   :10.000   Max.   :10.000   Max.   :1745  
##  NA's   :3        NA's   :3        NA's   :3

Del resumen de resultado anterior se puede destacar que para cada una de las variables:

piso: El rango de los datos esta entre 1 y 12. Los inmuebles tiene una media de pisos de 3.8 con una mediana de 3. Por otro lado, existen 2641 datos vacios lo cual puede generar incosistencias en analisis posteriores. A partir del boxplot, se puede obsevar que los datos mayores a 10 se pueden considerar como atipicos.

estrato: El rango de los datos esta entre 3 y 6. Se evidencian unicamente 3 datos vacios. El estrato promedio de los inmuebles es de 4.6 con una mediana de 5. A partir del boxplot, se puede obsevar que la disatribución de los datos esta bien definida, y no hay presencia de datos atipicos.

preciom: El rango de los datos esta entre 58 y 1.999. Se evidencian unicamente 2 datos vacios. A partir del boxplot, se puede obsevar que la distribución de los datos esta bien definida, con un sesgo de los datos sobre los precios más bajos. Por otro lado, se identifica una gran cantidad de datos atipicos prar precios de vivienda elevados.

parquea: El rango de los datos esta entre 1 y 10 parqueaderos. Se evidencia un gran numero de datos vacios los cuales pueden significar que el inmueble no viene incluido con parqueadero, por lo cual, estos datos pueden ser reemplazados por 0. La media de parqueaderos es 1.8 y la mediana es 2. A partir del boxplot, se puede obsevar que la distribución de los datos esta bien definida, con un sesgo de los datos sobre un numero de parqueaderos más bajos. Por otro lado, se identifica un grupo de datos atipicos que indican inmuebles con una gran cantidad de parqueaderos.

banios: El rango de los baños esta entre 0 y 10. Se observan unicamente 3 datos nulos. La cantidad de baños promedio es de 3.1 con una mediana de 3. El boxplot indica una distribución bien definida de los datos con un pequeño numero de datos atipicos por encima de los 7 baños por inmueble.

habitac: El rango de los datos esta entre 0 y 1 habitaciones. Se observan unicamente 3 datos nulos. El número de habitaciones promedio por inmueble es 3.6 con una mediana de 3.0 A partir del boxplot se pueden observar un conjunto de datos atipicos para una cantidad de habitaciones menores a 1 y mayores a 5.

areaconst: El rango del área para los inmuebles esta entre 30 y 1745 mts2. Se observan unicamente 3 datos nulos. El área promedio de todos los datos es 175 mts2 con una mediana de 123. A partir del boxplot se pueden observar un conjunto de datos atipicos para áreas superiores a 1.745.

datos_cuantitativos_discretos <- vivienda_faltantes[c("piso", "estrato", "preciom", "parquea", "banios", "habitac", "areaconst")]
par(mfrow = c(2, ncol(datos_cuantitativos_discretos)/2))
invisible(lapply(1:ncol(datos_cuantitativos_discretos), function(i) boxplot(
  datos_cuantitativos_discretos[, i], 
  ylab="Frecuencia",
  main = names(datos_cuantitativos_discretos)[i]
)))

En cuanto a los datos cualitativos, para la distribución de inmuebles por zona se puede observar que más del 50% de las viviendas se encuentran en la zona sur de la ciudad, cerca del 25 en la zona norte, alrededor del 15% en la zona oeste y el restante en la zona del centro y oriente.

zona_viviendas <- table(vivienda_faltantes$zona)
porcentajes_zonas <- round((zona_viviendas / sum(zona_viviendas)) * 100, 1)

pie(zona_viviendas,
    labels = paste(zona_viviendas, "(", porcentajes_zonas, "%",")"),  
    main = "Distribución de inmuebles por zona",
    col = topo.colors(length(zona_viviendas)),
    radius = 0.9
)
legend("bottomright", 
       legend = names(zona_viviendas), 
       cex = 1,
       fill = topo.colors(length(zona_viviendas))
)

La distribución de inmuebles por tipo indica que cerca del 60% son apartamentos y 40% casas.

# Se normalizan los datos de tipo
vivienda_faltantes$tipo <- toupper(vivienda_faltantes$tipo)
vivienda_faltantes$tipo <- ifelse(vivienda_faltantes$tipo == "APTO", "APARTAMENTO", vivienda_faltantes$tipo)

tipo_viviendas <- table(vivienda_faltantes$tipo)
porcentajes_tipo <- round((tipo_viviendas / sum(tipo_viviendas)) * 100, 1)

pie(tipo_viviendas,
    labels = paste(tipo_viviendas, "(", porcentajes_tipo, "%",")"),  
    main = "Distribución de inmuebles por tipo",
    col = topo.colors(length(tipo_viviendas)),
    radius = 0.9
)
legend("topright", 
       legend = names(tipo_viviendas), 
       cex = 1,
       fill = topo.colors(length(tipo_viviendas))
)

En consiguiente buscaremos evaluar el precio de las viviendas en las diferentes zonas de Cali, que como se observa en el siguiente grafico, la variación de los precios encontrados es amplia, no obstante, se puede destacar que la zona oeste de Cali cuenta con un precio medio superior a las demás zonas.

boxplot(preciom ~ zona, 
        data = vivienda_faltantes, 
        main = "Distribucion de precio por zona",
        col = "green",
        xlab = "Zona de la ciudad",
        ylab = "Precio del inmueble"
        )

La distribución de los datos entorno al tipo de vivienda se puede observar que la casa, es el inmueble cuyo precio de venta media es superior a los apartamentos.

boxplot(preciom ~ tipo, 
        data = vivienda_faltantes, 
        main = "Distribucion de precio por tipo",
        col = "pink",
        xlab = "Tipo",
        ylab = "Precio del inmueble"
        )

En cuanto a la distribución precio de las viviendas por estrato, como es de esperarse este aumenta a medida que el estato es mayor.

boxplot(preciom ~ estrato, 
        data = vivienda_faltantes, 
        main = "Distribucion de precio por estrato",
        col = "blue",
        xlab = "Estrato",
        ylab = "Precio del inmueble"
        )

En consiguiente buscaremos evaluar la distribución de precio de las viviendas por el piso en que se ubican, en el cual no se encuentra una difencia significativa entrono al valor medio, siendo el piso 5 el menos cotizado y el 12 el mayor.

boxplot(preciom ~ piso, 
        data = vivienda_faltantes, 
        main = "Distribucion de precio por cantidad de pisos",
        col = "magenta",
        xlab = "Pisos",
        ylab = "Precio del inmueble"
        )

Acto seguido, se presenta la distribución del precio con la cantidad de habitaciones. Donde se puede observar una variación grande del valor del inmueble cuando la cantidad de habitaciones esta entre 3 y 7.

boxplot(preciom ~ habitac, 
        data = vivienda_faltantes, 
        main = "Distribucion de precio por cantidad de habitaciones",
        col = "brown",
        xlab = "Cantidad de Habitaciones",
        ylab = "Precio del inmueble"
        )

En el siguiente grafico presentamos la distribución del precio entorno a la cantidad de baños presentes en la vivienda. En este se refleja que a medida que aumenta la cantidad de baños el precio del inmueble aumenta.

boxplot(preciom ~ banios, 
        data = vivienda_faltantes, 
        main = "Distribucion de precio por cantidad de baños",
        col = "purple",
        xlab = "Cantidad de baños",
        ylab = "Precio del inmueble"
        )

Por ultimo, se contrasta el precio de la vivienda con la cantidad de parqueaderos, encontrando una tendencia al incremento del valor cuando hay más cantidad de parqueaderos.

boxplot(preciom ~ parquea, 
        data = vivienda_faltantes, 
        main = "Distribucion de precio por cantidad de parqueaderos",
        col = "cyan",
        xlab = "Cantidad de parqueaderos",
        ylab = "Precio del inmueble"
        )

5. Conclusiones