El siguiente informe nace como parte de las actividades de la asignatura Estadistica Avanzada del Master en Data Science en la Universitat Oberta de Catalunya, con esto busco ofrecer un blog personal de informes que permitan evidenciar el crecimiento académico que se puede ir adquiriendo con el paso del Master y como R Studio es una herramienta de gran uso.

Esta actividad final resume los tres análisis realizados anteriormente ( I Preprocesamiento de Datos , II Análisis Descriptivo e Inferencial y III Modelización Predictiva ). Sumado a esto, se presenta el análisis ANOVA sobre un set de datos.

Librerias

# Librerias
library(plotly)
library(ggplot2)
library(car)
library(DescTools)

Funciones

#functions
regressions<- function(coeficientes, test){
  intercepto<- if(!is.null(coeficientes[1])){coeficientes[1]}
  beta_0<- if(!is.null(coeficientes[2])){coeficientes[2]} #H
  beta_1<- if(!is.null(coeficientes[3])){coeficientes[3]} #Sex
  beta_2<- if(!is.null(coeficientes[4])){coeficientes[4]} #TraQ
  beta_3<- if(!is.null(coeficientes[7])){coeficientes[7]} #EduR
  probabilidad<- (intercepto + (beta_0 * as.double(test$H)) + (beta_1 * as.double(test$Sex)) + (beta_2 * as.double(test$Wtype)) + (beta_3*as.double(test$Etype)) )
  return(probabilidad) 
}

Descripción de Actividad

En esta actividad se realizará un análisis sobre la satisfacción laboral de los trabajadores de una empresa. En una primera fase de la investigación, se escogen datos de 38 trabajadores. El objetivo del análisis es investigar si la satisfacción laboral de los trabajadores de la empresa está relacionada con la calificación del trabajo y con el nivel de estudios. La muestra de 38 personas presenta una media de edad de 35, 2 ± 1 años, y una antigüedad en la empresa de 8, 34 ± 175 años. Los datos recogidos por cada trabajador son el nivel de estudios (1: sin estudios, 2: estudios primarios, 3: educación secundaria o educación profesional, 4: universitarios), el tipo de trabajo que realiza (Q: cualificado, PQ: poco cualificado), las horas que trabaja a la semana en promedio, el sexo, y la satisfacción laboral del trabajador (comprendida entre 0 y 10) recogida a través de un formulario. Los datos estan en el fichero adjunto con la actividad: “sat02.csv”.

Descripción Datos

Desrcargar Set

trabajadores<- read.csv('sat02.csv',header = T, sep = ',')
trabajadores<- data.frame(trabajadores)
head(trabajadores)

Para empezar, el archivo cuenta con 38 observaciones y 5 variables (Wtype, Etype, S, Sex, H). Los tipos de variables son:

str(trabajadores)
## 'data.frame':    38 obs. of  5 variables:
##  $ Wtype: Factor w/ 2 levels "PQ","Q": 1 1 1 1 2 1 1 1 1 2 ...
##  $ Etype: int  1 3 2 1 2 1 1 2 4 1 ...
##  $ S    : num  1.32 2.44 7.75 4.61 8.7 ...
##  $ Sex  : Factor w/ 2 levels "F","M": 1 1 1 1 2 1 2 2 1 2 ...
##  $ H    : num  38 26.8 31.5 23.8 27.7 ...

Análisis descriptivo y visualización

Análisis descriptivo de los datos de la muestra.

Inicialmente los datos presentan una variable con una mal clase, ya que se ha cargado como cuantitativa cuando en realidad debe ser cargada como cualitativa, esta es Etype, que describe y categoriza el tipo de estudios de los trabajadores de la muestra.

trabajadores$Etype<-factor(trabajadores$Etype)
summary(trabajadores)
##  Wtype   Etype        S          Sex          H        
##  PQ:22   1:13   Min.   : 1.319   F:16   Min.   :22.55  
##  Q :16   2: 8   1st Qu.: 2.860   M:22   1st Qu.:26.98  
##          3: 9   Median : 4.896          Median :30.57  
##          4: 8   Mean   : 5.728          Mean   :30.27  
##                 3rd Qu.: 8.669          3rd Qu.:33.50  
##                 Max.   :10.000          Max.   :41.10
head(trabajadores)

Diagrama de caja la distribución de la satisfacción laboral de la muestra

