Instalar y cargar paquetes
library(ggplot2)
library(data.table)
library(utf8)
library(leaflet)
Abrir base de datos de egresos
EOD <- fread(file= "EOD_Trabajada.csv")
Considerar que las personas se encuentran repetidas en la base. Por lo tanto, si queremos realizar análisis de gráficos con las personas, debemos eliminar los duplicados.
personas <- EOD[!duplicated(EOD[,c(6,7)]),]
Realice un gráfico que muestre la distribución de edad de las personas. Recuerde que la base de datos es una encuesta, por lo tanto, es importante considerar los factores de expansión.
ggplot(data = personas, aes(x= Edad, weights = Factor)) + geom_histogram(bins=30)
ggplot(data=personas, aes(x=TiempoViaje, y=IngresoFinal, weights=Factor) ) + geom_point()
ggplot(data=personas[personas$TiempoViaje<200], aes(x=TiempoViaje, y=IngresoFinal, weights=Factor) ) + geom_point()
ggplot(data=personas[personas$TiempoViaje<200], aes(x=TiempoViaje, y=IngresoFinal, weights=Factor) ) + geom_point() + labs(title= "Gráfico", subtitle="Scatterplot Ingreso/Tiempo", x= "Tiempo de Viaje", y="Ingreso Final") + scale_y_continuous(labels=function(n){format(n,scientific=FALSE)})
Muestre la distribución del tiempo de viaje de las personas por actividad. Considere los factores de expansión.
ggplot(data=personas[personas$TiempoViaje<200], aes(x=TiempoViaje, weights=Factor) ) + geom_histogram(bins=30) + facet_wrap(facets="Actividad.y")
ggplot(data=personas, aes(x=ComunaR, weights=Factor)) + geom_bar() + scale_y_continuous(labels=function(n){format(n,scientific=FALSE)})
ggplot(data=personas, aes(x=ComunaR, weights=Factor, fill=Actividad.y)) + geom_bar(position="dodge") + scale_y_continuous(labels=function(n){format(n,scientific=FALSE)})
ingprom <- personas[,weighted.mean(x=IngresoFinal, weights=Factor,na.rm=T),by=ComunaR]
ggplot(data=ingprom, aes(x=ComunaR, y=V1)) + geom_bar(stat="identity") + scale_y_continuous(labels=function(n){format(n,scientific=FALSE)})
ggplot(data=ingprom, aes(x=ComunaR, y=V1)) + geom_bar(stat="identity") + scale_y_continuous(labels=function(n){format(n,scientific=FALSE)}) + labs(title= "Ingreso Promedio por Comuna", subtitle = "Por Comuna de Residencia", caption= "Fuente xx")
Muestre en un boxplot la distribución del tiempo de viaje por comuna. Limitando el tiempo a 200 minutos, agregando colores a las categorías y etiqueta a los ejes, títulos y subtítulos del gráfico.
ggplot(data=personas[personas$TiempoViaje<200], aes(x=ComunaR, y=TiempoViaje, fill=ComunaR)) + geom_boxplot() + labs(title= "Tiempo de Viaje por Comuna", subtitle="Por Comuna de Residencia", caption= "Fuente xx", x= "Comuna", y ="Tiempo de Viaje") + scale_fill_discrete(name= "Comuna")
Egresos <- fread(file="egresos_V.csv")
Egresos$lat <- as.numeric(Egresos$lat)
## Warning: NAs introduced by coercion
Egresos$lng <- as.numeric(Egresos$lng)
## Warning: NAs introduced by coercion
leaflet(Egresos[!duplicated(Egresos$lat),])%>% addTiles()%>% setView(lng= -71.5, lat=-33, zoom = 11) %>% addMarkers()
## Assuming "lng" and "lat" are longitude and latitude, respectively
## Warning in validateCoords(lng, lat, funcName): Data contains 1 rows with either
## missing or invalid lat/lon values and will be ignored
4. Cree una variable que corresponda a los días promedio de estadía en los establecimientos de salud.
Egresos[,dias_prom:=round(mean(DIAS_ESTAD),2), by="ESTAB"]
mytext <- paste("Nombre Establecimiento: ", Egresos[!duplicated(Egresos$lat),] $Nombre,"<br/>", "Tipo de Establecimiento: ", Egresos[!duplicated(Egresos$lat),]$TipoEstablecimiento, "<br/>", "Días Promedio de Estadía: ", Egresos[!duplicated(Egresos$lat),]$dias_prom, sep="")
leaflet(Egresos[!duplicated(Egresos$lat),])%>% addTiles()%>% setView(lng= -71.5, lat=-33, zoom = 11) %>% addMarkers(popup=mytext)
## Assuming "lng" and "lat" are longitude and latitude, respectively
## Warning in validateCoords(lng, lat, funcName): Data contains 1 rows with either
## missing or invalid lat/lon values and will be ignored