El siguiente informe corresponde la construcción de modelos de regresión para los datos del personal de una empresa en donde la variable dependiente será el ingreso mensual de los empleados expresado en pesos colombianos. Los datos se muestran a continuación:
library(readxl)
## Warning: package 'readxl' was built under R version 4.2.3
base <- read_excel("C:/Users/aligomez/Downloads/base3_ingreso.xlsx")
head(base)
## # A tibble: 6 × 24
## Ingreso_Mensual Edad Educación Años_Experiencia Antigüedad Horas_Extra
## <dbl> <dbl> <dbl> <dbl> <dbl> <chr>
## 1 5993000 41 2 8 6 Si
## 2 5130000 49 1 10 10 No
## 3 2090000 37 2 7 0 Si
## 4 2909000 33 4 8 8 Si
## 5 3468000 27 1 6 2 No
## 6 3068000 32 2 8 7 No
## # ℹ 18 more variables: Departamento <chr>, Distancia_Casa <dbl>,
## # Campo_Educación <chr>, Satisfacción_Ambiental <dbl>, Genero <chr>,
## # Cargo <chr>, Satisfación_Laboral <dbl>, Estado_Civil <chr>,
## # Trabajos_Anteriores <dbl>, Porcentaje_aumento_salarial <dbl>,
## # Rendimiento_Laboral <dbl>, Capacitaciones <dbl>,
## # Equilibrio_Trabajo_Vida <dbl>, Antigüedad_Cargo <dbl>,
## # Años_ultima_promoción <dbl>, Años_acargo_con_mismo_jefe <dbl>, …
if (!requireNamespace("ggplot2", quietly = TRUE)) {
install.packages("ggplot2")
}
if (!requireNamespace("plotly", quietly = TRUE)) {
install.packages("plotly")
}
if (!requireNamespace("DescTools", quietly = TRUE)) {
install.packages("DescTools")
}
if (!requireNamespace("lmtest", quietly = TRUE)) {
install.packages("lmtest")
}
# Cargar paquetes
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.2.3
library(plotly)
## Warning: package 'plotly' was built under R version 4.2.3
##
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
##
## last_plot
## The following object is masked from 'package:stats':
##
## filter
## The following object is masked from 'package:graphics':
##
## layout
library(DescTools)
## Warning: package 'DescTools' was built under R version 4.2.3
library(lmtest)
## Warning: package 'lmtest' was built under R version 4.2.3
## Loading required package: zoo
## Warning: package 'zoo' was built under R version 4.2.3
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
promedio=mean(base$Ingreso_Mensual)
desviación=sd(base$Ingreso_Mensual)
data.frame(promedio,desviación)
## promedio desviación
## 1 6502931 4707957
g1=ggplot(data = base,mapping = aes(x=Ingreso_Mensual))+geom_histogram(fill="blue4")+theme_bw()
ggplotly(g1)
## `stat_bin()` using `bins = 30`. Pick better value with `binwidth`.
Se observa que las ingreso del personal es de aproximadamente 6.5 millones de pesos con una desviación estándar de 4.7 millones, indicado que los ingresos en general varían de manera significativa, esto se puede explicar en gran proporción por el tipo de cargo del empleado y por ello el siguiente paso es un análisis exploratorio bivariado:
g2=ggplot(data = base,mapping = aes(x=Años_Experiencia,y=Ingreso_Mensual))+geom_point()+theme_bw()+
geom_smooth()
ggplotly(g2)
## `geom_smooth()` using method = 'gam' and formula = 'y ~ s(x, bs = "cs")'
cor(base$Años_Experiencia, base$Ingreso_Mensual)
## [1] 0.7728932
Se observa por otro lado una relación positiva (directa) entre los años de experiencia y los ingresos mensuales, esta relación tiene una fuerza alta ya que el coeficiente de correlación es de casi 0.8.
g3=ggplot(data = base,mapping = aes(x=Antigüedad,y=Ingreso_Mensual))+geom_point()+theme_bw()+
geom_smooth()
ggplotly(g3)
## `geom_smooth()` using method = 'gam' and formula = 'y ~ s(x, bs = "cs")'
cor(base$Antigüedad, base$Ingreso_Mensual)
## [1] 0.5142848
Se observa por otro lado una relación positiva (directa) entre los años de antigüedad en la empresa y los ingresos mensuales, esta relación tiene una fuerza media ya que el coeficiente de correlación es de aproximadamente 0.5.
Años de experiencia vs. Ingresos mensuales
A continuación vamos a estimar un modelo de regresión lineal simple entre los ingresos mensuales en función de los años de experiencia.
mod1=lm(Ingreso_Mensual~Años_Experiencia,data=base)
mod1
##
## Call:
## lm(formula = Ingreso_Mensual ~ Años_Experiencia, data = base)
##
## Coefficients:
## (Intercept) Años_Experiencia
## 1227935 467658
El modelo estimado es igual a ingresos=1,227,935+(467,658∗Años_Experiencia), en donde β0=1,227,935 y β1=467,658. Podemos interpretar que los ingresos mensuales promedio esperados cuando no se tienen años de experiencia son 1,227,935 pesos y por cada año de experiencia adicional se espera un retorno en ingresos de 467,658 pesos.
summary(mod1)
##
## Call:
## lm(formula = Ingreso_Mensual ~ Años_Experiencia, data = base)
##
## Residuals:
## Min 1Q Median 3Q Max
## -11271297 -1750781 -87495 1398604 11539481
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1227935 137299 8.944 <2e-16 ***
## Años_Experiencia 467658 10021 46.669 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 2988000 on 1468 degrees of freedom
## Multiple R-squared: 0.5974, Adjusted R-squared: 0.5971
## F-statistic: 2178 on 1 and 1468 DF, p-value: < 2.2e-16
Se observa en la tabla del summary del modelo que años de experiencia es significativo en el modelo por que el valor p lo indica con un nivel de confianza del 99.9% (***), adicionalmente este modelo logra explicar el 59.74% de la variabilidad de los ingresos (en general de las ingresos).
predict(mod1,list(Años_Experiencia=2),interval = "confidence",level = 0.95)
## fit lwr upr
## 1 2163252 1925244 2401260
El promedio esperado de ingresos mensuales para un empleado con 2 años de experiencia seria de 2,163,252 pesos. El intervalo de confianza para la predicción de los ingresos nos indica que el promedio de ingresos estaría entre 1,925,244 y 2,401,260 pesos con un 95% de confianza.
Antigüedad vs. Ingresos mensuales
A continuación vamos a estimar un modelo de regresión lineal simple entre los ingresos mensuales en función de los años de antigüedad en la empresa.
mod2=lm(Ingreso_Mensual~Antigüedad,data=base)
mod2
##
## Call:
## lm(formula = Ingreso_Mensual ~ Antigüedad, data = base)
##
## Coefficients:
## (Intercept) Antigüedad
## 3733273 395205
El modelo estimado es igual a ingresos=3,733,273+(395,205∗Antigüedad), en donde β0=3,733,273 y β1=395,205. Podemos interpretar que los ingresos mensuales promedio esperados cuando no se tienen años de antigüedad son 3,733,273 pesos y por cada año de antigüedad adicional se espera un retorno en ingresos de 395,205 pesos.
summary(mod2)
##
## Call:
## lm(formula = Ingreso_Mensual ~ Antigüedad, data = base)
##
## Residuals:
## Min 1Q Median 3Q Max
## -9504365 -2498983 -1188091 1392960 15484522
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 3733273 160091 23.32 <2e-16 ***
## Antigüedad 395205 17201 22.98 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 4039000 on 1468 degrees of freedom
## Multiple R-squared: 0.2645, Adjusted R-squared: 0.264
## F-statistic: 527.9 on 1 and 1468 DF, p-value: < 2.2e-16
Se observa en la tabla del summary del modelo que años de antigüedad es significativo en el modelo por que el valor p lo indica con un nivel de confianza del 99.9% (***), adicionalmente este modelo logra explicar el 26.45% de la variabilidad de los ingresos (en general de las ingresos).
predict(mod2,list(Antigüedad=5),interval = "confidence",level = 0.95)
## fit lwr upr
## 1 5709296 5491827 5926765
El promedio esperado de ingresos mensuales para un empleado con 5 años de antigüedad seria de 5,709,296 pesos. El intervalo de confianza para la predicción de los ingresos nos indica que el promedio de ingresos estaría entre 5,491,827 y 5,926,765 pesos con un 95% de confianza.
Cargo vs. Ingresos mensuales
A continuación vamos a estimar un modelo de regresión lineal simple entre los ingresos mensuales en función del cargo del empleado en la empresa.
mod3=lm(Ingreso_Mensual~Cargo,data=base)
mod3
##
## Call:
## lm(formula = Ingreso_Mensual ~ Cargo, data = base)
##
## Coefficients:
## (Intercept) CargoDirector_Manofactura
## 16033550 -8738412
## CargoEjecutivo_Ventas CargoGerente
## -9109271 1148126
## CargoInvestigador_Cientifico CargoRecursos_Humanos
## -12793577 -11797800
## CargoRepresentante_Salud CargoRepresentante_Ventas
## -8504787 -13407550
## CargoTecnico_Laboratorio
## -12796380
El modelo estimado es igual a ingresos=16,033,550+(-9,109,271Ejecutivo_Ventas)+(-12,793,577Investigador_Científico)+(-8,504,787Representante_Salud)+(-12,796,380Tecnico_Laboratorio)+(-8,738,412Director_Manofactura)+(1,148,126Gerente)+(-11,797,800Recursos_Humanos)+(-13,407,550Representante_Ventas), en donde β0=16,033,550, β1=-9,109,271, β2=-12,793,577, β3=-8,504,787, β4=-12,796,380, β5=-8,738,412, β6=1,148,126, β7=-11,797,800, β8=-13,407,550.
Intercepto (Intercept):
16,033,550 es el valor promedio del Ingreso_Mensual para un director de
investigación.
CargoDirector_Manofactura:
En promedio, los ingresos mensuales de un Director de Manufactura son
8,738,412 unidades menos que un director de investigación.
CargoEjecutivo_Ventas:
En promedio, los ingresos mensuales de un Ejecutivo de Ventas son
9,109,271 unidades menos que un director de investigación.
CargoGerente:
En promedio, los ingresos mensuales de un Gerente son 1,148,126 unidades
más que un director de investigación.
CargoInvestigador_Cientifico:
En promedio, los ingresos mensuales de un Investigador Científico son
12,793,577 unidades menos que un director de investigación.
CargoRecursos_Humanos:
En promedio, los ingresos mensuales de un Recursos Humanos son
11,797,800 unidades menos que un director de investigación.
CargoRepresentante_Salud:
En promedio, los ingresos mensuales de un Representante de Salud son
8,504,787 unidades menos que un director de investigación.
CargoRepresentante_Ventas:
En promedio, los ingresos mensuales de un Representante de Ventas son
13,407,550 unidades menos que un director de investigación.
CargoTecnico_Laboratorio:
En promedio, los ingresos mensuales de un Técnico de Laboratorio son
12,796,380 unidades menos que un director de investigación.
summary(mod3)
##
## Call:
## lm(formula = Ingreso_Mensual ~ Cargo, data = base)
##
## Residuals:
## Min 1Q Median 3Q Max
## -5937676 -1209252 -350986 1165379 6947721
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 16033550 226367 70.830 < 2e-16 ***
## CargoDirector_Manofactura -8738412 281982 -30.989 < 2e-16 ***
## CargoEjecutivo_Ventas -9109271 252620 -36.059 < 2e-16 ***
## CargoGerente 1148127 302378 3.797 0.000152 ***
## CargoInvestigador_Cientifico -12793577 255502 -50.072 < 2e-16 ***
## CargoRecursos_Humanos -11797800 360661 -32.712 < 2e-16 ***
## CargoRepresentante_Salud -8504787 287289 -29.604 < 2e-16 ***
## CargoRepresentante_Ventas -13407550 317226 -42.265 < 2e-16 ***
## CargoTecnico_Laboratorio -12796380 258979 -49.411 < 2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 2025000 on 1461 degrees of freedom
## Multiple R-squared: 0.8161, Adjusted R-squared: 0.8151
## F-statistic: 810.2 on 8 and 1461 DF, p-value: < 2.2e-16
Se observa en la tabla del summary del modelo que todos los cargos son significativos en el modelo por que el valor p lo indica con un nivel de confianza del 99.9% (***), adicionalmente este modelo logra explicar el 81.61% de la variabilidad de los ingresos (en general de las ingresos).
predict(mod3,list(Cargo="Ejecutivo_Ventas"),interval = "confidence",level = 0.95)
## fit lwr upr
## 1 6924279 6704312 7144246
El promedio esperado de ingresos mensuales para un ejecutivo de ventas seria de 6,924,279 pesos. El intervalo de confianza para la predicción de los ingresos nos indica que el promedio de ingresos estaría entre 6,704,312 y 7,144,246 pesos con un 95% de confianza.
El tercer modelo se considera el mejor entre los evaluados debido a su capacidad para explicar una mayor proporción de la variabilidad en los ingresos del personal, medida a través del coeficiente de determinación, R2.
R2 mod 1: 59.74%
R2 mod 2: 25.45%
R2 mod 3: 81.61%
A continuación vamos a realizar una validación cruzada para evaluar el poder predictivo del modelo 3. Usaremos un escenario 70-30 (modelar-validar) como se observa:
##Paso 1 - Segmentar los Datos
id_modelar=sample(1:nrow(base), size = floor(0.7*nrow(base)))
salario_modelar=base[id_modelar,]
salario_validar=base[-id_modelar,]
##Paso 2 - Estimar el Modelo Set de Modelar
mod3_modelar=lm(Ingreso_Mensual~Cargo,data=salario_modelar)
##Paso 3 - Predeccir Set de Validación
ingresos_pred=predict(mod3_modelar,list(Cargo=salario_validar$Cargo))
##Paso 4 - Comparar Ventas del Modelo y Reales
ingresos_real=salario_validar$Ingreso_Mensual
error=ingresos_real-ingresos_pred
res=data.frame(ingresos_real,ingresos_pred,error)
##Paso 5 - Calcular Indicador de Evaluación de la Predicción
MAE=mean(abs(error)) #Mean Absolut Error (Error Medio Absoluto)
MAE
## [1] 1538222
La validación cruzada en un primer paso, se segmenta los datos dejando 70% para el modelo y 30% aleatorios para validar. Luego se ajusta el modelo con el 70%. Posteriormente se predice los ingreso del 30% y finalmente se comparan los resultados del modelo contra los reales por medio de la métrica MAE que en este caso nos da alrededor de 1.5 y 1.6 millones de pesos como error de predicción (pronóstico de ingresos).
y=base$Ingreso_Mensual
x1=base$Edad
x2=base$Educación
x3=base$Años_Experiencia
x4=base$Antigüedad
x5=base$Horas_Extra
x6=base$Departamento
x7=base$Distancia_Casa
x8=base$Campo_Educación
x9=base$Satisfacción_Ambiental
x10=base$Genero
x11=base$Cargo
x12=base$Satisfación_Laboral
x13=base$Estado_Civil
x14=base$Trabajos_Anteriores
x15=base$Porcentaje_aumento_salarial
x16=base$Rendimiento_Laboral
x17=base$Capacitaciones
x18=base$Equilibrio_Trabajo_Vida
x19=base$Antigüedad_Cargo
x20=base$Años_ultima_promoción
x21=base$Años_acargo_con_mismo_jefe
x22=base$Rotación
x23=base$`Viaje de Negocios`
mod4=lm(y~x1+x2+x3+x4+x5+x6+x7+x8+x9+x10+x11+x12+x13+x14+x15+x16+x17+x18+x19+x20+x21+x22+x23)
summary(mod4)
##
## Call:
## lm(formula = y ~ x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 +
## x10 + x11 + x12 + x13 + x14 + x15 + x16 + x17 + x18 + x19 +
## x20 + x21 + x22 + x23)
##
## Residuals:
## Min 1Q Median 3Q Max
## -5353647 -1090746 -98767 944440 5725251
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 1.286e+07 6.062e+05 21.224 < 2e-16 ***
## x1 -7.519e+03 6.802e+03 -1.105 0.26918
## x2 -4.860e+04 4.365e+04 -1.113 0.26579
## x3 1.960e+05 1.101e+04 17.797 < 2e-16 ***
## x4 4.073e+04 1.523e+04 2.673 0.00759 **
## x5Si 6.345e+04 1.010e+05 0.628 0.52988
## x6RH -6.171e+04 5.996e+05 -0.103 0.91804
## x6Ventas -6.600e+05 3.616e+05 -1.825 0.06822 .
## x7 5.371e+02 5.375e+03 0.100 0.92042
## x8Humanidades 1.633e+05 4.287e+05 0.381 0.70323
## x8Mercadeo 1.262e+05 1.710e+05 0.738 0.46041
## x8Otra 3.969e+04 1.961e+05 0.202 0.83963
## x8Salud -1.372e+05 1.030e+05 -1.332 0.18312
## x8Tecnicos 1.149e+05 1.605e+05 0.716 0.47439
## x9 1.274e+04 4.026e+04 0.317 0.75163
## x10M 1.603e+05 8.912e+04 1.799 0.07222 .
## x11Director_Manofactura -7.002e+06 2.405e+05 -29.117 < 2e-16 ***
## x11Ejecutivo_Ventas -6.500e+06 4.232e+05 -15.358 < 2e-16 ***
## x11Gerente 5.991e+05 2.960e+05 2.024 0.04314 *
## x11Investigador_Cientifico -1.013e+07 2.337e+05 -43.332 < 2e-16 ***
## x11Recursos_Humanos -9.248e+06 6.417e+05 -14.412 < 2e-16 ***
## x11Representante_Salud -7.115e+06 2.424e+05 -29.353 < 2e-16 ***
## x11Representante_Ventas -9.620e+06 4.661e+05 -20.638 < 2e-16 ***
## x11Tecnico_Laboratorio -1.010e+07 2.370e+05 -42.610 < 2e-16 ***
## x12 8.171e+03 3.966e+04 0.206 0.83680
## x13Divorciado -5.549e+04 1.122e+05 -0.495 0.62096
## x13Soltero 8.207e+03 1.022e+05 0.080 0.93602
## x14 -8.792e+02 1.960e+04 -0.045 0.96422
## x15 2.295e+04 1.881e+04 1.220 0.22259
## x16 -3.511e+05 1.903e+05 -1.846 0.06515 .
## x17 -2.311e+04 3.403e+04 -0.679 0.49706
## x18 3.542e+04 6.185e+04 0.573 0.56693
## x19 -1.094e+04 1.984e+04 -0.551 0.58156
## x20 4.119e+04 1.751e+04 2.352 0.01882 *
## x21 -6.400e+04 2.029e+04 -3.155 0.00164 **
## x22Si 3.843e+04 1.341e+05 0.287 0.77447
## x23No_Viaja -2.486e+05 1.702e+05 -1.461 0.14421
## x23Raramente -4.964e+04 1.132e+05 -0.439 0.66098
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1650000 on 1432 degrees of freedom
## Multiple R-squared: 0.8802, Adjusted R-squared: 0.8771
## F-statistic: 284.4 on 37 and 1432 DF, p-value: < 2.2e-16
La elección de las variables predictoras de este modelo se baso en seleccionar todas las variables disponibles.
Se puede resaltar del modelo que las variables más significativas de
este son:
El intercepto: que en este caso no tiene interpretación
válida puesto que entre las variables predictoras se encuentra edad y
edad 0 no es válido para este caso.
Años de experiencia: Este indica que por cada año de
experiencia se espera que los ingresos mensuales aumenten 196,000.
Antigüedad: Este indica que por cada año de antigüedad
se espera que los ingresos mensuales aumenten 40,730.
Cargo: De acuerdo a este los ingresos varían.
Años última promoción: Este indica que por cada año
desde la última promoción se espera que los ingresos mensuales aumenten
41,190. Años a cargo del mismo jefe: Este indica que
por cada año a cargo del mismo jefe se espera que los ingresos mensuales
disminuyan 64,000.
El R2 ajustado indica que el modelo logra explicar el 87.71% de la variabilidad de los ingresos.
mod5=step(mod4)
## Start: AIC=42128.14
## y ~ x1 + x2 + x3 + x4 + x5 + x6 + x7 + x8 + x9 + x10 + x11 +
## x12 + x13 + x14 + x15 + x16 + x17 + x18 + x19 + x20 + x21 +
## x22 + x23
##
## Df Sum of Sq RSS AIC
## - x8 5 1.1589e+13 3.9122e+15 42123
## - x13 2 8.7147e+11 3.9015e+15 42124
## - x14 1 5.4824e+09 3.9006e+15 42126
## - x7 1 2.7197e+10 3.9007e+15 42126
## - x12 1 1.1562e+11 3.9007e+15 42126
## - x22 1 2.2371e+11 3.9009e+15 42126
## - x9 1 2.7295e+11 3.9009e+15 42126
## - x19 1 8.2768e+11 3.9015e+15 42126
## - x18 1 8.9344e+11 3.9015e+15 42126
## - x23 2 6.2466e+12 3.9069e+15 42126
## - x5 1 1.0755e+12 3.9017e+15 42127
## - x17 1 1.2569e+12 3.9019e+15 42127
## - x1 1 3.3282e+12 3.9040e+15 42127
## - x2 1 3.3758e+12 3.9040e+15 42127
## - x15 1 4.0556e+12 3.9047e+15 42128
## - x6 2 9.4188e+12 3.9101e+15 42128
## <none> 3.9006e+15 42128
## - x10 1 8.8165e+12 3.9095e+15 42129
## - x16 1 9.2789e+12 3.9099e+15 42130
## - x20 1 1.5066e+13 3.9157e+15 42132
## - x4 1 1.9468e+13 3.9201e+15 42133
## - x21 1 2.7107e+13 3.9277e+15 42136
## - x3 1 8.6278e+14 4.7634e+15 42420
## - x11 8 8.6665e+15 1.2567e+16 43832
##
## Step: AIC=42122.5
## y ~ x1 + x2 + x3 + x4 + x5 + x6 + x7 + x9 + x10 + x11 + x12 +
## x13 + x14 + x15 + x16 + x17 + x18 + x19 + x20 + x21 + x22 +
## x23
##
## Df Sum of Sq RSS AIC
## - x13 2 8.2487e+11 3.9130e+15 42119
## - x7 1 1.4431e+10 3.9122e+15 42121
## - x14 1 4.3008e+10 3.9123e+15 42121
## - x12 1 1.2295e+11 3.9123e+15 42121
## - x9 1 4.7904e+11 3.9127e+15 42121
## - x19 1 5.5839e+11 3.9128e+15 42121
## - x22 1 5.7136e+11 3.9128e+15 42121
## - x18 1 8.7675e+11 3.9131e+15 42121
## - x5 1 8.8130e+11 3.9131e+15 42121
## - x23 2 6.4090e+12 3.9186e+15 42121
## - x17 1 1.7780e+12 3.9140e+15 42121
## - x2 1 2.5372e+12 3.9148e+15 42121
## - x6 2 7.9203e+12 3.9201e+15 42121
## - x1 1 2.9235e+12 3.9151e+15 42122
## - x15 1 3.5359e+12 3.9158e+15 42122
## <none> 3.9122e+15 42123
## - x16 1 8.9259e+12 3.9211e+15 42124
## - x10 1 9.0074e+12 3.9212e+15 42124
## - x20 1 1.4148e+13 3.9264e+15 42126
## - x4 1 1.8283e+13 3.9305e+15 42127
## - x21 1 2.6034e+13 3.9383e+15 42130
## - x3 1 8.6058e+14 4.7728e+15 42413
## - x11 8 8.6833e+15 1.2596e+16 43825
##
## Step: AIC=42118.81
## y ~ x1 + x2 + x3 + x4 + x5 + x6 + x7 + x9 + x10 + x11 + x12 +
## x14 + x15 + x16 + x17 + x18 + x19 + x20 + x21 + x22 + x23
##
## Df Sum of Sq RSS AIC
## - x7 1 1.3374e+10 3.9131e+15 42117
## - x14 1 6.1655e+10 3.9131e+15 42117
## - x12 1 1.4205e+11 3.9132e+15 42117
## - x9 1 4.7845e+11 3.9135e+15 42117
## - x19 1 5.6063e+11 3.9136e+15 42117
## - x22 1 7.2877e+11 3.9138e+15 42117
## - x5 1 7.9702e+11 3.9138e+15 42117
## - x18 1 9.0589e+11 3.9140e+15 42117
## - x23 2 6.6206e+12 3.9197e+15 42117
## - x17 1 1.8112e+12 3.9149e+15 42117
## - x2 1 2.5070e+12 3.9156e+15 42118
## - x6 2 7.8506e+12 3.9209e+15 42118
## - x1 1 2.9465e+12 3.9160e+15 42118
## - x15 1 3.6320e+12 3.9167e+15 42118
## <none> 3.9130e+15 42119
## - x10 1 8.7534e+12 3.9218e+15 42120
## - x16 1 9.0138e+12 3.9221e+15 42120
## - x20 1 1.4318e+13 3.9274e+15 42122
## - x4 1 1.8077e+13 3.9311e+15 42124
## - x21 1 2.5910e+13 3.9390e+15 42127
## - x3 1 8.6228e+14 4.7753e+15 42410
## - x11 8 8.6935e+15 1.2607e+16 43823
##
## Step: AIC=42116.82
## y ~ x1 + x2 + x3 + x4 + x5 + x6 + x9 + x10 + x11 + x12 + x14 +
## x15 + x16 + x17 + x18 + x19 + x20 + x21 + x22 + x23
##
## Df Sum of Sq RSS AIC
## - x14 1 6.4336e+10 3.9131e+15 42115
## - x12 1 1.4211e+11 3.9132e+15 42115
## - x9 1 4.7733e+11 3.9135e+15 42115
## - x19 1 5.5773e+11 3.9136e+15 42115
## - x22 1 7.4960e+11 3.9138e+15 42115
## - x5 1 7.9718e+11 3.9139e+15 42115
## - x18 1 9.0200e+11 3.9140e+15 42115
## - x23 2 6.6093e+12 3.9197e+15 42115
## - x17 1 1.8225e+12 3.9149e+15 42116
## - x2 1 2.5009e+12 3.9156e+15 42116
## - x6 2 7.8491e+12 3.9209e+15 42116
## - x1 1 2.9468e+12 3.9160e+15 42116
## - x15 1 3.6506e+12 3.9167e+15 42116
## <none> 3.9131e+15 42117
## - x10 1 8.7484e+12 3.9218e+15 42118
## - x16 1 9.0215e+12 3.9221e+15 42118
## - x20 1 1.4318e+13 3.9274e+15 42120
## - x4 1 1.8066e+13 3.9311e+15 42122
## - x21 1 2.5908e+13 3.9390e+15 42125
## - x3 1 8.6320e+14 4.7763e+15 42408
## - x11 8 8.7037e+15 1.2617e+16 43822
##
## Step: AIC=42114.84
## y ~ x1 + x2 + x3 + x4 + x5 + x6 + x9 + x10 + x11 + x12 + x15 +
## x16 + x17 + x18 + x19 + x20 + x21 + x22 + x23
##
## Df Sum of Sq RSS AIC
## - x12 1 1.4948e+11 3.9133e+15 42113
## - x9 1 4.6621e+11 3.9136e+15 42113
## - x19 1 5.6201e+11 3.9137e+15 42113
## - x22 1 7.1163e+11 3.9138e+15 42113
## - x5 1 8.3299e+11 3.9140e+15 42113
## - x18 1 8.9924e+11 3.9140e+15 42113
## - x23 2 6.6648e+12 3.9198e+15 42113
## - x17 1 1.7945e+12 3.9149e+15 42114
## - x6 2 7.8882e+12 3.9210e+15 42114
## - x2 1 2.5606e+12 3.9157e+15 42114
## - x1 1 3.1057e+12 3.9162e+15 42114
## - x15 1 3.6537e+12 3.9168e+15 42114
## <none> 3.9131e+15 42115
## - x10 1 8.8309e+12 3.9220e+15 42116
## - x16 1 9.0120e+12 3.9221e+15 42116
## - x20 1 1.4272e+13 3.9274e+15 42118
## - x4 1 1.9439e+13 3.9326e+15 42120
## - x21 1 2.5862e+13 3.9390e+15 42123
## - x3 1 9.0906e+14 4.8222e+15 42420
## - x11 8 8.7114e+15 1.2625e+16 43821
##
## Step: AIC=42112.9
## y ~ x1 + x2 + x3 + x4 + x5 + x6 + x9 + x10 + x11 + x15 + x16 +
## x17 + x18 + x19 + x20 + x21 + x22 + x23
##
## Df Sum of Sq RSS AIC
## - x9 1 4.5387e+11 3.9137e+15 42111
## - x19 1 5.5653e+11 3.9138e+15 42111
## - x22 1 6.4254e+11 3.9139e+15 42111
## - x5 1 8.7422e+11 3.9141e+15 42111
## - x18 1 8.8046e+11 3.9142e+15 42111
## - x23 2 6.6723e+12 3.9199e+15 42111
## - x17 1 1.8061e+12 3.9151e+15 42112
## - x6 2 7.8673e+12 3.9211e+15 42112
## - x2 1 2.5712e+12 3.9158e+15 42112
## - x1 1 3.0994e+12 3.9164e+15 42112
## - x15 1 3.6895e+12 3.9170e+15 42112
## <none> 3.9133e+15 42113
## - x10 1 8.9301e+12 3.9222e+15 42114
## - x16 1 9.0507e+12 3.9223e+15 42114
## - x20 1 1.4248e+13 3.9275e+15 42116
## - x4 1 1.9569e+13 3.9328e+15 42118
## - x21 1 2.6109e+13 3.9394e+15 42121
## - x3 1 9.0915e+14 4.8224e+15 42418
## - x11 8 8.7114e+15 1.2625e+16 43819
##
## Step: AIC=42111.07
## y ~ x1 + x2 + x3 + x4 + x5 + x6 + x10 + x11 + x15 + x16 + x17 +
## x18 + x19 + x20 + x21 + x22 + x23
##
## Df Sum of Sq RSS AIC
## - x22 1 5.2309e+11 3.9143e+15 42109
## - x19 1 5.3515e+11 3.9143e+15 42109
## - x18 1 9.1089e+11 3.9146e+15 42109
## - x5 1 1.0143e+12 3.9147e+15 42109
## - x23 2 6.6826e+12 3.9204e+15 42110
## - x17 1 1.8484e+12 3.9156e+15 42110
## - x2 1 2.6256e+12 3.9164e+15 42110
## - x6 2 7.9657e+12 3.9217e+15 42110
## - x1 1 3.0773e+12 3.9168e+15 42110
## - x15 1 3.6500e+12 3.9174e+15 42110
## <none> 3.9137e+15 42111
## - x10 1 8.9728e+12 3.9227e+15 42112
## - x16 1 9.0944e+12 3.9228e+15 42112
## - x20 1 1.4394e+13 3.9281e+15 42114
## - x4 1 1.9518e+13 3.9332e+15 42116
## - x21 1 2.6261e+13 3.9400e+15 42119
## - x3 1 9.0880e+14 4.8225e+15 42416
## - x11 8 8.7135e+15 1.2627e+16 43817
##
## Step: AIC=42109.26
## y ~ x1 + x2 + x3 + x4 + x5 + x6 + x10 + x11 + x15 + x16 + x17 +
## x18 + x19 + x20 + x21 + x23
##
## Df Sum of Sq RSS AIC
## - x19 1 6.1903e+11 3.9149e+15 42107
## - x18 1 8.2489e+11 3.9151e+15 42108
## - x5 1 1.5071e+12 3.9158e+15 42108
## - x23 2 7.0960e+12 3.9213e+15 42108
## - x17 1 1.9693e+12 3.9162e+15 42108
## - x2 1 2.5764e+12 3.9168e+15 42108
## - x6 2 7.9127e+12 3.9222e+15 42108
## - x1 1 3.3020e+12 3.9176e+15 42109
## - x15 1 3.5979e+12 3.9178e+15 42109
## <none> 3.9143e+15 42109
## - x16 1 9.0064e+12 3.9233e+15 42111
## - x10 1 9.1172e+12 3.9234e+15 42111
## - x20 1 1.4989e+13 3.9292e+15 42113
## - x4 1 1.9686e+13 3.9339e+15 42115
## - x21 1 2.6804e+13 3.9411e+15 42117
## - x3 1 9.0870e+14 4.8230e+15 42414
## - x11 8 8.7627e+15 1.2677e+16 43821
##
## Step: AIC=42107.5
## y ~ x1 + x2 + x3 + x4 + x5 + x6 + x10 + x11 + x15 + x16 + x17 +
## x18 + x20 + x21 + x23
##
## Df Sum of Sq RSS AIC
## - x18 1 7.3319e+11 3.9156e+15 42106
## - x5 1 1.5420e+12 3.9164e+15 42106
## - x23 2 7.1262e+12 3.9220e+15 42106
## - x17 1 1.9395e+12 3.9168e+15 42106
## - x2 1 2.5811e+12 3.9175e+15 42106
## - x6 2 7.9764e+12 3.9228e+15 42106
## - x1 1 3.2570e+12 3.9181e+15 42107
## - x15 1 3.5929e+12 3.9185e+15 42107
## <none> 3.9149e+15 42107
## - x16 1 9.1444e+12 3.9240e+15 42109
## - x10 1 9.2380e+12 3.9241e+15 42109
## - x20 1 1.4430e+13 3.9293e+15 42111
## - x4 1 2.0009e+13 3.9349e+15 42113
## - x21 1 3.1608e+13 3.9465e+15 42117
## - x3 1 9.0854e+14 4.8234e+15 42412
## - x11 8 8.7673e+15 1.2682e+16 43819
##
## Step: AIC=42105.77
## y ~ x1 + x2 + x3 + x4 + x5 + x6 + x10 + x11 + x15 + x16 + x17 +
## x20 + x21 + x23
##
## Df Sum of Sq RSS AIC
## - x5 1 1.4944e+12 3.9171e+15 42104
## - x23 2 7.1103e+12 3.9227e+15 42104
## - x17 1 1.8819e+12 3.9175e+15 42104
## - x2 1 2.5378e+12 3.9181e+15 42105
## - x6 2 8.0009e+12 3.9236e+15 42105
## - x1 1 3.3414e+12 3.9189e+15 42105
## - x15 1 3.5667e+12 3.9192e+15 42105
## <none> 3.9156e+15 42106
## - x16 1 9.0887e+12 3.9247e+15 42107
## - x10 1 9.2333e+12 3.9248e+15 42107
## - x20 1 1.4457e+13 3.9301e+15 42109
## - x4 1 2.0102e+13 3.9357e+15 42111
## - x21 1 3.1736e+13 3.9473e+15 42116
## - x3 1 9.0844e+14 4.8240e+15 42410
## - x11 8 8.7854e+15 1.2701e+16 43820
##
## Step: AIC=42104.33
## y ~ x1 + x2 + x3 + x4 + x6 + x10 + x11 + x15 + x16 + x17 + x20 +
## x21 + x23
##
## Df Sum of Sq RSS AIC
## - x23 2 7.3822e+12 3.9245e+15 42103
## - x17 1 2.1652e+12 3.9193e+15 42103
## - x2 1 2.6621e+12 3.9198e+15 42103
## - x6 2 8.0179e+12 3.9251e+15 42103
## - x1 1 3.2283e+12 3.9203e+15 42104
## - x15 1 3.5019e+12 3.9206e+15 42104
## <none> 3.9171e+15 42104
## - x10 1 8.9398e+12 3.9260e+15 42106
## - x16 1 8.9887e+12 3.9261e+15 42106
## - x20 1 1.4416e+13 3.9315e+15 42108
## - x4 1 2.0352e+13 3.9374e+15 42110
## - x21 1 3.2498e+13 3.9496e+15 42114
## - x3 1 9.0914e+14 4.8262e+15 42409
## - x11 8 8.7845e+15 1.2702e+16 43818
##
## Step: AIC=42103.1
## y ~ x1 + x2 + x3 + x4 + x6 + x10 + x11 + x15 + x16 + x17 + x20 +
## x21
##
## Df Sum of Sq RSS AIC
## - x17 1 1.9979e+12 3.9265e+15 42102
## - x6 2 7.8655e+12 3.9323e+15 42102
## - x2 1 2.6998e+12 3.9272e+15 42102
## - x15 1 3.0745e+12 3.9276e+15 42102
## - x1 1 3.4316e+12 3.9279e+15 42102
## <none> 3.9245e+15 42103
## - x10 1 8.1847e+12 3.9327e+15 42104
## - x16 1 8.5715e+12 3.9331e+15 42104
## - x20 1 1.4167e+13 3.9386e+15 42106
## - x4 1 2.0336e+13 3.9448e+15 42109
## - x21 1 3.2955e+13 3.9574e+15 42113
## - x3 1 9.2180e+14 4.8463e+15 42411
## - x11 8 8.7947e+15 1.2719e+16 43816
##
## Step: AIC=42101.85
## y ~ x1 + x2 + x3 + x4 + x6 + x10 + x11 + x15 + x16 + x20 + x21
##
## Df Sum of Sq RSS AIC
## - x6 2 7.6521e+12 3.9341e+15 42101
## - x2 1 2.6283e+12 3.9291e+15 42101
## - x15 1 3.0084e+12 3.9295e+15 42101
## - x1 1 3.5297e+12 3.9300e+15 42101
## <none> 3.9265e+15 42102
## - x16 1 8.4127e+12 3.9349e+15 42103
## - x10 1 8.5427e+12 3.9350e+15 42103
## - x20 1 1.4266e+13 3.9407e+15 42105
## - x4 1 1.9911e+13 3.9464e+15 42107
## - x21 1 3.2792e+13 3.9593e+15 42112
## - x3 1 9.2806e+14 4.8545e+15 42412
## - x11 8 8.7929e+15 1.2719e+16 43814
##
## Step: AIC=42100.71
## y ~ x1 + x2 + x3 + x4 + x10 + x11 + x15 + x16 + x20 + x21
##
## Df Sum of Sq RSS AIC
## - x15 1 2.7366e+12 3.9369e+15 42100
## - x2 1 2.7877e+12 3.9369e+15 42100
## - x1 1 3.4623e+12 3.9376e+15 42100
## <none> 3.9341e+15 42101
## - x16 1 8.1800e+12 3.9423e+15 42102
## - x10 1 8.9272e+12 3.9431e+15 42102
## - x20 1 1.5934e+13 3.9501e+15 42105
## - x4 1 1.9157e+13 3.9533e+15 42106
## - x21 1 3.2878e+13 3.9670e+15 42111
## - x3 1 9.2687e+14 4.8610e+15 42410
## - x11 8 8.9605e+15 1.2895e+16 43830
##
## Step: AIC=42099.73
## y ~ x1 + x2 + x3 + x4 + x10 + x11 + x16 + x20 + x21
##
## Df Sum of Sq RSS AIC
## - x2 1 2.7131e+12 3.9396e+15 42099
## - x1 1 3.2490e+12 3.9401e+15 42099
## <none> 3.9369e+15 42100
## - x16 1 6.2392e+12 3.9431e+15 42100
## - x10 1 9.1836e+12 3.9461e+15 42101
## - x20 1 1.5596e+13 3.9525e+15 42104
## - x4 1 1.8967e+13 3.9558e+15 42105
## - x21 1 3.2811e+13 3.9697e+15 42110
## - x3 1 9.2482e+14 4.8617e+15 42408
## - x11 8 8.9632e+15 1.2900e+16 43828
##
## Step: AIC=42098.74
## y ~ x1 + x3 + x4 + x10 + x11 + x16 + x20 + x21
##
## Df Sum of Sq RSS AIC
## - x1 1 4.2241e+12 3.9438e+15 42098
## <none> 3.9396e+15 42099
## - x16 1 6.0466e+12 3.9456e+15 42099
## - x10 1 9.2910e+12 3.9489e+15 42100
## - x20 1 1.5511e+13 3.9551e+15 42103
## - x4 1 1.9336e+13 3.9589e+15 42104
## - x21 1 3.3383e+13 3.9730e+15 42109
## - x3 1 9.2354e+14 4.8631e+15 42406
## - x11 8 8.9659e+15 1.2906e+16 43827
##
## Step: AIC=42098.32
## y ~ x3 + x4 + x10 + x11 + x16 + x20 + x21
##
## Df Sum of Sq RSS AIC
## <none> 3.9438e+15 42098
## - x16 1 6.0114e+12 3.9498e+15 42099
## - x10 1 9.4152e+12 3.9532e+15 42100
## - x20 1 1.5156e+13 3.9590e+15 42102
## - x4 1 2.1835e+13 3.9656e+15 42104
## - x21 1 3.2322e+13 3.9761e+15 42108
## - x3 1 1.3201e+15 5.2639e+15 42521
## - x11 8 8.9994e+15 1.2943e+16 43829
summary(mod5)
##
## Call:
## lm(formula = y ~ x3 + x4 + x10 + x11 + x16 + x20 + x21)
##
## Residuals:
## Min 1Q Median 3Q Max
## -5125477 -1071742 -84422 952727 5684801
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 12320519 445753 27.640 < 2e-16 ***
## x3 187991 8518 22.068 < 2e-16 ***
## x4 38420 13536 2.838 0.00460 **
## x10M 164331 88172 1.864 0.06256 .
## x11Director_Manofactura -6993666 238451 -29.330 < 2e-16 ***
## x11Ejecutivo_Ventas -7102201 219506 -32.355 < 2e-16 ***
## x11Gerente 393744 249638 1.577 0.11495
## x11Investigador_Cientifico -10111593 231190 -43.737 < 2e-16 ***
## x11Recursos_Humanos -9222293 309229 -29.823 < 2e-16 ***
## x11Representante_Salud -7113635 240382 -29.593 < 2e-16 ***
## x11Representante_Ventas -10147302 286533 -35.414 < 2e-16 ***
## x11Tecnico_Laboratorio -10101511 233875 -43.192 < 2e-16 ***
## x16 -177885 119448 -1.489 0.13664
## x20 40377 17075 2.365 0.01818 *
## x21 -66502 19258 -3.453 0.00057 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1646000 on 1455 degrees of freedom
## Multiple R-squared: 0.8789, Adjusted R-squared: 0.8777
## F-statistic: 754.1 on 14 and 1455 DF, p-value: < 2.2e-16
En este modelo automático propuesto las variables predictoras
significativas son:
Años de experiencia:Cada año de experiencia se espera
que aumente el ingreso mensual en 187,991.
Antigüedad:Cada año de antigüedad se espera que aumente
el ingreso mensual en 38,420.
Cargo: Segun el cargo varía el ingreso mensual.
Años última promoción: Por cada año desde la última
promoción se espera que aumente el ingreso mensual en 40,377.
Años a cargo con mismo jefe:Por cada año con el mmismo
jefe se espera que baje el ingreso mensual en 66,502.
Adicional, esta:
Genero: Se espera que los hombres ganen 164,331 más que
las mujeres.
Rendimiento laboral: Se espera que si aumenta el
rendimiento laboral baje el ingreso en 177,885.
El R2 ajustado indica que el modelo logra explicar el 87.77% de la variabilidad de los ingresos.
mod6=lm(y~x3+x4+x11)
summary(mod6)
##
## Call:
## lm(formula = y ~ x3 + x4 + x11)
##
## Residuals:
## Min 1Q Median 3Q Max
## -5126134 -1082643 -88059 965060 5370994
##
## Coefficients:
## Estimate Std. Error t value Pr(>|t|)
## (Intercept) 11776875 243735 48.318 <2e-16 ***
## x3 188527 8567 22.007 <2e-16 ***
## x4 20315 9119 2.228 0.0260 *
## x11Director_Manofactura -7046677 239467 -29.427 <2e-16 ***
## x11Ejecutivo_Ventas -7097777 220689 -32.162 <2e-16 ***
## x11Gerente 483473 249189 1.940 0.0525 .
## x11Investigador_Cientifico -10095401 232353 -43.449 <2e-16 ***
## x11Recursos_Humanos -9190187 310965 -29.554 <2e-16 ***
## x11Representante_Salud -7070561 241396 -29.290 <2e-16 ***
## x11Representante_Ventas -10091414 287540 -35.096 <2e-16 ***
## x11Tecnico_Laboratorio -10085105 235091 -42.899 <2e-16 ***
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
##
## Residual standard error: 1657000 on 1459 degrees of freedom
## Multiple R-squared: 0.877, Adjusted R-squared: 0.8762
## F-statistic: 1040 on 10 and 1459 DF, p-value: < 2.2e-16
Para este modelo se eligieron las variables que solían ser más significativas en los modelos anteriores.
En este modelo automático propuesto las variables predictoras
significativas son:
Años de experiencia:Cada año de experiencia se espera
que aumente el ingreso mensual en 188,527.
Antigüedad:Cada año de antigüedad se espera que aumente
el ingreso mensual en 20,315.
Cargo: Según el cargo varía el ingreso mensual.
Intercepto: Indica que un director de investigación sin
experiencia ni antigüedad en la empresa tendría un ingreso mensual de
11,776,875.
El R2 ajustado indica que el modelo logra explicar el 87.62% de la variabilidad de los ingresos.
Se selecciona el modelo 6 como el mejor modelo puesto que, de acuerdo con el principio de parsimonia, este con un menor número de variables logra tener una explicación de la variabilidad de los ingresos similar a la de los otros modelos.
R2 mod 4: 88.02%
R2 mod 5: 87.89%
R2 mod 6: 87.70%
En el modelo realizado paso a paso el AIC es de 42,098 que es bastante reducido teniendo en cuenta la magnitud de los ingresos.
error= mod6$residuals
MAE=mean(abs(error))
MAE
## [1] 1297127
El error absoluto medio de este modelo es 1,297,127
1. ¿Cuál es el ingreso mensual de un gerente nuevo sin experiencia?
Caso1=predict(mod6,list(x3=0, x4=0,x11="Gerente"))
Caso1
## 1
## 12260348
Se espera que en promedio un gerente nuevo sin experiencia gane 12,260,348 pesos.
2. ¿Cuál es el ingreso mensual de un gerente nuevo con 10 años de experiencia?
Caso2=predict(mod6,list(x3=10, x4=0,x11="Gerente"))
Caso2
## 1
## 14145620
Se espera que en promedio un gerente nuevo con 10 años de experiencia gane 14,145,620 pesos.
3. ¿Cuál es el ingreso mensual de un gerente que haya estado en la empresa 5 años con 10 años de experiencia?
Caso3=predict(mod6,list(x3=10, x4=5,x11="Director_Manofactura"))
Caso3
## 1
## 6717044
Se espera que en promedio un director de manufactura con 10 años de experiencia y que lleve en la empresa 5 años gane 6,717,044 pesos.
Podemos observar respecto a los supuestos sobre el error ei lo siguiente:
Media cero: Se cumple por defecto.
Varianza Constante: Se observa en la grafica 1 de
residuales vs ajustados que el comportamiento es aleatorio no con alguna
tendencia en particular que indique problemas. Se valida
grafiamente.
Normalidad: Se observa en la grafica 2 que los datos se
ajustan bien a la linea de normalidad en el qqplot. Es decir se valida
graficamente.
Independencia: Dado que estos registros no corresponden
a datos en el tiempo no se tiene un orden temporal para realizar la
validación de este supuesto. Se valida por definición del tipo de datos
de corte transversal.
par(mfrow=c(2,2))
plot(mod6)
Se decide no realizar una transformación al modelo puesto que los datos se ajustan bien a la línea de normalidad como fue visto anteriormente.