Actividad 1

Paso 1.- Filtrar barrio de interés y solo apartamentos. Se emplea la libreria RecordLinkage que permite encontrar registros con valores similares en un conjunto de datos. De acuerdo con (Sariyar & Borg, 2010) este paquete permite “la detección de homónimos y principalmente sinónimos en los datos”. Específicamente se emplea la función jarowinkler() con un umbral de 0.9 que tiene un nivel de discriminación aceptable para esta actividad. Se elige el barrio “el caney” para esta actividad.

library(readxl)
Datos_Vivienda <- read_excel("Datos_Vivienda.xlsx")

head(Datos_Vivienda)
Zona piso Estrato precio_millon Area_contruida parqueaderos Banos Habitaciones Tipo Barrio cordenada_longitud Cordenada_latitud
Zona Sur 2 6 880 237 2 5 4 Casa pance -76.46300 3.43000
Zona Oeste 2 4 1200 800 3 6 7 Casa miraflores -76.46400 3.42800
Zona Sur 3 5 250 86 NA 2 3 Apartamento multicentro -76.46400 3.42900
Zona Sur NA 6 1280 346 4 6 5 Apartamento ciudad jardín -76.46400 3.43300
Zona Sur 2 6 1300 600 4 7 5 Casa pance -76.46438 3.43463
Zona Sur 3 6 513 160 2 4 4 Casa pance -76.46438 3.43463
pos=which(Datos_Vivienda$Barrio=="el caney")
datos_sub=Datos_Vivienda[pos,]

require(RecordLinkage)
pos_2=which(jarowinkler("el caney",Datos_Vivienda$Barrio)>0.9 & Datos_Vivienda$Tipo=="Apartamento")
datos_sub2=Datos_Vivienda[pos_2,]
head(datos_sub2)
Zona piso Estrato precio_millon Area_contruida parqueaderos Banos Habitaciones Tipo Barrio cordenada_longitud Cordenada_latitud
Zona Sur 4 4 215 92 1 3 3 Apartamento el caney -76.51279 3.48038
Zona Sur 2 3 160 65 1 2 3 Apartamento el caney -76.51563 3.38403
Zona Sur NA 4 140 60 NA 2 2 Apartamento el caney -76.51572 3.38425
Zona Sur 7 4 160 60 NA 2 3 Apartamento el caney -76.51578 3.38493
Zona Sur 7 5 150 60 NA 2 2 Apartamento el caney -76.51593 3.38480
Zona Sur 2 4 166 60 NA 2 3 Apartamento el caney -76.51593 3.38397

Paso 2.- Exploración inicial del subconjunto de datos obtenido en el paso anterior para el barrio identificado como “el caney” de la ciudad de Cali. Se obtienen la Media, la Mediana y la Desviación Estandar para las variables Precio y Area.

Donde:

2.1.- La Media Aritmética se expresa según la siguiente ecuación \[ \text{Media aritmética}= \frac{\sum_{i=1}^{N}x_{i}}{N}=\frac{x_{1}+x_{2}+x_{3}...+x_{n}}{N} \] 2.2.- Mediana. En una muestra de datos ordenada en modo creciente, si el número n de datos es impar, entonces la Mediana es el dato central; es decir, \[ {Mediana}= x_{\frac{n+1}{2}} \] si el número n de datos es par, entonces la Mediana es la media de los dos datos centrales; es decir,

\[ {Mediana}= \frac{x_{\frac{n}{2}} + x_{\frac{n}{2}+1}}{2} \] 2.3.- Desviación Estándar. Mide la desviación o dispersión de los datos con respecto a la media. Se expresa según la siguiente ecuación:

\[ s = \sqrt{\frac{1}{N-1} \sum_{i=1}^N (x_i - \overline{x})^2} \]

# Tabla de indicadores

promedio_precio=mean(datos_sub2$precio_millon, na.rm=TRUE)
mediana_precio=median(datos_sub2$precio_millon, na.rm=TRUE)
desv_est_precio=sd(datos_sub2$precio_millon, na.rm=TRUE)
varianza_precio=desv_est_precio^2


promedio_area=mean(datos_sub2$Area_contruida, na.rm=TRUE)
mediana_area=median(datos_sub2$Area_contruida, na.rm=TRUE)
desv_est_area=sd(datos_sub2$Area_contruida, na.rm=TRUE)


cantidad_ofertas=length(datos_sub2$Zona)

resultado=data.frame(promedio_precio,mediana_precio,desv_est_precio,promedio_area,mediana_area,desv_est_area,cantidad_ofertas)
resultado
promedio_precio mediana_precio desv_est_precio promedio_area mediana_area desv_est_area cantidad_ofertas
182.7258 155.5 60.93744 68.85935 60 19.82704 124

Paso 3.- Mapa interactivo de los resultados.

require(leaflet)
leaflet() %>% addCircleMarkers(lng=datos_sub2$cordenada_longitud, lat=datos_sub2$Cordenada_latitud, radius=0.3) %>% addTiles()

Paso 4.- Exploracion Bivariado entre Precio versus Area Construida

require(ggplot2)
require(plotly)

g1=ggplot(data=datos_sub2,aes(y=precio_millon, x=Area_contruida))+geom_point()+geom_smooth()
ggplotly(g1)
pos3=which(datos_sub2$Area_contruida<120)
datos_sub3=datos_sub2[pos3,]

g2=ggplot(data=datos_sub3,aes(y=precio_millon, x=Area_contruida))+geom_point()+geom_smooth()
ggplotly(g2)

Bibliografia

Sariyar, M & Borg, A. 2010. The RecordLinkage Package: Detecting Errors in Data. The R Journal 2:2, pages 61-67.