##Primer ejercicio de importación de datos. A continuación se hace la primera carga de datos olx. para visualizar la tabla original.

library(readxl)
olx_viviendas_cali <- read_excel("~/olx_viviendas_cali.xlsx",sheet = 2)

head (olx_viviendas_cali)
ID URL ciudad Zona Barrio Cordenada_latitud cordenada_longitud Tipo piso Estrato Area_contruida parqueaderos Baños Habitaciones Precio
1564437042-435 https://www.fincaraiz.com.co/casa-en-venta/cali/octubre-det-4475330.aspx Cali NA 12 de octubre 3.428979 -76.50216 Casa 3 2 320 1 4 9 2.3e+08
1564437042-388 https://www.fincaraiz.com.co/casa-en-venta/cali/octubre-det-4077928.aspx Cali NA 12 de octubre 3.427423 -76.50369 Casa 3 3 408 NA 6 7 4.5e+08
1564437042-5571 https://www.fincaraiz.com.co/casa-en-venta/cali/julio-det-4656445.aspx Cali Zona Oriente 20 de julio 3.433820 -76.51168 Casa NA 3 70 1 3 6 2.5e+08
1564437042-1538 https://www.fincaraiz.com.co/casa-en-venta/cali/julio-det-4734751.aspx Cali Zona Oriente 20 de julio 3.433686 -76.51237 Casa NA 3 120 1 2 3 3.2e+08
1564437042-3892 https://www.fincaraiz.com.co/casa-en-venta/cali/julio-det-4543807.aspx Cali Zona Oriente 20 de julio 3.437539 -76.51451 Casa NA 2 290 NA 1 4 1.2e+08
1564437042-2317 https://www.fincaraiz.com.co/casa-en-venta/cali/julio-det-4689165.aspx Cali Zona Oriente 20 de julio 3.435655 -76.51537 Casa NA 3 220 2 2 4 3.5e+08

Exploración de datos

  1. Tabla de frecuencia por zona, se cálcula el conteo de viviendas disponibles por la zona y se calcula la frecuencia de unidades disponibles.De estos datos podemos inferir que el 57% de las ofertas disponibles se encuentran en la zona sur, las zonas centro y oriente son las de menor disponibilidad por debajo del 6%, y al menos el 57% de las viviendas disponibles son apartamentos.
table(olx_viviendas_cali$Zona) #llama la tabla con el conteo o frecuencia absoluta
## 
##  Zona Centro   Zona Norte   Zona Oeste Zona Oriente     Zona Sur 
##          141         1940         1287          553         1651
prop.table(table(olx_viviendas_cali$Zona)) #frecuencia conteo de proporciones
## 
##  Zona Centro   Zona Norte   Zona Oeste Zona Oriente     Zona Sur 
##   0.02530510   0.34816942   0.23097631   0.09924623   0.29630294
prop.table(table(olx_viviendas_cali$Zona))*100 
## 
##  Zona Centro   Zona Norte   Zona Oeste Zona Oriente     Zona Sur 
##     2.530510    34.816942    23.097631     9.924623    29.630294
barplot(table(olx_viviendas_cali$Zona))

table(olx_viviendas_cali$Tipo)
## 
## Apartamento        Casa 
##        3391        2528
prop.table(table(olx_viviendas_cali$Tipo))*100 
## 
## Apartamento        Casa 
##    57.29008    42.70992
pie(table(olx_viviendas_cali$Tipo))*100

## numeric(0)

##Exploración bivariada entre zona y tipo de apartamento

require(ggplot2)
## Loading required package: ggplot2
require(plotly)
## Loading required package: plotly
## Error: package or namespace load failed for 'plotly' in loadNamespace(i, c(lib.loc, .libPaths()), versionCheck = vI[[i]]):
##  namespace 'rlang' 0.4.12 is already loaded, but >= 1.0.0 is required
ggplot(data = olx_viviendas_cali, aes(y=Precio, x=Estrato)) + geom_point() + geom_smooth()
## `geom_smooth()` using method = 'gam' and formula 'y ~ s(x, bs = "cs")'
## Warning: Removed 21 rows containing non-finite values (stat_smooth).
## Warning: Computation failed in `stat_smooth()`:
## x has insufficient unique values to support 10 knots: reduce k.
## Warning: Removed 21 rows containing missing values (geom_point).

ACTIVIDAD DESARROLLADA EN CLASE

Paso 1. Filtrar un barrio de interés y sólo apartamentos

ID=1:dim(olx_viviendas_cali)[1]
olx_viviendas_cali=data.frame(ID,olx_viviendas_cali)

pos=which(olx_viviendas_cali$Barrio=="acopi")
olx_viviendas_cali_sub=olx_viviendas_cali[pos,]

