Carlos Jimémez-Gallardo , 2019
EstadÃstico
MSc Infórmatica Educativa
Universidad de La Frontera
Data Scientist
www.innovate.cl
un propósito, si tiene claro que quiere decir con el gráfico es más fácil escogerlo.
el tipo de variable a graficar debe ser continua
Revisar si requiere crear una tabla resumen, dependera de lo que quiere mostrar
Las librerias son esenciales para facilitarse la vida. Algunas de ellas
library(tidyverse) # carga un conjunto de librerias necesarias, entre ellas dplyr, ggplot2
si bien todas ayudan, para este documento solo utilizaré GGPLOT2 para no hacer un documento tan extenso.
pueden encontrar el archivo de datos en el siguiente link: https://github.com/cjimenezgallardo/DATASETS/blob/main/datos_empleados.xlsx
Los datos corresponden Sueldo percibidos en una empresa, y que como variable, se tienen:
dataej<-datos_empleados
names(dataej)
## [1] "ID" "Sexo" "FechaNAc" "educacion"
## [5] "labor" "Sueldo_actual" "Sueldo_inicial" "antigüedad"
## [9] "experiencia" "minoria"
CONSEJO: realice un bosquejo manual, que le permita entender que quiere mostrar, para que luego lo contrareste con lo que aparecio en R
Objetivo, mostrar evolucion del sueldo promedio por nivel educativo
ggplot(data = dataej,aes(x=educacion,y=Sueldo_actual))+
geom_line()
el grafico anterior, muestra todos los datos, y los ordena en funcion de X, luego suma por cada estado de la variable y genera la linea vertical.
entonces si quiere hacer un punto por cada año, es aconsejable obtener un valor representativo.
tablar1 <- dataej%>%
group_by(educacion) %>%
summarise(Prom=mean(Sueldo_actual))
ggplot(data = tablar1,aes(x=educacion,y=Prom))+
geom_line()
tablar2 <- dataej%>%
group_by(educacion,Sexo) %>%
summarise(Prom=mean(Sueldo_actual))
ggplot(data = tablar2,aes(x=educacion,y=Prom,color=Sexo))+
geom_line()+
geom_point()+
facet_wrap(~"Evolución del sueldo promedio de acuerdo a lo años de estudio")
ggplot(data = tablar2,aes(x=educacion,y=Prom,color=Sexo))+
geom_line(lwd=1.1)+
geom_point(size=2)+
facet_wrap(~"Evolución del sueldo promedio de acuerdo a lo años de estudio según sexo")
#algo mas complejo
#crear una variable escolaridad
dataej$estudios<-"1"
dataej$estudios[dataej$educacion==12]<-"2"
dataej$estudios[dataej$educacion>12 & dataej$educacion<=14 ]<-"3"
dataej$estudios[dataej$educacion>14 & dataej$educacion<=18 ]<-"4"
dataej$estudios[dataej$educacion>18]<-"5"
tablar4 <- dataej%>%
group_by(experiencia,estudios) %>%
summarise(Prom=mean(Sueldo_actual))
ggplot(data = tablar4,aes(x=experiencia,y=Prom,color=estudios))+
geom_line(lwd=0.9)+
geom_point(size=2)+
scale_color_manual(values=c("#D43F3A", "#EEA236", "#5CB85C", "#46B8DA", "#9632B8"))+
facet_wrap(~"Evolución del sueldo promedio de acuerdo a la experiencia segun los años de estudio")
ggplot(data = tablar4,aes(x=experiencia,y=Prom,color=estudios))+
geom_line(lwd=0.9)+
scale_color_manual(values=c("#D43F3A", "#EEA236", "#5CB85C", "#46B8DA", "#9632B8"))+
facet_wrap(~"Evolución del sueldo promedio de acuerdo a la experiencia segun nivel de estudio")+
scale_color_discrete(labels=c("Basica","Media","Técnica","Universitaria","Postgrado"))
Resaltar una linea
ggplot(tablar4,aes(x=experiencia,y=Prom,color=estudios))+
geom_line(lwd=0.9)+
scale_color_manual(values=c("red","gray","gray","gray","gray"),
labels=c("Basica","Media","Técnica","Universitaria","Postgrado"))+
ggtitle("Evolución del sueldo promedio de acuerdo a la experiencia en personal con educacion basica")