Con base en los datos de ofertas de vivienda descargadas del portal Finca Raíz para apartamentos de estrato 4 con área construida menor a 200 m2, la inmobiliaria A&C requiere el apoyo de un científico de datos para la construcción de un modelo que oriente a los directivos frente a los precios de los inmuebles.

Primera pregunta.

Realice un análisis exploratorio de las variables precio de vivienda (millones de pesos COP) y área de la vivienda (metros cuadrados). Incluir gráficos e indicadores apropiados interpretados.

Respuesta.

De acuerdo con lo solicitado en el ejercicio frente a la ubicación de apartamentos de estrato 4, con área construida menor a 200 metros cuadrados, se procedió a efectuar la depuración de la base de datos original pasando de 1706 a 1360 registros asociados con 5 variables de interés: zona, estrato, precio, área construida y tipo.

Para la depuración de la base de datos se utilizó el siguiente código:

vivienda_1 = vivienda4 %>% filter(estrato == 4 & areaconst < 200 & tipo == 'Apartamento')

De acuerdo con el resumen de las variable se observa que el 78% de los datos se encuentran en la Zona Sur de la ciudad, mientras el precio de los apartamentos va de un mínimo de 78 millones de pesos hasta 654 millones de pesos estableciendo un valor medio de 202 millones.

##            zona      estrato     preciom      areaconst              tipo     
##  Zona Centro :   7   3:   0   Min.   : 78   Min.   : 40.0   Apartamento:1360  
##  Zona Norte  : 236   4:1360   1st Qu.:153   1st Qu.: 60.0   Casa       :   0  
##  Zona Oeste  :  52   5:   0   Median :185   Median : 70.0                     
##  Zona Oriente:   2   6:   0   Mean   :202   Mean   : 75.2                     
##  Zona Sur    :1063            3rd Qu.:240   3rd Qu.: 83.0                     
##                               Max.   :645   Max.   :198.0

La variable Precio presenta los siguientes indicadores:

##    vars    n   mean    sd median trimmed  mad min max range skew kurtosis   se
## X1    1 1360 201.97 64.55    185  194.45 59.3  78 645   567 1.42     3.85 1.75

El precio de los apartamentos presenta un valor promedio de 201.97 millones de pesos, acompañado de una variación dentro del conjunto de valores de 64.55 millones. Al momento de recortar los valores promedio, la media se ajusta a 194.45 millones de pesos lo que, para este caso, no resulta muy significativo. El precio más bajo para un apartamento es 78 millones de pesos, mientras el precio más alto es 645 millones; estableciéndose un rango de 567 millones. La medida de simetría establece una valor de 1.42 lo que indica la tendencia de los datos a dirigirse a la derecha del valor promedio (precios altos). El valor de 3.85 muestra una distribución pesada de los datos con respecto a la distribución normal. Finalmente, el error estándar es de 1.75 lo que establece la variación de la estimación del Precio.

La variable Área Construída presenta los siguientes indicadores:

##    vars    n mean    sd median trimmed   mad min max range skew kurtosis   se
## X1    1 1360 75.2 21.82     70   71.86 14.83  40 198   158 1.94     5.45 0.59

De acuerdo con los indicadores del Área construida, se ve que el valor promedio en metros cuadrados de las construcciones es 75.2, acompañado de una variación del conjunto de valores equivalente a 21.82. La desviación absoluta mediana es 14.83 lo que muestra cuanto se están alejando del centro los valores. El apartamento con la menor área es 40 metros cuadrados, mientras la mayor área está en 198 metros cuadrados. El rango de valores establece la distribución de los datos en 158 unidades. La medida de simetría es 1.94 lo que muestra la inclinación de los datos a la derecha, es decir, a valores más grandes del área. La forma de la distribución de probabilidad indica ‘pesadez’ de los datos lo que refleja la presencia de variabilidad y dispersión en los valores para el área construida (5.45 para la Curtosis).

Segunda pregunta.

Realice un análisis exploratorio bivariado de datos, enfocado en la relación entre la variable respuesta (precio) en función de la variable predictora (área construida). Incluir gráficos e indicadores apropiados interpretados.