require(RecordLinkage)
## Loading required package: RecordLinkage
## Loading required package: DBI
## Loading required package: RSQLite
## Loading required package: ff
## Loading required package: bit
## 
## Attaching package: 'bit'
## The following object is masked from 'package:base':
## 
##     xor
## Attaching package ff
## - getOption("fftempdir")=="C:/Users/ACER/AppData/Local/Temp/Rtmpu4LKVL/ff"
## - getOption("ffextension")=="ff"
## - getOption("ffdrop")==TRUE
## - getOption("fffinonexit")==TRUE
## - getOption("ffpagesize")==65536
## - getOption("ffcaching")=="mmnoflush"  -- consider "ffeachflush" if your system stalls on large writes
## - getOption("ffbatchbytes")==16777216 -- consider a different value for tuning your system
## - getOption("ffmaxbytes")==536870912 -- consider a different value for tuning your system
## 
## Attaching package: 'ff'
## The following objects are masked from 'package:utils':
## 
##     write.csv, write.csv2
## The following objects are masked from 'package:base':
## 
##     is.factor, is.ordered
## RecordLinkage library
## [c] IMBEI Mainz
## 
## Attaching package: 'RecordLinkage'
## The following object is masked from 'package:bit':
## 
##     clone
## The following object is masked from 'package:base':
## 
##     isFALSE
pos2=which(jarowinkler("acopi",olx_viviendas_cali$Barrio)>0.8 & olx_viviendas_cali$Tipo=="Apartamento")
olx_viviendas_cali_sub=olx_viviendas_cali[pos2,]
head(olx_viviendas_cali_sub)
ID ID.1 URL ciudad Zona Barrio Cordenada_latitud cordenada_longitud Tipo piso Estrato Area_contruida parqueaderos Baños Habitaciones Precio
10 10 1564442091-11922 https://www.fincaraiz.com.co/apartamento-en-venta/cali/acopi-det-4658340.aspx Cali Zona Norte acopi 3.468187 -76.49006 Apartamento NA 5 105 NA 3 3 4.30e+08
13 13 1564442091-10763 https://www.fincaraiz.com.co/apartamento-en-venta/cali/acopi-det-4471674.aspx Cali Zona Norte acopi 3.476632 -76.49780 Apartamento 5 6 377 1 4 4 8.20e+08
15 15 1564442091-11875 https://www.fincaraiz.com.co/apartamento-en-venta/cali/acopi-det-4652872.aspx Cali Zona Norte acopi 3.448428 -76.49899 Apartamento NA 3 176 NA 1 5 1.99e+08
16 16 1564442091-7471 https://www.fincaraiz.com.co/apartamento-en-venta/cali/acopi-det-4780247.aspx Cali Zona Norte acopi 3.449009 -76.49911 Apartamento NA 5 235 NA 4 4 3.20e+08
19 19 1564442091-11836 https://www.fincaraiz.com.co/apartamento-en-venta/cali/acopi-det-4658337.aspx Cali Zona Norte acopi 3.481743 -76.50324 Apartamento NA 5 85 NA 2 2 3.45e+08
20 20 1564442091-11929 https://www.fincaraiz.com.co/apartamento-en-venta/cali/acopi-det-4657985.aspx Cali Zona Norte acopi 3.448446 -76.50356 Apartamento NA 3 61 NA 1 3 1.30e+08

Paso 2. Exploración inicial de los datos

Indicadores importantes

promedio_precio=mean(olx_viviendas_cali_sub$Precio,na.rm = TRUE)
promedio_precio=mean(olx_viviendas_cali_sub$Precio,na.rm = TRUE)
mediana_precio=median(olx_viviendas_cali_sub$Precio,na.rm = TRUE)
promedio_area=mean(olx_viviendas_cali_sub$Area_contruida)
cantidad_ofertas=length(olx_viviendas_cali_sub$Zona)

resultado=data.frame(promedio_precio, mediana_precio, promedio_area, cantidad_ofertas)
resultado
promedio_precio mediana_precio promedio_area cantidad_ofertas
335660000 3.05e+08 120.08 50

Mapa interactivo

require(leaflet)
## Loading required package: leaflet
leaflet()%>% addCircleMarkers(lng = olx_viviendas_cali_sub$cordenada_longitud,lat = olx_viviendas_cali_sub$Cordenada_latitud,radius = 0.8)%>% addTiles()
library(readxl)
olx_viviendas_cali <- read_excel("~/olx_viviendas_cali.xlsx",sheet = 2)

ID=1:dim(olx_viviendas_cali)[1]
olx_viviendas_cali=data.frame(ID,olx_viviendas_cali)

