Ejemplo Modelo precios aptos Multicentro Cali + Webscraping

  1. Cual considera que es un precio de referencia (Mercado) para un apartamento en el sector?. Una persona con un presupuesto de 350 millones puede comprar en la zona??

  2. Por medio de analítica estime cual sería el precio de un apartamento en el sector si tiene un total de 100 mt2, 2 parqueaderos, 3 habitaciones y está en el piso 2.

  3. Considera una buena oportunidad de negocio el apto de 2. en 280 millones?? Que recomendaría al posible comprador. Limitaciones de esta recomendación??

Respuestas

  1. Se considera como precio referencia las medidas de tendencia central en el barrio, tales como el promedio y la media, que según la tabla se puede visualizar que es 332 y 305 millones respectivamente, por lo tanto, una persona con presupuesto de 350 millones puede comprar en la zona, pues tiene suficiente alternativas y el precio que tiene como presupuesto está por encima del promedio.
#Filtrar base de datos
con=Datos_Vivienda$Barrio=="multicentro"
#Cuenta cuantos corresponden y cuales no
#Asignamos a una variable los datos filtrados
datos_multi=Datos_Vivienda[which(con),]
##Punto 1
require(table1)
table1(~precio_millon,data = datos_multi)
Overall
(N=26)
precio_millon
Mean (SD) 332 (82.1)
Median [Min, Max] 305 [240, 480]
  1. Antes de estimar el precio, primero se analizará el área vs el precio, para así verificar la relación entre estas dos variables.
require(ggplot2)

a=ggplot(data=datos_multi,mapping = aes(y=precio_millon,x=Area_contruida))
a+geom_point(colour="red")+ geom_smooth(method ="lm")

Tal como se muestra en el gráfico, se puede observar que la relación es directamente proporcional, pues entre mayor área construida, mayor precio.

Por otro lado, a tra vés de un gráfico de cajas podemos verificar la relación entre el el piso y los parqueaderos, frente al precio.

b=ggplot(data=datos_multi,mapping = aes(y=precio_millon,x=piso, fill=piso))
require(plotly)
ggplotly(b+geom_boxplot())
c=ggplot(data=datos_multi,mapping = aes(y=precio_millon,x=parqueaderos, fill=parqueaderos))
ggplotly(c+geom_boxplot())

De estos gráficos se puede observar que hay una relación más directa entre el número de parqueaderos y como el precio aumenta en la medida que hay más de uno, por otro lado en los pisos no muestra mayor aumento, sin embargo del gráfico se infiere que el cuarto piso es el que presenta mayor precio.

Modelo predictivo

Finalmente, se prueba el modelo con las variables indicadas en la pregunta.

mod=lm(precio_millon~Area_contruida+parqueaderos+Habitaciones+piso, data=datos_multi)
anova(mod)
Df Sum Sq Mean Sq F value Pr(>F)
Area_contruida 1 142479.6921 142479.6921 251.0811080 0.0000000
parqueaderos 2 12119.7309 6059.8655 10.6788393 0.0008754
Habitaciones 1 117.0733 117.0733 0.2063094 0.6551050
piso 3 3760.9834 1253.6611 2.2092315 0.1221731
Residuals 18 10214.3665 567.4648 NA NA

Según el modelo las variables significativas son el área y los parqueaderos por lo tanto se hace otro modelo con solo estas dos variables.

mod2=lm(precio_millon~Area_contruida+parqueaderos, data=datos_multi)
anova(mod2)
Df Sum Sq Mean Sq F value Pr(>F)
Area_contruida 1 142479.69 142479.6921 222.428265 0.0000000
parqueaderos 2 12119.73 6059.8655 9.460193 0.0010847
Residuals 22 14092.42 640.5647 NA NA

Finalmente, con este modelo se hace la predicción teniendo en cuenta el intervalo de confianza.

predict(mod2, list(Area_contruida=100, parqueaderos="2"),interval = "confidence")
##        fit      lwr      upr
## 1 331.7502 311.9189 351.5816

A partir del modelo el precio de un apartamento en el sector de multicentro si tiene un total de 100 mt2, 2 parqueaderos, 3 habitaciones y está en el piso 2, es de aproximadamente 331 millones.

  1. Considero que es una buena oportunidad de negocio el apartamento en 280 millones, pues es un precio que está por debajo del intervalo de confianza del modelo, sin embargo, le recomendaría al posible comprador que revisara las condiciones tales como, acabados, estado del inmueble, limitaciones judiciales, entre otras variables que no están consideradas en el modelo.