Respuesta.

El gráfico de dispersión que aparece a continuación muestra la relación lineal entre la variable respuesta (precio) y la variable predictora (Área construida). En esta parte, se establece la prueba de hipótesis la cual consiste en lo siguiente: entre mayor sea el área construida más alto será el precio del apartamento.

## [1] 0.7431338

Al realizar los respectivos cálculos, se encuentra que el coeficiente de correlación es 0.7431338 lo que muestra una proporcionalidad directa, y fuerte, entre la variable de entrada y la de salida. En términos generales, y de acuerdo al análisis bivariado, en la medida que el área construida de una apartamento es más pequeña su valor será menor, por consecuencia.

Tercera pregunta.

Estime el modelo de regresión lineal simple entre precio = f(area)+ε, interprete los coeficientes del modelo β0, β1 en caso de ser correcto.

Respuesta.

A partir de esto, se procede a establecer el modelo de regresión lineal simple.

## 
## Call:
## lm(formula = preciom ~ areaconst)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -228.412  -23.589   -4.653   25.674  207.336 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept) 36.62292    4.20667   8.706   <2e-16 ***
## areaconst    2.19868    0.05372  40.926   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 43.21 on 1358 degrees of freedom
## Multiple R-squared:  0.5522, Adjusted R-squared:  0.5519 
## F-statistic:  1675 on 1 and 1358 DF,  p-value: < 2.2e-16

De acuerdo con esto, los residuales muestran valores grandes en los extremos lo que puede llevar a inferir problemas en el ajuste del modelo. El valor del intercepto (β0) arroja una estimación de 36.62292 cuando la variable Área construida es igual a 0. El coeficiente para Área construida (β1) se asocia con 2.19868 lo que significa el aumento de la variable en una unidad. El R-squared es 0.5522, lo que indica que aproximadamente el 55% de la variabilidad del Precio se explica por medio de la variación del Área construida. El F-statistic muestra que la significancia del modelo es alta lo que estable un adecuado uso de la variable predictora (Área). Por último, el p-value indica un valor extremadamente pequeño lo que establece que el modelo que pretende explicar el precio de una apartamento a partir de la variación del área construida es adecuado, corroborando la hipótesis propuesta.

Cuarta pregunta.

Construir un intervalo de confianza (95%) para el coeficiente β1, interpretar y concluir si el coeficiente es igual a cero o no. Compare este resultado con una prueba de hipótesis t.

Respuesta.

Se procede a la creación del intervalo de confianza para el modelo que plantea la variación del precio de apartamentos de acuerdo con el incremento del área construida.

##                 2.5 %    97.5 %
## (Intercept) 28.370647 44.875201
## areaconst    2.093294  2.304074

De acuerdo con esto, el valor estimado para el coeficiente β0 es 36.623 lo que muestra acertadamente que está incluido dentro del intervalo de confianza que va de 28.37 a 44.875. En el caso de β1, el valor estimado del coeficiente es 2.198 lo que indica que está incluido dentro del intervalo que va de 2.093 hasta 2.304. Por otra parte, se observa que los intervalos son estrechos lo que muestra la precisión de la estimación de los coeficientes. El coeficiente β1 es diferente a cero. En términos generales, los dos intervalos no incluyen el valor de cero, lo que sugiere que tanto β0 como β1 son estadísticamente significativos en la predicción de la variable respuesta. Podría decirse que por cada unidad adicional (m2) en el área de un apartamento, la precio total estimado incrementa entre 2.093 y 2.304 COP con un intervalo de confianza del 95%. Frente a la prueba de hipótesis, el F-statistic presenta una valor (1675) alto y el p-value (<2.2e-16) un valor extremadamente pequeño lo que establece que el modelo que pretende explicar el precio de una apartamento a partir de la variación del área construida es adecuado, corroborando la hipótesis propuesta.

Quinta pregunta.

Calcule e interprete el indicador de bondad R2.

Respuesta.

A partir del cálculo del indicador se obtiene que el Multiple R-squared es 0.5522 lo que indica que aproximadamente el 55% de la variabilidad en la variable Precio se explica por la variable Área construida. El Multiple R-squared muestra cómo se ajusta el modelo a los datos.

