Cargue los paquetes y las bases necesarias para poder trabajar con la base de datos de personas, hogares y viajes de la Encuesta Origen y Destino en formato data.table y para poder realizar las vizualizaciones con ggplot. importante: la base de personas solo considera a la gente que trabaja. Por lo tanto, la actividad analiza solo personas que tienen trabajo.
install.packages("ggplot2",dependencies = T)
install.packages("data.table")
install.packages("utf8")
library(ggplot2)
library(data.table)
library(utf8)
Personas<-fread(file = "Base_Personas.csv",encoding = "UTF-8")
Hogares<-fread(file = "Base_Hogares.csv",encoding = "UTF-8")
Viajes<-fread(file = "Base_Viajes.csv",encoding = "UTF-8")
Para poder tener un mejor análsis de mercado, es necesario analizar las características del hogar y de las personas que lo componen. Para esto, crea un objeto “EOD” que sea un merge entre la base de hogares y personas, dado el identificador de hogares.
EOD<-merge(x=Hogares,y=Personas,by="Hogar")
Reemplaza el objeto “EOD” con un merge entre la base EOD y viajes, dados los identificadores de hogares y de personas. De esta forma, tendrá información más detallada de las familias, las personas y los flujos de viajes. Pista: el argumento by puede contener dos variables, pero deben incluirse en un vector, de la forma …,by=c(“variable1”,“variable2”).
EOD<-merge(x=EOD,y=Viajes,by=c("Hogar","Persona"))
Realice un gráfico que permita ver el ingreso promedio de los hogares por macrozona. Considere que los hogares se encuentran repetidos en la base de datos. Por lo tanto, lo primero que debe hacer es crear una variable que sea un identificador de hogares y personas para poder eliminar los duplicados(utilice paste0 para crear esta variable). No olvide considerar los factores de expansión del hogar.
Pista 1: Busque crear un objeto con el ingreso promedio de los hogares por comuna con la función weighted.mean considerando los factores de expansión del hogar y luego realice el gráfico de barras con ese objeto. Pista 2: para ajustar el ángulo de las categorías en el eje x, agregue lo siguiente: theme(axis.text.x = element_text(angle=85, vjust=0.6)). Pista 3: para quitar la notación científica utilice: scale_y_continuous(labels=function(n){format(n, scientific = FALSE)}). Pista 4: considere geom_bar(stat=“identity”).
EOD[,hogper:=paste0(Hogar,Persona)]
EOD2<-EOD[!duplicated(hogper)]
ingprom<-EOD2[,weighted.mean(x=IngresoFinal,w=Factor, na.rm = T),by=Macrozonahg]
ggplot(data=ingprom, aes(x=Macrozonahg, y=V1)) + geom_bar(stat = "identity") + theme(axis.text.x = element_text(angle=85, vjust=0.6)) + scale_y_continuous(labels=function(n){format(n, scientific = FALSE)}) + labs(x="Macrozonas",y="Ingreso promedio",title = "Ingreso promedio de las personas por macrozona")
Realice un histograma con ggplot que muestre la distribución del ingreso de las personas para las comunas del Gran Valparaíso. Es decir, un histograma para cada comuna, pero en un mismo gráfico como muestra el diagrama de ejemplo. Considere los factores de expansión de las personas. Además, limite el ingreso a menos de 2000000. Pista 1: para ajustar el ángulo de las categorías en el eje x, agregue lo siguiente: theme(axis.text.x = element_text(angle=75, vjust=0.6)). Pista 2: para quitar la notación científica utilice: scale_x_continuous(labels=function(n){format(n, scientific = FALSE)}).
ggplot(data=EOD2[IngresoHogar<2000000],aes(x=IngresoHogar,weights=Factor))+
geom_histogram()+ facet_wrap(facets = "comunahg")
Un cliente cautivo es un consumidor que por condiciones externa, se le hace difícil sustituir un producto o servicio, ya que esto implica un costo para él, ya sea monetario o de esfuerzo. Dado este contexto, consumidores cautivos podrían ser aquellas personas que no poseen licencia de conducir, porque para ellos es más costoso en términos de tiempo, dinero y esfuerzo movilizarse entre macrozonas para comer otras hamburgesas que las que se encuentran cerca suyo. Es por esto que queremos identificar cuántas personas sin licencia existen en cada macrozona. Para ello, realice un gráfico de barras e identifique a los consumidores cautivos que no tienen licencia, por macrozona.
Pista 1: Utilice la variable LicenciaConducir: 1=No tiene licencia 2=Tiene licencia Recuerde que debe eliminar los duplicados de personas. Pista 2: para ajustar el ángulo de las categorías en el eje x, agregue lo siguiente: theme(axis.text.x = element_text(angle=90, vjust=0.6)). Pista 3: considere geom_bar(stat=“identity”).
ggplot(data=EOD2[LicenciaConducir<2],aes(x=Macrozonahg,weights=Factor))+
geom_bar(Stat="identity") + theme(axis.text.x = element_text(angle=90, vjust=0.6))