pos=which(olx_viviendas_cali$Tipo=="Apartamento")
olx_viviendas_cali_sub2=olx_viviendas_cali[pos,]

require(RecordLinkage)

pos2=which(jarowinkler("Apartamentos",olx_viviendas_cali$Tipo)>0.8 & olx_viviendas_cali$Estrato==3)
olx_viviendas_cali_sub2=olx_viviendas_cali[pos2,]
head(olx_viviendas_cali_sub2)
ID ID.1 URL ciudad Zona Barrio Cordenada_latitud cordenada_longitud Tipo piso Estrato Area_contruida parqueaderos Baños Habitaciones Precio
15 15 1564442091-11875 https://www.fincaraiz.com.co/apartamento-en-venta/cali/acopi-det-4652872.aspx Cali Zona Norte acopi 3.448428 -76.49899 Apartamento NA 3 176 NA 1 5 1.99e+08
20 20 1564442091-11929 https://www.fincaraiz.com.co/apartamento-en-venta/cali/acopi-det-4657985.aspx Cali Zona Norte acopi 3.448446 -76.50356 Apartamento NA 3 61 NA 1 3 1.30e+08
22 22 1564442091-10458 https://www.fincaraiz.com.co/apartamento-en-venta/cali/acopi-det-4658307.aspx Cali Zona Norte acopi 3.465820 -76.50679 Apartamento NA 3 72 NA 1 2 9.80e+07
23 23 1564442091-10890 https://www.fincaraiz.com.co/apartamento-en-venta/cali/acopi-det-4658305.aspx Cali Zona Norte acopi 3.465820 -76.50679 Apartamento NA 3 96 NA 2 3 1.30e+08
24 24 1564442091-10516 https://www.fincaraiz.com.co/apartamento-en-venta/cali/acopi-det-4658303.aspx Cali Zona Norte acopi 3.465820 -76.50679 Apartamento NA 3 60 NA 1 1 9.20e+07
25 25 1564442091-10938 https://www.fincaraiz.com.co/apartamento-en-venta/cali/acopi-det-4658302.aspx Cali Zona Norte acopi 3.465820 -76.50679 Apartamento NA 3 68 NA 1 2 9.80e+07
promedio_precio=mean(olx_viviendas_cali_sub2$Precio,na.rm = TRUE)
ID=1:dim(olx_viviendas_cali)[1]
olx_viviendas_cali=data.frame(ID,olx_viviendas_cali)

pos=which(olx_viviendas_cali$Tipo=="casa")
olx_viviendas_cali_sub4=olx_viviendas_cali[pos,]

pos2=which(jarowinkler("Casa",olx_viviendas_cali$Tipo)>0.8 & olx_viviendas_cali$Area_contruida)
olx_viviendas_cali_sub4=olx_viviendas_cali[pos2,]

head(olx_viviendas_cali_sub4)
ID ID.2 ID.1 URL ciudad Zona Barrio Cordenada_latitud cordenada_longitud Tipo piso Estrato Area_contruida parqueaderos Baños Habitaciones Precio
1 1 1564437042-435 https://www.fincaraiz.com.co/casa-en-venta/cali/octubre-det-4475330.aspx Cali NA 12 de octubre 3.428979 -76.50216 Casa 3 2 320 1 4 9 2.3e+08
2 2 1564437042-388 https://www.fincaraiz.com.co/casa-en-venta/cali/octubre-det-4077928.aspx Cali NA 12 de octubre 3.427423 -76.50369 Casa 3 3 408 NA 6 7 4.5e+08
3 3 1564437042-5571 https://www.fincaraiz.com.co/casa-en-venta/cali/julio-det-4656445.aspx Cali Zona Oriente 20 de julio 3.433820 -76.51168 Casa NA 3 70 1 3 6 2.5e+08
4 4 1564437042-1538 https://www.fincaraiz.com.co/casa-en-venta/cali/julio-det-4734751.aspx Cali Zona Oriente 20 de julio 3.433686 -76.51237 Casa NA 3 120 1 2 3 3.2e+08
5 5 1564437042-3892 https://www.fincaraiz.com.co/casa-en-venta/cali/julio-det-4543807.aspx Cali Zona Oriente 20 de julio 3.437539 -76.51451 Casa NA 2 290 NA 1 4 1.2e+08
6 6 1564437042-2317 https://www.fincaraiz.com.co/casa-en-venta/cali/julio-det-4689165.aspx Cali Zona Oriente 20 de julio 3.435655 -76.51537 Casa NA 3 220 2 2 4 3.5e+08
promedio_area=mean(olx_viviendas_cali_sub4$Area_contruida,na.rm = TRUE)