Sexta pregunta.

¿Cuál sería el precio promedio estimado para un apartamento de 110110 metros cuadrados? Considera, entonces, con este resultado que un apartamento en la misma zona con 110110 metros cuadrados en un precio de 200200 millones sería una atractiva esta oferta? ¿Qué consideraciones adicionales se deben tener?.

Respuesta.

##        1 
## 242133.7

Puede verse que el promedio del precio estimado para un apartamento de 110110 m2 es 242133.7 millones de pesos. Un apartamento en la misma zona con un precio de 200200 millones de pesos será una oferta atractiva ya que el precio está 41.911,7 millones por debajo del costo promedio de la zona. Sin duda es una oferta atractiva, no obstante, es preciso que se tenga en cuenta el estado del inmueble y otros factores que puedan interferir en la compra.

Séptima pregunta.

Realice la validación de los supuestos del modelo por medio de gráficos apropiados, interpretarlos y sugerir posibles soluciones si se violan algunos de ellos. Utilice las pruebas de hipótesis para la validación de supuestos y compare los resultados con lo observado en los gráficos asociados.

Respuesta.

Estos cuatro gráficos muestran el comportamiento del modelo de regresión sin procesos de transformación.

Estos gráficos muestran el modelo de regresión a partir de una transformación logarítmica.

A continuación se observa el comportamiento de los indicadores del modelo de regresión tranformado:

## 
## Call:
## lm(formula = log(vivienda_1$preciom) ~ vivienda_1$areaconst)
## 
## Residuals:
##      Min       1Q   Median       3Q      Max 
## -1.01049 -0.12923 -0.01072  0.15388  0.66836 
## 
## Coefficients:
##                       Estimate Std. Error t value Pr(>|t|)    
## (Intercept)          4.5335927  0.0198743  228.11   <2e-16 ***
## vivienda_1$areaconst 0.0097005  0.0002538   38.22   <2e-16 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 0.2041 on 1358 degrees of freedom
## Multiple R-squared:  0.5182, Adjusted R-squared:  0.5179 
## F-statistic:  1461 on 1 and 1358 DF,  p-value: < 2.2e-16

De acuerdo con esto, el modelo de regresión transformado no ofrece mayores cambios, inclusive, los indicadores presentan un mejor desempeño sin la aplicación de la transformación. Puede verse que el R cuadrado del modelo transformado es 0.5182, mientras el R cuadrado del modelo sin transformación es 0.5522. Al comparar los residuales contra los valores ajustados puede verse un comportamiento con relativa aleatoriedad, sin embargo, y a través del valor extremadamente pequeño del p-value arrojado por el Shapiro test los datos no presentan distribución normal. Este hecho hace necesario la puesta en práctica de otras transformaciones.

Octava pregunta.

De ser necesario realice una transformación apropiada para mejorar el ajuste y supuestos del modelo.

Respuesta.

A partir de esto, se establecerán cuatro transformaciones relacionadas con: lin-lin, lin-log, log-lin y log-log.

Transformada lin-lin

## 
## Call:
## lm(formula = vivienda_1$preciom ~ vivienda_1$areaconst)
## 
## Coefficients:
##          (Intercept)  vivienda_1$areaconst  
##               36.623                 2.199

Transformada lin-log

## 
## Call:
## lm(formula = vivienda_1$preciom ~ log(vivienda_1$areaconst), 
##     data = vivienda_1)
## 
## Coefficients:
##               (Intercept)  log(vivienda_1$areaconst)  
##                    -633.5                      194.9

Transformada log-lin

## 
## Call:
## lm(formula = log(vivienda_1$preciom) ~ vivienda_1$areaconst, 
##     data = vivienda_1)
## 
## Coefficients:
##          (Intercept)  vivienda_1$areaconst  
##               4.5336                0.0097

Transformada log-log

## 
## Call:
## lm(formula = log(vivienda_1$preciom) ~ log(vivienda_1$areaconst), 
##     data = vivienda_1)
## 
## Coefficients:
##               (Intercept)  log(vivienda_1$areaconst)  
##                    1.4627                     0.8867

