1. Introducción

En la actualidad la industria 4.0 representa el mayor foco de atención de los diferentes sectores que componen la sociedad actual, este concepto proviene del surgimiento y apropiación de nuevas tecnologías adheridas del mundo digital y que permiten realizar análisis más apropiados de los datos con el fin de darle un uso adecuado y útil dentro de las compañias.

Teniendo en cuenta lo anterior, este reporte realizado para la empresa B&G (Bienes y Casas) la cual es una agencia de bienes raices ubicada en la ciudad de Cali, recopiló una serie de datos con el fin de poder ser estudiados y evaluados para obtener valor de ellos, por esta razón, en este documento se presenta las diferentes metodologías que se usaron para el uso de la información, seguido por una limpieza del data set para obtener los datos mas pulcros y concisos y finalmente un análisis descriptivo de la información suministrada por la empresa en cuestión.

2. Objetivos

El objetivo de esta investigación es proporcionar a la empresa B&G una base solida y una serie de recomendaciones para la toma de decisiones en el futuro de los bienes raices en cali. Este análisis pretende que la empresa pueda entre otras cosas, definir su nicho de mercado, Establecer precios de venta según la zona de la ciudad, analizar los precios de venta y los barrios con mayor ingerencia en el mundo inmobiliario de la ciudad de Cali.

3. Métodos

En la sección de métodos del presente reporte, se pretende realizar un acercamiento a los datos desde la obtención hasta la depuración final del dataset entregado por la empresa “B&G”, acá se identificarán las diferentes variables que se adquirieron y a su vez los datos que no son útilies para efectos de esta investigación.

3.1. Limpieza de datos

3.1.1. Descripción de la información

La sección de limpieza de datos permite hacer una purificación de la información con el fin de obtener los resultados más precisos y un análisis mucho más acertado. En total el dataset inicial cuenta con 8330 filas que estan constituidas por 13 columnas, a continuación se presenta un pequeño resumen de aquellas variables que constituyen el dataset.

Nombre Tipo de variable Descripción
id Numérica Identificador de cada registro
zona Caractér Indica la zona en la que se ubica el predio en la ciudad de Cali
piso Caractér Representa el piso en que se ubica el apartamento
estrato Caractér Muestra el estrato socioeconónomico del predio
preciom Numérica Representa el precio en millones de pesos del inmueble
areaconst Numérica Representa el área del inmueble en metros cuadrados
parquea Caractér Indica el número de parqueaderos que tiene el predio
banios Caractér Expone el número de baños en el inmueble
habitac Caractér Indica el número de habitaciones del inmueble
tipo Caractér Indica el tipo de inmueble, ya sea Casa o Apartamento
barrio Caractér Muestra el barrio donde se ubica el predio
longitud Numérica Representa la longitud geográfica del predio
latitud Numérica Representa la latitud geográfica del predio

3.1.2. Normalización de los datos

En esta etapa se pretende que los datos de cada una de las columnas evaluadas tenga concordancia con el resto de valores, de esta manera,por ejemplo, aquellos datos que estan en mayúscula puedan convertirse en minúncula para tener una data estandarizada.

además en esta sección también se evaluarán los datos que tienen diferentes notaciones pero significan los mismo, para este dataset en concreto se detectaron valores en la columna tipo, en donde existian valores como “Apartamento”, “apto”, entre otro como se muestra a continuación:

## 
## Apartamento APARTAMENTO        apto        casa        Casa        CASA 
##        5032          61          13          14        3195          12
# se procede a reemplazar aquellos valores con nombre erroneos

data1$tipo = replace(data1$tipo, data1$tipo == "APARTAMENTO", "Apartamento")
data1$tipo = replace(data1$tipo, data1$tipo == "apto", "Apartamento")
data1$tipo = replace(data1$tipo, data1$tipo == "casa", "Casa")
data1$tipo = replace(data1$tipo, data1$tipo == "CASA", "Casa")

El mismo caso se llevo a cabo en la variable “barrio”, donde se realizó el reemplazo de algunas palabras con el fin de obtener datos mas limpios y certeros.

Además durante el proceso se decidió cambiar el nombre de las variables con el fin de que estos sean mas descriptivos, además, a pesar de que algunas de las variables son numéricas como el estrato, baños, y habitaciones, para este estudio se tomaran como variables cualitativas con las que después se realizarán analisis categóricos.

#Cambio de nombre en las columnas
colnames(data1) = c("id", "Zona", "Piso", "Estrato", "Precio_Mill_COP", "Area_m2", "Parqueadero","Banos", "Habitaciones", "Tipo", "Barrio", "Longitud", "Latitud")

#Se cambiar el tipo de dato a las columnas
data1$Estrato <- as.character(data1$Estrato)
data1$Banos <- as.character(data1$Banos)
data1$Habitaciones <- as.character(data1$Habitaciones)