boxplot(trabajadores$S,names=c("Satisfaccion"),   horizontal=F,  col=c("red"), main="Satisfaccion Laboral")

Como se puede observar, la variable satisfaccion laboral presenta una asimetria positiva, ya que la mediana se encuentra por debajo de la media. No se evidencian valores atipicos. La mayoria de los empleados sienten una satisfaccion laboral entre 2.8596414 y 8.6687282

Diagramas de caja para conocer la distribución de la satisfacción laboral según el tipo de trabajo, el nivel educativo y el sexo.

Para presentar las distribuciones se hace uso de la libreria plotly() . En los siguientes gráficos se obsevan la relación entre las Variables Trabajadores-Satisfaccion Laboral y Trabajadores-tipo de trabajo (variable numerica y nominal)

p <- plot_ly(trabajadores, y = ~trabajadores$S, color = I("black"), alpha = 0.1, boxpoints = "suspectedoutliers")
p1 <- p %>% add_boxplot(x = ~trabajadores$Etype)
subplot(  p1, shareY = TRUE, margin = 0) %>% hide_legend()

Como se puede observar en el anterior grafico, el tipo de estudio influye de manera significativa en la satisfacción laboral, se puede ver a trav?s de los niveles profesional y universitario.

Por otra parte, en el siguiente gr?fico se obseva la relaci?n entre las Variables Trabajadores-Satisfaccion Laboral y Trabajadores-tipo de trabajo (variable numerica y nominal)

p <- plot_ly(trabajadores, y = ~trabajadores$S, color = I("black"), 
             alpha = 0.1, boxpoints = "suspectedoutliers")
p2 <- p %>% add_boxplot(x = ~trabajadores$Wtype)
p3 <- p %>% add_boxplot(x = ~trabajadores$Sex)
subplot(p2, p3, shareY = TRUE,  widths = c(0.5, 0.5), margin = 0) %>% hide_legend()

Como se puede observar, para la variable tipo de trabajo se identifica un valor atipico; sin embargo es la variable que presenta a simple vista una relación fuerte con la satisfacción laboral, ya que quienes califican la satisfacción con valores altos estan directamente realicados con un trabajo cualificado. Por otra parte, se evidencia que el genero Masculino tiene mayor relevancia a en la satisfacción que el femenino.

Estadística Inferencial

Intervalo de confianza del nivel de satisfacción laboral

Inicialmente para el caso de estudio se propone trabajar con los datos como una distribución normal. Para una muestra de 38 individuos, con un nivel de confianza del 97 % se tiene:

alfa<-0.03
cuantil<- qnorm(1-alfa/2)
promedio<- mean(trabajadores$S)
diferencias<- (trabajadores$S - promedio)^2
suma_diferencias<- sum(diferencias)
n<- length(trabajadores$S)
varianza<- suma_diferencias/(n-1)
desviacion<-sqrt(varianza)
Lic<- promedio - cuantil*desviacion/sqrt(n)
Lsc<- promedio + cuantil*desviacion/sqrt(n)

Una vez analizado los datos, se puede asegurar que el 97% de las veces que se tome un trabajador de la muestra al azar, su satisfacción laboral se encontrar? entre 4.6540636 y 6.8025078.

Test de dos muestras: satisfacción laboral en función del tipo de trabajo

?Hay diferencias significativas en la satisfacción laboral de los trabajadores que ocupan un puesto de trabajo cualificado y los que est?n en un lugar de trabajo poco cualificado?

Hipótesis nula y alternativa