Novena pregunta.

De ser necesario compare el ajuste y supuestos del modelo inicial y el transformado.

Respuesta.

A partir de esto, se establecerá la comparación de los cuatro modelos establecidos, siendo lin-lin el original.

## 
## =======================================================================
##                                     Dependent variable:                
##                     ---------------------------------------------------
##                              preciom                  preciom)         
##                         (1)          (2)          (3)          (4)     
## -----------------------------------------------------------------------
## areaconst             2.199***                  0.010***               
##                       (0.054)                   (0.0003)               
##                                                                        
## areaconst)                        194.944***                 0.887***  
##                                    (4.518)                   (0.021)   
##                                                                        
## Constant             36.623***   -633.526***    4.534***     1.463***  
##                       (4.207)      (19.397)     (0.020)      (0.089)   
##                                                                        
## -----------------------------------------------------------------------
## Observations           1,360        1,360        1,360        1,360    
## R2                     0.552        0.578        0.518        0.577    
## Adjusted R2            0.552        0.578        0.518        0.576    
## Residual Std. Error    43.209       41.937       0.204        0.191    
## F Statistic         1,674.927*** 1,861.648*** 1,460.654*** 1,850.326***
## =======================================================================
## Note:                                       *p<0.1; **p<0.05; ***p<0.01

Décima pregunta.

Estime varios modelos y compare los resultados obtenidos. En el mejor de los modelos, ¿se cumplen los supuestos sobre los errores?

Respuesta.

Al momento de comparar los modelos puede verse, por ejemplo, que el modelo_a y el modelo_c tienen un p-value significativo lo que muestra una relación positiva de carácter muy fuerte entre el precio de un apartamento y su área construida. Específicamente, el incremento del área construida se asocia de manera importante con el aumento del valor del inmueble. No obstante, el modelo_c tiene una coeficiente mucho menor (0.010) en comparación con el modelo_a (2.199), esto sugiere que el efecto del área construida en el incremento del precio del inmueble es menor en el modelo_c. Por otra parte, y al momento de comparar el modelo_b con el modelo_d, se evidencia una relación positiva de carácter muy fuerte. Sin embargo, el coeficiente es mucho mayor en el modelo_b (194.944) en comparación con el modelo_d (0.887). A través de esto, el modelo_b representa un mejor desempeño. En términos generales, el modelo_b presenta un mejor desempeño a la hora de explicar la relación que existe entre el precio de un inmueble de acuerdo con el tamaño de su área construida.

INFORME DE RESULTADOS

El presente informe tiene la finalidad de orientar a los ejecutivos de la Inmobiliaria A&C en la toma de decisiones frente al comportamiento del sector de precios y ventas de apartamentos pertenecientes al estrato 4. A partir de esto, se efectuó un proceso de evaluación de la base de datos con el fin de consolidar información relevante. Se realizó el análisis exploratorio de tipo bivariado de las variables apartamento y área construida. De acuerdo con esto, se redujeron los registros originales de la base de datos, pasando de 1706 a 1360 características, además de conservar la información asociada con cinco variables: zona, estrato, precio, área construida y tipo. Al revisar el resumen de la información, se observó que el 78% de los inmuebles evaluados pertenecen a la Zona Sur de la ciudad, mientras el precio parte de un mínimo de 78 millones COP hasta un máximo de 645 millones COP. El precio promedio de los inmuebles se encuentra en 202 millones COP dentro de una variación del conjunto de valores equivalente a 64.55 millones COP. La medida de simetría establece un valor de 1.42 lo que indica la tendencia de los precios a ser más altos, además de un error estándar de 1.75 lo que indica la variación en la estimación de los valores de los valores de inmuebles. Con lo que respecta la segunda variable estudiada, el área construida presente un promedio en metros cuadrados equivalente a 75.2. La menor área registrada es de 40 metros cuadrados, mientras la mayor está en 198 metros cuadrados. El rango de valores relaciona una distribución de los datos en 158 unidades con tendencia a valores mayores. Una vez analizada la relación entre el precio de los inmuebles de acuerdo con la variación del área construida se evidencia el cumplimiento de la hipótesis de trabajo asociada con el precepto de que a mayor área construida más alto será el costo del inmueble. Al realizar los respectivos cálculos, se encuentra que el coeficiente de correlación es 0.7431338 lo que muestra una proporcionalidad directa, y fuerte, entre las dos variables elegidas para este estudio. En términos generales, y de acuerdo con el análisis bivariado, en la medida que el área construida de una apartamento es más pequeña su valor será menor, por consecuencia. Con base en lo anterior, se construyó un intervalo de confianza del 95% para la variable área construida con el fin de evaluar la precisión de los cálculos, encontrando que intervalos ajustados y valores distintos a cero lo que lleva a pensar que la relación entre variables es estadísticamente significativa. Otro hecho relevante arrojado por el modelo de predicción tiene que ver con la capacidad de establecer estimaciones frente al precio de los inmuebles en zonas específicas, permitiendo encontrar ofertas y/o precios inflados. Por ejemplo, una zona se encontró que el promedio de precios para apartamentos con áreas de 110110 m2 es de 242133.7 millones COP lo que permite encontrar ofertas acordes con el comportamiento del sector, además de ampliar la posibilidad de negocio. Para hacer más preciso los análisis se diseñaron y probaron cuatro modelos distintos con el fin de evaluar el rendimiento. En términos generales, el modelo que mejor desempeño obtuvo un R2 de 0.58 lo que permite establecer la existencia de una ya que el 78% de los datos trabajados se relacionaron con la Zona Sur de la ciudad, pasando por alto tendencias en otras partes que podrían ser identificadas con la presencia de una base de datos más amplia o, en su defecto, con mejor distribución. Otros aspecto para considerar tiene que ver con la distribución del estrato 4 en la ciudad. Según esto, sólo una pequeña parte de la ciudad alberga casi la totalidad de viviendas con esta condición lo cual requiere ser evaluado ya que este estrato suele ser común en las ciudades principales de Colombia.

ANEXOS

Códigos.

vivienda_1 = vivienda4 %>% filter(estrato == 4 & areaconst < 200 & tipo == ‘Apartamento’)

print(psych::describe(vivienda_1$preciom))

print(psych::describe(vivienda_1$areaconst))

barplot(table(vivienda_1$areaconst), main = ‘Área Construida’, xlab = ‘Área’, ylab = ‘Viviendas’, col= ‘yellow’)

plot(preciom, areaconst, pch = 16)

print(cor(preciom, areaconst))

modelo_regresion = lm(preciom ~ areaconst)

modelo1 = lm(preciom ~ areaconst, data = vivienda_1)

print(predict(modelo1, newdata = list(areaconst = 110110)))

par(mfrow = c(2,2))

plot(modelo1)

modelo_transformado = lm(log(vivienda_1\(preciom) ~ vivienda_1\)areaconst)

par(mfrow = c(2,2))

plot(modelo_transformado)

modelo_transformado = lm(log(vivienda_1\(preciom) ~ vivienda_1\)areaconst)

modelo_a = lm(vivienda_1\(preciom ~ vivienda_1\)areaconst)

modelo_b = lm(vivienda_1\(preciom ~ log(vivienda_1\)areaconst), data = vivienda_1)

modelo_c = lm(log(vivienda_1\(preciom) ~ vivienda_1\)areaconst, data = vivienda_1)

modelo_d = lm(log(vivienda_1\(preciom) ~ log(vivienda_1\)areaconst), data = vivienda_1)

stargazer(modelo_a, modelo_b, modelo_c, modelo_d, type = “text”, df = FALSE)

Librerías.

library(learnr)

library(devtools)

library(paqueteMET)

library(dbplyr)

library(ggplot2)

library(ggthemes)

library(DataExplorer)

library(mice)

library(naniar)

library(tibble)

library(nortest)

library(psych)

library(corrplot)

library(lattice)

library(reticulate)

library(sqldf)

library(vembedr)

library(fdth)

library(modeest)

library(dplyr)

library(stargazer)