3.1.3. Análisis de datos faltantes

Durante la depuración de la información, se debe realizar la identificación y posterior desarrollo de datos faltantes. Inicialmente se identificaron las siguientes cantidades de datos faltantes que se ven identificados en el digramas a continucación:

##              id            Zona            Piso         Estrato Precio_Mill_COP 
##               3               3            2641               3               2 
##         Area_m2     Parqueadero           Banos    Habitaciones            Tipo 
##               3            1606               3               3               3 
##          Barrio        Longitud         Latitud 
##              96               3               3

Teniendo en cuenta la cantidad de datos faltantes existentes en el dataset, se puede apreciar que la mayoría de estos se encuentran en las variables “Piso” y “Parqueadero”. Sin embargo, teniendo en cuenta que son variables que pueden ser importantes al momento de definir si un predio tiene mayor o menor valor, se decidió descartar las columnas debido a la inmensa cantidad de datos faltantes en piso y parqueadero del valor de 2,641 y 1,606 respectivamente, lo cual afectaría el dataset en una gran cantidad de datos representativos si se decide eliminar todos los registros con datos faltantes.

#Se eliminan las columnas de piso y parqueadero ya que no son representativas para el análisis

data1$Piso = NULL
data1$Parqueadero = NULL
data_Depurada <- na.omit(data1)

Una vez depurado el dataset, se decide crear una nueva variable llamada “Precio_m2” las cual representa cual es el precio del metro cuadrado en pesos colombianos (COP) de un inmueble teniendo en cuenta el área y el precio de todo el predio, un dato que servirá en análisis posteriores dentro de este documento.

#Se crea la variable precio metro cuadrado
data_Depurada$Precio_m2 = data_Depurada$Precio_Mill_COP / data_Depurada$Area_m2

4. Resultados

En la sección de resultado se expondrán los análisis descriptivos realizados con la base de datos ya depurada, esta base contiene 8,234 registros y 11 columnas, los cuales seran evaluados con el fin de obtener datos relevantes que permitan generar valor en la toma de decisiones por parte de los directivos de la empresa “B&G”.

4.1 Análisis por precio

Inicialmente, se decidió realizar un análisis de precios de los inmuebles, entre la información encontrada se determinó que los precios de las viviendas evaluadas oscilaron entre los 58 millones y los 2 mil millones de pesos, obteniendo una mediana de 330 millones, lo que indica que gran parte de los datos se ubican hacia el precio menor del rango.

summary(data_Depurada$Precio_Mill_COP)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    58.0   220.0   330.0   433.7   540.0  1999.0

De igual manera, se hizo el análisis en función del precio por metro cuadrado de los predios, obteniendo un rango de precios entre los 9.49 y 0.14 COP/m2, esta información se ratifica en la gráfica 2, donde se puede apreciar que los datos mas repetidos son los cercanos a 2.5 COP/m3, siendo un valor muy cercano al promedio de los datos.

summary(data_Depurada$Precio_m2)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##  0.1461  1.9167  2.6434  2.7236  3.3784  9.4681
ggplot(data_Depurada, aes(x = Precio_m2)) +
  geom_histogram(binwidth = 0.5, fill = "orange", color = "black") +
  labs(title = "Grafica 2. Histograma Precio por M2", x = "Precio por M2", y = "Frecuencia") + theme_classic()

Finalmente, se puede apreciar que el área de incidencia de los predios evaluados se ubicó entre los 30 y los 1,745 metros cuadrados, sin embargo, al igual que en el precio, se denota que la mayoría de datos se focalizan hacia el limite inferior debido a que la mediana tiene un valor de 123 m2.

summary(data_Depurada$Area_m2)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    30.0    80.0   123.0   174.7   228.0  1745.0

Teniendo en cuenta lo anterior, se quiso evaluar la correlación existente entre el Área del inmueble y su respectivo precio. La gráfica 3 es un claro ejemplo de una tendencia lineal, lo que implica una correlación positiva entre ambas. Para corroborar la información, se decidió medir que tan linealmente compatibles eran los datos, encontrando un valor de 0.69, esto siendo 1 una correlación exacta y 0 una inexistencia de esta, este valor implica una alta relación entre estas variables, lo que implica que entre mayor sea el área de un predio, es mas probable que su valor también sea mayor.

ggplot(data_Depurada, aes(x = Precio_Mill_COP, y = Area_m2)) +
  geom_point() +
  labs(title = "Grafica 3. Correlacion entre Variable Precio vs. Area", x = "Precio (Millones COP)", y = "Area en m2") +
  theme_classic()

cor(data_Depurada$Precio_Mill_COP, data_Depurada$Area_m2)
## [1] 0.6875722