\[ \left\{ \begin{array}{ll} H_{0}: & \mu_1 = \mu_2 \\ H_{1}: & \mu_1 \ne \mu_2 \end{array} \right. \]

u1: satisfacción Laboral Trabajadores cualificados
u2: satisfacción Laboral Trabajadores poco cualificado

Justificar qué método a aplicar

Para este caso practico y como parte del ejercicio, se puede ifentificar que ambas muestras no se distribuyen de manera normal (debido al comportamiento de las graficas seiguientes). Sin embargo se supondra que cuentan con varianzas poblacionales iguales y desconocidas; se usara la prueba T Student, ya que para muestras mayores a 30 tiende a una distribucion normal que puede ser evaluada con estadisticos z sin tener mayor diferencia. En esta comparaci?n, se tratan ambas muestras como independientes.

si_cuali<-subset(trabajadores$S, subset = trabajadores$Wtype == "Q") # trabajadores cualificados
no_cuali<-subset(trabajadores$S, subset = trabajadores$Wtype != "Q") # trabajadores no cualificados
par(mfrow = c(1, 2))
qqnorm(si_cuali, xlab = "", ylab = "", main = "Trabajos Cualificados")
qqline(si_cuali)
qqnorm(no_cuali, xlab = "", ylab = "", main = "Trabajos no Cualificados")
qqline(no_cuali)

Realizar los cálculos del estadístico de contraste, valor crítico y valor p, al 90 % y 95 % de nivel de confianza

\[\alpha = 0.05\]

Estadistico de Contraste
si_cuali_media<- mean(si_cuali) # media trabajadores cualificados
no_cuali_media<- mean(no_cuali) # media trabajadores no cualificados
si_cuali_n<- length(si_cuali) # tamaño trabajadores si cualificados
no_cuali_n<- length(no_cuali) #tamaño trabajadores no cualificados
si_cuali_diferencias <- (si_cuali - si_cuali_media)^2 # diferencias trabajadores cualificados
no_cuali_diferencias <- (no_cuali - no_cuali_media)^2 # diferencias trabajadores no cualificados
si_cuali_suma_diferencias <- sum(si_cuali_diferencias) # suma de las diferencias trabajadores cualificados
no_cuali_suma_diferencias <- sum(no_cuali_diferencias) # suma de las diferencias trabajadores no cualificados
si_cuali_varianza<- si_cuali_suma_diferencias/(si_cuali_n-1) #varianza trabajadores cualificados
no_cuali_varianza<- no_cuali_suma_diferencias/(no_cuali_n-1) # varianza trabajadores no cualificados
si_cuali_desviacion<-sqrt(si_cuali_varianza) # desviacion trabajadores cualificados
no_cuali_desviacion<-sqrt(no_cuali_varianza) # desviacion trabajadores no cualificados
s<- sqrt((((si_cuali_n-1)*si_cuali_varianza)+((no_cuali_n-1)*no_cuali_varianza))/(si_cuali_n+no_cuali_n-2))
raiz_esta_cuali<-sqrt((1/si_cuali_n) + (1/no_cuali_n)) 
estadistico_Con_cuali<- (si_cuali_media - no_cuali_media)/(s*(raiz_esta_cuali)) # Estadistico de contraste
estadistico_Con_cuali
## [1] 5.896282
Valor P
valor_p_cuali<- 2 * pnorm(abs(estadistico_Con_cuali), lower.tail=FALSE)
valor_p_cuali
## [1] 3.717843e-09
Valor Critico
diferencia_medias <- si_cuali_media -no_cuali_media
valor_critico_trabajadores<- qt(0.05, si_cuali_n+no_cuali_n-2, lower.tail = TRUE)
valor_critico_trabajadores
## [1] -1.688298
90%
valor_critico_trabajadores2<- qt(0.10, si_cuali_n+no_cuali_n-2, lower.tail = TRUE)
valor_critico_trabajadores2
## [1] -1.305514

Interpretar el resultado y dar respuesta a la pregunta planteada

Una vez identificado el valor p (3.717843510^{-9}) se puede rechazar la hipotesis nula, ya que este es menor que el alpha propuesta para el caso. Es decir que los trabajadores cualificados tienen una satifaccion laboral diferente a la satisfacion laboral de los trabajadores no cualificados de la muestra.

Test de dos muestras: satisfacción laboral en función del sexo

?Se puede afirmar que las mujeres tienen una satisfacción laboral inferior a la de los hombres? Calcularlo para un nivel de confianza del 90 % y 95 %.

Escribir la hipótesis nula y alternativa

\[ \left\{ \begin{array}{ll} H_{0}: & \mu_1 = \mu_2 \\ H_{1}: & \mu_1 \le \mu_2 \end{array} \right. \]

u1: satisfacción Laboral Trabajadores Mujeres u2: satisfacción Laboral Trabajadores Hombres

Justificar qué método a aplicar

De manera similar, para este caso se utilizara una prueba t-student por ser mayor a 30 la muestra de individuos. De igual forma se trataran como independientes

mujeres_s<-subset(trabajadores$S, subset = trabajadores$Sex == "F")
hombres_s<-subset(trabajadores$S, subset = trabajadores$Sex == "M")
par(mfrow = c(1, 2))
qqnorm(mujeres_s, xlab = "", ylab = "", main = "Mujeres")
qqline(mujeres_s)
qqnorm(hombres_s, xlab = "", ylab = "", main = "Hombres")
qqline(hombres_s)

Estadístico de contraste, valor crítico y valor p, al 90 % y 95 % de nivel de confianza

\[\alpha = 0.05\]

Estadistico de Contraste
mujeres_s_media<- mean(mujeres_s)
hombres_s_media<- mean(hombres_s)
mujeres_s_n<- length(mujeres_s)
hombres_s_n<- length(hombres_s)
mujeres_s_diferencias <- (mujeres_s - mujeres_s_media)^2
hombres_s_diferencias <- (hombres_s - hombres_s_media)^2
mujeres_s_suma_diferencias <- sum(mujeres_s_diferencias)
hombres_s_suma_diferencias <- sum(hombres_s_diferencias)
mujeres_s_varianza<- mujeres_s_suma_diferencias/(mujeres_s_n-1)
hombres_s_varianza<- hombres_s_suma_diferencias/(hombres_s_n-1)
mujeres_s_desviacion<-sqrt(mujeres_s_varianza)
hombres_s_desviacion<-sqrt(hombres_s_varianza)
s<- sqrt((((mujeres_s_n-1)*mujeres_s_varianza)+((hombres_s_n-1)*hombres_s_varianza))/(mujeres_s_n+hombres_s_n-2))
raiz_esta_cuali<-sqrt((1/mujeres_s_n) + (1/hombres_s_n)) 
estadistico_Con_cuali<- (mujeres_s_media - hombres_s_media)/(s*(raiz_esta_cuali))
estadistico_Con_cuali
## [1] -1.720463
Valor P
valor_p_Sex<- pt((estadistico_Con_cuali), df = (mujeres_s_n+hombres_s_n-2))
valor_p_Sex
## [1] 0.04696726
Valor Critico
valor_critico_Sex<- qt(0.05, mujeres_s_n+hombres_s_n-2, lower.tail = TRUE)
valor_critico_Sex
## [1] -1.688298
90%
valor_critico_Sex2<- qt(0.10, mujeres_s_n+hombres_s_n-2, lower.tail = TRUE)
valor_critico_Sex2
## [1] -1.305514

Interpretación del resultado y respuesta a la pregunta planteada

De igual manera que el ejercicio anterior, debido al p valor (0.0469673) podemos rechazar la hipotesis nula, es decir que la satisfaccion laboral de las mujeres es menor a la satisfaccion laboral de los hombres.

Regresión

Modelo de regresión

trabajadores$WtypeR <- relevel(trabajadores$Wtype, ref = "PQ") # reordenacion de la variable
trabajadores$SexR <- relevel(trabajadores$Sex, ref = "F") # reordenacion de la variable
trabajadores$EtypeR <- relevel(as.factor(trabajadores$Etype), ref = "1") # reordenacion de la variable

reg_multiple <- lm(S ~ H + SexR + EtypeR + WtypeR, data=trabajadores) # regresión multiple
summary(reg_multiple)
## 
## Call:
## lm(formula = S ~ H + SexR + EtypeR + WtypeR, data = trabajadores)
## 
## Residuals:
##     Min      1Q  Median      3Q     Max 
## -4.1736 -1.5668  0.1855  1.7080  3.2844 
## 
## Coefficients:
##             Estimate Std. Error t value Pr(>|t|)    
## (Intercept)  4.39778    2.49245   1.764   0.0875 .  
## H           -0.05711    0.07770  -0.735   0.4679    
## SexRM        0.63932    0.74585   0.857   0.3979    
## EtypeR2      2.50859    0.95900   2.616   0.0136 *  
## EtypeR3      1.34802    1.03121   1.307   0.2008    
## EtypeR4      1.17412    0.99334   1.182   0.2462    
## WtypeRQ      3.78734    0.79076   4.789 3.92e-05 ***
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
## 
## Residual standard error: 2.119 on 31 degrees of freedom
## Multiple R-squared:  0.596,  Adjusted R-squared:  0.5178 
## F-statistic: 7.621 on 6 and 31 DF,  p-value: 4.416e-05

Interpretación

como se puede observar en el anterior resumen, la variable traRQ tiene un nivel de significancia al __99%(***),__ seguido por EduR2 con un nivel de significancia del __95%(*). Para sorpresa, las variables sex y horas trabajadas __ no presentan significancia. Ahora bien, inicialmente la variable sex se ha configurado con un relevel M, al cambiar el genero en el relevel de la variable sex (F), se puede observar que a pesar de que sigue siendo no significativa, presenta una relaci?n inversamente proporcional a la relaci?n de relevel inicial

Predicción

A continuacion se aplica el modelo hallado a “hombre, que trabaja 40h semanales (h/s), de nivel de estudios universitarios y con un trabajo cualificado” y " hombre, que trabaja 40 h/s, de nivel de estudios universitarios, y trabajo poco cualificado "

test <- data.frame(SexR = c("M", "M"), H = c(40, 40), EtypeR = c("4", "4"),WtypeR = c("Q", "PQ"))
resultado<- predict.lm(reg_multiple, newdata = test)

Tras colocar a evaluación los datos de los 2 sujetos de prueba, se puede evidenciar que el sujeto con trabajo cualificado tienen una mayor satisfacción laboral, ya que alcanzan una satisfacción de 7.71 segun el modelo predictivo; por otra parte, el sujeto: con trabajo No cualificado tiene una satisfacción de 3.93

Interpretación de la predicción

A manera de analisis, la regresion multiple del modelo permite identificar un ajuste no significativo, ya que obtiene un valor lejano a 1, ajustandose con esfuerzo al modelo lineal. Es decir, el presente modelo solo es capaz de explicar un 59.596% de la variabilidad de S. De igual forma, el coeficiente de determinancion ajustado, con un valor de 51.776% nos indica que este modelo cuenta con predictores de poco utilidad. Otro aspecto importante de analizar es el pvalor, el cual, para todas las variables excepto traRQ (que es la unica que contribuye de forma significativa), tienen una influencia no significativa debajo del 90%, identificado con (*) o nada.

Intervalos de predicción

Como se puede ver a continuacion, se presentan los limites posibles que pueden tomar las predicciones con los datos ingresados.

predict(reg_multiple, newdata = test, interval = c("prediction"))
##        fit       lwr       upr
## 1 7.714188  2.814585 12.613791
## 2 3.926849 -1.100521  8.954218

Ajuste del modelo

grafica_Residuos<- scatterplot(residuals(reg_multiple) ~ fitted.values(reg_multiple),
            regLine=FALSE, smooth=FALSE, boxplot=FALSE)

Como se puede observar en la anterior grafica, los residuos no presentan ningun patron.

Análisis de varianza unifactorial

Hipótesis nula y alternativa

Escribir la hipótesis nula y la alternativa para el ANOVA. $$ { \[\begin{array}{ll} H_{0}: & \mu_1 = \mu_2 \\ H_{1}: & \mu_1\ \neq \mu_2 \end{array}\]

.

$$ u1: Media del nivel satisfacción Laboral
u2: Media del nivel satisfacción Laboral en uno de los niveles de estudio

Modelo

Para iniciar se identifica el numero de grupos y la cantidad de observaciones por grupo. Asi como se presenta un boxplot que permita identificar la distribucion de los grupos, observando asimetria.

table(trabajadores$Etype)
## 
##  1  2  3  4 
## 13  8  9  8
ggplot(data = trabajadores, aes(x = trabajadores$Etype, y = trabajadores$S, color = trabajadores$Etype)) + geom_boxplot() + theme_bw()

analisis_anova<- aov(trabajadores$S ~ trabajadores$Etype)
summary(analisis_anova)
##                    Df Sum Sq Mean Sq F value Pr(>F)  
## trabajadores$Etype  3  72.17   24.05   3.003 0.0439 *
## Residuals          34 272.36    8.01                 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Como se puede observar en el resumen de la ANOVA, existen evidencias significativas para decir que la satisfaccion laboral en funcion del nivel educativo de los empleados de la muestra presenta diferencias. Por ejemplo, para el caso de F se obtuvo un valor de 3,34 y para el pvalor un 0.0439. De igual forma tenemos 72.17 para la suma cuadratica intergrupo, siendo menor a la suma cuadratica intra con un valor de 272,36.

C+alculos

Con el fin de profundizar en la comprensi?n del modelo ANOVA, calcular manualmente la suma de cuadrados intra y la suma de cuadrados entre grupos. Los resultados deben coincidir con el resultado del modelo ANOVA. Como referencia, puedes obtener las f?rmulas de L?pez-Rold?n y Fachelli (2015), p?ginas 29-33

media_Sat_lab<- mean(trabajadores$S)
sum_tot_cuadrados <-sum((trabajadores$S-media_Sat_lab)^2)
MediasG_Etype <- tapply(trabajadores$S, trabajadores$Etype, mean)
muestras_Etype<- table(trabajadores$Etype)
suma_cua_inter<- sum(muestras_Etype*((mean(trabajadores$S) - MediasG_Etype)^2))
scr<- sum((trabajadores$S - MediasG_Etype[as.numeric(trabajadores$Etype)])^2)

Como se puede observar, los calculos realizados de manera manual dan:

Calculo Resultado
SCE 72.1663139
SCR 272.3563943

Adecuación del modelo

Visualización de la adecuación del modelo

plot(analisis_anova)

Normalidad de los residuos

Como se puede observar en el grafico de normal Q-Q, los residuos presentados por el modelo no presenta el supuesto de linealidad, ya que se pueden evidenciar dos colas que toman una forma de S.

Homoscedasticidad los residuos

Residuales vs Fitted

Para este grafico se puede observar la existencia de valores atipicos, asi como se logra identificar que existe un no cumplimiento al supuesto de que la varianza de los residuos es constante. Puede notarse que existe un punto atipico muy por encima de los demas. Por otra parte, la distribucion de los valores presenta una desigualdad.

Scale Location

En esta grafica se puede observar que la distribucion de los puntos presenta, con un poco de esfuerzo, un patron de cambio. Lo cual lleva a pensar que puede exisstir una correlacion entre algunos de los datos, dejando el supuesto de independencia de un lado.

Residuales vs Factor Levels

Para este grafico debe existir un patron no aleatorio, el cual parece no cumplirse, ya que no es evidente una distribucion que identifique un patron

ANOVA no paramétrico

Kruskal-Wallis

analisis_kruskal<-kruskal.test(trabajadores$S ~ trabajadores$Etype)
print(analisis_kruskal)
## 
##  Kruskal-Wallis rank sum test
## 
## data:  trabajadores$S by trabajadores$Etype
## Kruskal-Wallis chi-squared = 5.5492, df = 3, p-value = 0.1357

Como se puede observar, el pvalue, con un valor tan alto permite evidenciar que no hay diferencias significativas en los grupos.

Interpretación

El cálculo del test de Kruskal-Wallis se diferencia del calculo Anova en que es un test que emplea rangos para contrastar la hip?tesis de que k muestras han sido obtenidas de una misma poblaci?n. Es decir, el test Kruskal contrasta si las diferentes muestras estan equidistribuidas y que pertenecen a una misma distribucion, mientras que ANOVA compara las medias de valores. Por otra parte, Anova es utilizado para trabajar con datos gaussianos, mientras que kruskal con no gaussianos. No se utiliza con frecuencia kruskal debido a que una vez recopilados los datos, es frecuente trasladarlos a distribuciones normales para su facil analisis.

Factores: tipo de trabajo y nivel educativo

Análisis visual de los efectos principales y posibles interacciones

En la siguiente tabla se expone la media de satisfaccion laboral para cada grupo de tipo de trabajo y tipo de educacion

library(dplyr)
grupos<-group_by(trabajadores, Wtype, Etype) %>%
  summarise(mean(S))
grupos
ggplot(grupos, aes(x= grupos$Etype, y=grupos$`mean(S)`), group = grupos$Wtype) + 
  geom_line(aes(linetype = grupos$Wtype, color = grupos$Wtype)) +  geom_point(aes(color = grupos$Wtype))+
  scale_linetype_manual(values = c("solid", "solid"))+  scale_color_manual(values = c("green", "purple"))

Como se puede observar en el anterior grafico, existe una interaccion entre tipo de educacion y tipo de trabajo, ya que las lineas no presenta paralelismo e incluso estas se intersectan en el nivel 1 de tipo de educacion. Este cruce permite identificar que la satisfaccion laboral de los trabajadores en trabajos poco cualificados es mayor a los de trabajos cualificados para el nivel de estudios sin estudios.

ANOVA multifactorial

Como se observo en la grafica de interaccion, es necesario utilizar el modelo no aditivo de anova que permite la interaccion entre factores.

options(contrasts = c("contr.sum", "contr.poly"))
anova_multi <- aov(trabajadores$S ~ trabajadores$Etype * trabajadores$Wtype, data = trabajadores)
anova_tipo<- Anova(anova_multi, type = "III")
anova_tipo
model.tables(anova_multi, "means")
## Tables of means
## Grand mean
##          
## 5.728286 
## 
##  trabajadores$Etype 
##          1     2     3     4
##      3.877 6.913 7.037 6.079
## rep 13.000 8.000 9.000 8.000
## 
##  trabajadores$Wtype 
##         PQ      Q
##      4.258  7.749
## rep 22.000 16.000
## 
##  trabajadores$Etype:trabajadores$Wtype 
##                   trabajadores$Wtype
## trabajadores$Etype PQ     Q     
##                1    3.957  3.611
##                rep 10.000  3.000
##                2    5.840  8.701
##                rep  5.000  3.000
##                3    3.007  9.052
##                rep  3.000  6.000
##                4    2.158 10.000
##                rep  4.000  4.000

Una vez realizados los calculos de la anova multifactorial, se puede evidenciar que existe una interaccion significativa con un valor de 13.82. De igual forma se observa que la variable con mayor significancia es tipo de nivel educativo con un valor de 8.96 , seguida por tipo de nivel de trabajo con un valor de 67.63

Adecuación del modelo

plot(anova_multi)

#### Normalidad de los residuos Como se puede observar en el grafico de normal Q-Q, los residuos presentados por el modelo siguen el supuesto de linealidad, ya que se pueden evidenciar un ajuste de los residuos a la normal.

Residuales vs Fitted

Para este grafico se puede observar la distribucion aleatoria de los residuos.

Scale Location

En esta grafica se puede observar el supuesto de no heterocedasticidad, ya que los valores no salen del rango de [-2,2]

Residuales vs Factor Levels

En este grafico se puede evidenciar que no se encuentran valores que tengan mayor influencia que otros, debido a la tendencia de la linea.

Factores: tipo de trabajo y sexo

Análisis visual de los efectos principales y posibles interacciones

grupos_Sex<-group_by(trabajadores, Sex, Wtype) %>%
  summarise(mean(S))
grupos_Sex
ggplot(grupos_Sex, aes(x= grupos_Sex$Wtype, y=grupos_Sex$`mean(S)`), group = grupos_Sex$Sex) + 
  geom_line(aes(linetype = grupos_Sex$Sex, color = grupos_Sex$Sex)) +  geom_point(aes(color = grupos_Sex$Sex))+
  scale_linetype_manual(values = c("solid", "solid"))+  scale_color_manual(values = c("green", "purple"))

De igual forma que el anterior grafico de interaccion, se puede observar en este que existe una interseccion de interaccion. De igual forma se evidencia que los hombres con trabajos de tipo cualificados tienen mejor satisfaccion laboral que las mujeres. Por otro lado, se puede observar tambien que las mujeres tienen menor satisfaccion laboral que los hombres en trabajos poco cualificados.

ANOVA multifactorial

anova_multi2 <- aov(trabajadores$S ~ trabajadores$Wtype * trabajadores$Sex, data = trabajadores)
anova_tipo2<- Anova(anova_multi2, type = "III")
anova_tipo2
model.tables(anova_multi2, "means")
## Tables of means
## Grand mean
##          
## 5.728286 
## 
##  trabajadores$Wtype 
##         PQ      Q
##      3.928  8.203
## rep 22.000 16.000
## 
##  trabajadores$Sex 
##          F      M
##      5.486  5.904
## rep 16.000 22.000
## 
##  trabajadores$Wtype:trabajadores$Sex 
##                   trabajadores$Sex
## trabajadores$Wtype F      M     
##                PQ   3.285  4.700
##                rep 12.000 10.000
##                Q    9.165  7.883
##                rep  4.000 12.000

Una vez realizados los calculos de la anova multifactorial, se puede evidenciar que no existe una interaccion significativa entre sexo y tipo de trabajo con un valor de 3. De igual forma se observan diferencias significativas en funcion del trabajo con un valor de 33.90.

Comparaciones múltiples

ScheffeTest(anova_multi)
## 
##   Posthoc multiple comparisons of means : Scheffe Test 
##     95% family-wise confidence level
## 
## $`trabajadores$Etype`
##           diff     lwr.ci   upr.ci   pval    
## 2-1  3.0355987  0.4523539 5.618844 0.0114 *  
## 3-1  3.1597482  0.6669277 5.652569 0.0049 ** 
## 4-1  2.2017331 -0.3815117 4.784978 0.1479    
## 3-2  0.1241495 -2.6692356 2.917535 1.0000    
## 4-2 -0.8338656 -3.7082351 2.040504 0.9839    
## 4-3 -0.9580151 -3.7514002 1.835370 0.9591    
## 
## $`trabajadores$Wtype`
##          diff   lwr.ci  upr.ci    pval    
## Q-PQ 3.491179 1.602348 5.38001 1.8e-05 ***
## 
## $`trabajadores$Etype:trabajadores$Wtype`
##                 diff     lwr.ci     upr.ci    pval    
## 2:PQ-1:PQ  1.8829648 -1.2657492  5.0316789 0.56720    
## 3:PQ-1:PQ -0.9495915 -4.7338748  2.8346919 0.99317    
## 4:PQ-1:PQ -1.7989613 -5.1999612  1.6020386 0.70895    
## 1:Q-1:PQ  -0.3456078 -4.1298912  3.4386755 0.99999    
## 2:Q-1:PQ   4.7439735  0.9596902  8.5282569 0.00561 ** 
## 3:Q-1:PQ   5.0947846  2.1261485  8.0634207 6.6e-05 ***
## 4:Q-1:PQ   6.0429163  2.6419164  9.4439162 3.6e-05 ***
## 3:PQ-2:PQ -2.8325563 -7.0308417  1.3657291 0.41082    
## 4:PQ-2:PQ -3.6819261 -7.5382975  0.1744453 0.07102 .  
## 1:Q-2:PQ  -2.2285727 -6.4268581  1.9697128 0.70526    
## 2:Q-2:PQ   2.8610087 -1.3372768  7.0592941 0.39781    
## 3:Q-2:PQ   3.2118198 -0.2692146  6.6928542 0.09024 .  
## 4:Q-2:PQ   4.1599514  0.3035800  8.0163229 0.02627 *  
## 4:PQ-3:PQ -0.8493698 -5.2400418  3.5413022 0.99866    
## 1:Q-3:PQ   0.6039836 -4.0898422  5.2978095 0.99991    
## 2:Q-3:PQ   5.6935650  0.9997392 10.3873908 0.00812 ** 
## 3:Q-3:PQ   6.0443761  1.9794037 10.1093485 0.00062 ***
## 4:Q-3:PQ   6.9925077  2.6018357 11.3831797 0.00022 ***
## 1:Q-4:PQ   1.4533535 -2.9373185  5.8440255 0.96619    
## 2:Q-4:PQ   6.5429348  2.1522628 10.9336068 0.00060 ***
## 3:Q-4:PQ   6.8937459  3.1829508 10.6045410 1.7e-05 ***
## 4:Q-4:PQ   7.8418776  3.7769052 11.9068500 8.3e-06 ***
## 2:Q-1:Q    5.0895813  0.3957555  9.7834071 0.02506 *  
## 3:Q-1:Q    5.4403924  1.3754200  9.5053648 0.00255 ** 
## 4:Q-1:Q    6.3885241  1.9978521 10.7791961 0.00084 ***
## 3:Q-2:Q    0.3508111 -3.7141613  4.4157835 0.99999    
## 4:Q-2:Q    1.2989428 -3.0917292  5.6896148 0.98195    
## 4:Q-3:Q    0.9481317 -2.7626635  4.6589268 0.99238    
## 
## ---
## Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Se puede observar que existen diferencias en los grupos con respecto a la relacion de las otras variables. Eso se puede argumentar con diferencias como por ejemplo: * Tipo de Nivel educativo 1 y 2 * Tipo de Nivel educativo 1 y 3 * Tipo de Nivel educativo 2,3 y 4 vs trabajo cualificado de nivel educativo 1.

Conclusiones

El objetivo principal era conocer si la satisfaccion laboral estaba directamente relacionada con el tipo de nivel de estudios y el tipo de nivel de trabajo, por lo que se puede concluir que si. A pesar de que pareciera a simple vista que esta relacion existe desde el analisis descriptivo, hacer uso de la ANOVA permitio identificar que los trabajadores de tipo de trabajo cualificado con niveles de estudio superiores a 1, califican su satisfaccion laboral como buena (o al menos existe una tendencia)