4.2 Análisis por cualidades del inmueble

Se quiso evaluar también las caracteristicas y cualidades del inmueble como numero de baños, habitaciones, y estrato social. En este análisis se realizó una comparación entre las diferentes características y como los diferentes registros se comportaban frente al precio, encontrando que:

  • Evidentemente, a medida que aumenta el estrato socieconómico los predios son mas costosos, esto debido a que el estrato precisamente es un indicador de valor para la casa según el sector y zona donde se encuentra ubicado.

  • En cuanto al numero de baños, se encontro una relación directa entre este indicador y el precio del predio, entre mayor sea la cantidad de baños, es mas costoso el inmueble. Dentro de este análisis tambien se pudo determinar que existe una cantidad de valores con 0 baños y que tienen un costo medio mayor que aquellos con 1,2 y 3 baños, esto puede deberse a una omisión de rellenar este campo cuando se estaba tomando la base de datos, o puede tratarse de bodegas o lotes que no están contemplados en el dataset inicial.

  • En las habitaciones se puede ver una situación similar a la anterior, sin embargo los predios con habitaciones entre 6 y 9 son menos costosos que aquellos con 5 habitaciones, esto tambien se puede dar debido a que la ubicación de estos inmuebles puede darse en zonas menos costosas y con estratos más bajos.

4.3 Análisis por ubicación del inmueble

La ubicación del inmueble es un factor representativo en cualquier ciudad del mundo y la ciudad de Cali no es la excepción, en este caso se analizan cuales son las zonas de la ciudad con mejor oportunidad de inversión con el fin de obtener mejores reditos para B&G.

Inicialmente la gráfica de pastel muestra que en la zona sur de la ciudad se presenta la mayoría de registros, seguidos por la zona norte y oeste de la ciudad, Sin embargo, esto no implica que sean las zonas con mayores precios.

## # A tibble: 5 × 2
##   Zona         porcentaje
##   <chr>             <dbl>
## 1 Zona Centro        1.51
## 2 Zona Norte        22.8 
## 3 Zona Oeste        14.5 
## 4 Zona Oriente       4.18
## 5 Zona Sur          57.1
ggplot(porcentaje_Zona, aes(x = "", y =porcentaje, fill = Zona)) +
  geom_bar(stat = "identity", width = 1) +
  coord_polar(theta = "y") +
  geom_text(aes(label = paste(porcentaje, "%")), position = position_stack(vjust = 0.5)) +
  labs(title = "Porcentaje de registros por zona") +
  theme_void() +
  theme(legend.position = "right")

Un factor importante, es determinar por cada zona la cantidad de registros que se tienen por tipo de inmueble, acá se puede observar que la mayoría de apartamentos se localizan en la zona sur de la ciudad, seguidos por la zona norte y zona oeste, tambien cabe realtar que la zona oeste probablemente sea una zona residencial de edificios, debido a la poca cantidad de casas en este sector. Tambien es importante destacar que la zona sur y norte tienen la mayor cantidad de casas.

Consecuente con lo anterior, se quiso determinar cual era el precio promedio de cada una de las zonas evaluadas, encontrando que la zona oeste y la zona sur son los sectores con valores promedio de m2 mas costoso con 3.65 COP/m2, seguido por la zona sur y la zona norte con valores de 2.72 y 2.43 COP/m2 respectivamente. Finalmente las zonas con promedio de m2 más bajos son aquella con menor número de registros en sus haberes y tambien mayor cantidad de casas que apartamentos.

# Calcular el porcentaje por categoría
Promedio_Precio_Zona = data_Depurada %>%
  group_by(Zona) %>%  # Agrupar por categoría
  summarize(Precio_Promedio = round(mean(Precio_m2),digits = 2) )  #

# Imprimir el dataframe con porcentajes por categoría
print(Promedio_Precio_Zona)
## # A tibble: 5 × 2
##   Zona         Precio_Promedio
##   <chr>                  <dbl>
## 1 Zona Centro             1.75
## 2 Zona Norte              2.43
## 3 Zona Oeste              3.65
## 4 Zona Oriente            1.45
## 5 Zona Sur                2.72

Al igual que las zonas, se quiso ver cuales eran los 10 barrios cuyo precio de vivienda era más costoso, de esta manera se pudo ver los barrios de aguacatal, acopi y el barrio 3 de julio son las barrios con viviendas mas costosas. Los 3 barrios se cuentran en zonas diferentes, sin embargo son las zonas cuyos precios por metro cuadrado son mas ostentosos.

6. Conclusiones

Despues de realizar un exahustivo proceso de limpieza, seguimiento, y análisis estadístico de las variables y datos, se pudo llegar a las siguientes conclusiones: