library(foreign)
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
library(forcats)
library(ggplot2)
library(readr)
library(janitor)
##
## Attaching package: 'janitor'
## The following objects are masked from 'package:stats':
##
## chisq.test, fisher.test
library(Hmisc)
## Loading required package: lattice
## Loading required package: survival
## Loading required package: Formula
##
## Attaching package: 'Hmisc'
## The following objects are masked from 'package:dplyr':
##
## src, summarize
## The following objects are masked from 'package:base':
##
## format.pval, units
library(psych)
##
## Attaching package: 'psych'
## The following object is masked from 'package:Hmisc':
##
## describe
## The following objects are masked from 'package:ggplot2':
##
## %+%, alpha
library(naniar)
library(dlookr)
##
## Attaching package: 'dlookr'
## The following object is masked from 'package:psych':
##
## describe
## The following object is masked from 'package:Hmisc':
##
## describe
## The following object is masked from 'package:base':
##
## transform
library(corrplot)
## corrplot 0.92 loaded
library(jtools)
##
## Attaching package: 'jtools'
## The following object is masked from 'package:Hmisc':
##
## %nin%
library(lmtest)
## Loading required package: zoo
##
## Attaching package: 'zoo'
## The following objects are masked from 'package:base':
##
## as.Date, as.Date.numeric
library(car)
## Loading required package: carData
##
## Attaching package: 'car'
## The following object is masked from 'package:psych':
##
## logit
## The following object is masked from 'package:dplyr':
##
## recode
library(olsrr)
##
## Attaching package: 'olsrr'
## The following object is masked from 'package:datasets':
##
## rivers
library(kableExtra)
##
## Attaching package: 'kableExtra'
## The following object is masked from 'package:dplyr':
##
## group_rows
library(gmodels)
library(openxlsx)
#install.packages("gmodels")
#install.packages("openxlsx")
### Importar base de datos
df1 <-read.csv(file.choose())
summary(df1)
## NO.DE.EMPLEADO APELLIDOS NOMBRE FECHA.DE.NACIMIENTO
## Min. : 0.00 Length:113 Length:113 Length:113
## 1st Qu.: 8.00 Class :character Class :character Class :character
## Median : 38.00 Mode :character Mode :character Mode :character
## Mean : 46.31
## 3rd Qu.: 72.00
## Max. :148.00
## GENERO RFC FECHA.DE.ALTA PRIMER.MES
## Length:113 Length:113 Length:113 Length:113
## Class :character Class :character Class :character Class :character
## Mode :character Mode :character Mode :character Mode :character
##
##
##
## CUARTO.MES BAJA PUESTO DEPARTAMENTO
## Length:113 Min. :0.0000 Length:113 Length:113
## Class :character 1st Qu.:0.0000 Class :character Class :character
## Mode :character Median :0.0000 Mode :character Mode :character
## Mean :0.3451
## 3rd Qu.:0.0000
## Max. :3.0000
## NO.SEGURO.SOCIAL SALARIO.DIARIO.IMSS FACTOR.CRED.INFONAVIT
## Length:113 Min. :1.440e+02 Length:113
## Class :character 1st Qu.:1.770e+02 Class :character
## Mode :character Median :1.810e+02 Mode :character
## Mean :1.346e+07
## 3rd Qu.:1.810e+02
## Max. :1.517e+09
## N.CREDITO.INFONAVIT LUGAR.DE.NACIMIENTO CURP CALLE
## Min. :0.000e+00 Length:113 Length:113 Length:113
## 1st Qu.:0.000e+00 Class :character Class :character Class :character
## Median :0.000e+00 Mode :character Mode :character Mode :character
## Mean :6.770e+07
## 3rd Qu.:0.000e+00
## Max. :1.922e+09
## NUMERO.INTERNO COLONIA MUNICIPIO ESTADO
## Length:113 Length:113 Length:113 Length:113
## Class :character Class :character Class :character Class :character
## Mode :character Mode :character Mode :character Mode :character
##
##
##
## CODIGO.POSTAL ESTADO.CIVIL TARJETA_CUENTA
## Min. :25016 Length:113 Length:113
## 1st Qu.:66640 Class :character Class :character
## Median :66646 Mode :character Mode :character
## Mean :63365
## 3rd Qu.:66649
## Max. :67493
describe(df1)
## # A tibble: 5 × 26
## described_v…¹ n na mean sd se_mean IQR skewn…² kurto…³ p00
## <chr> <int> <int> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 NO.DE.EMPLEA… 113 0 4.63e+1 4.24e+1 3.99e+0 64 0.741 -0.465 0
## 2 BAJA 113 0 3.45e-1 9.61e-1 9.04e-2 0 2.45 4.05 0
## 3 SALARIO.DIAR… 113 0 1.35e+7 1.43e+8 1.34e+7 3.96 10.6 113. 144.
## 4 N.CREDITO.IN… 113 0 6.77e+7 3.55e+8 3.34e+7 0 5.10 24.4 0
## 5 CODIGO.POSTAL 113 0 6.34e+4 1.12e+4 1.05e+3 9 -3.14 8.01 25016
## # … with 16 more variables: p01 <dbl>, p05 <dbl>, p10 <dbl>, p20 <dbl>,
## # p25 <dbl>, p30 <dbl>, p40 <dbl>, p50 <dbl>, p60 <dbl>, p70 <dbl>,
## # p75 <dbl>, p80 <dbl>, p90 <dbl>, p95 <dbl>, p99 <dbl>, p100 <dbl>, and
## # abbreviated variable names ¹described_variables, ²skewness, ³kurtosis
## R. Usando la función "describe" se puede realizar una estadística descriptiva más ptofunda. Para este argumento, vemos que se tienen 113 registros y 26 variables.
## Tipos de variables
### NO DE EMPLEADO: Cuantitativa discreta.
### APELLIDOS: Cualitativa.
### NOMBRE: Cualitativa.
### FECHA DE NACIMIENTO: Cuantitativa discreta.
### GENERO: Cualitativa.
### RFC: Cualitativa.
### FECHA DE ALTA: Cuantitativa discreta.
### PRIMER MES: Cuantitativa discreta.
### CUARTO MES: Cuantitativa discreta.
### BAJA: Cuantitativa discreta.
### PUESTO: Cualitativa.
### DEPARTAMENTO: Cualitativa.
### NO SEGURO SOCIAL: Cuantitativa discreta..
### SALARIO DIARIO IMSS: Cuantitativa continua.
### FACTOR CRED INFONAVIT: Cuantitativa continua.
### N CREDITO INFONAVIT: Cuantitativa continua.
### LUGAR DE NACIMIENTO: Cualitativa.
### CURP: Cualitativa.
### CALLE: Cualitativa.
### NUMERO INTERNO: Cuantitativa discreta.
### COLONIA: Cuantitativa discreta.
### MUNICIPIO: Cualitativa.
### ESTADO: Cualitativa.
### CODIGO POSTAL: Cuantitativa discreta.
### ESTADO CIVIL: Cualitativa.
### TARJETA_CUENTA: Cualitativa.
Ordinal <- c("NO.DE.EMPLEADO","APELLIDOS","NOMBRE","GENERO","RFC","PUESTO")
Nominal <- c("FECHA.DE.NACIMIENTO","FECHA.DE.ALTA","FECHA.DE.BAJA","PRIMER.MES","CUARTO.MES","DEPARTAMENTO","NO.SEGURO.SOCIAL","LUGAR.DE.NACIMIENTO","CURP","CALLE","NUMERO.INTERNO","COLONIA","MUNICIPIO","CODIGO.POSTAL","ESTADO","ESTADO.CIVIL")
Intervalo <- c("SALARIO.DIARIO.IMSS","FACTOR.CRED.INFONAVIT","N.CREDITO.INFONAVIT")
Razon <- c("BAJA","TARJETA_CUENTA")
ls1<- list(Ordinal,Nominal,Intervalo,Razon)
ls1
## [[1]]
## [1] "NO.DE.EMPLEADO" "APELLIDOS" "NOMBRE" "GENERO"
## [5] "RFC" "PUESTO"
##
## [[2]]
## [1] "FECHA.DE.NACIMIENTO" "FECHA.DE.ALTA" "FECHA.DE.BAJA"
## [4] "PRIMER.MES" "CUARTO.MES" "DEPARTAMENTO"
## [7] "NO.SEGURO.SOCIAL" "LUGAR.DE.NACIMIENTO" "CURP"
## [10] "CALLE" "NUMERO.INTERNO" "COLONIA"
## [13] "MUNICIPIO" "CODIGO.POSTAL" "ESTADO"
## [16] "ESTADO.CIVIL"
##
## [[3]]
## [1] "SALARIO.DIARIO.IMSS" "FACTOR.CRED.INFONAVIT" "N.CREDITO.INFONAVIT"
##
## [[4]]
## [1] "BAJA" "TARJETA_CUENTA"
## R. Remover datos irrelevantes y convertir tipos de datos. Se utilizó cada una de estas técnicas, ya que la base de datos tenía información inexacta y repetida en algunas columnas. Con esta limpieza, se obtuvieron datos precisos y uniformes.
### Mostrar estadísticas descriptivas de la base de datos
summary(df1)
## NO.DE.EMPLEADO APELLIDOS NOMBRE FECHA.DE.NACIMIENTO
## Min. : 0.00 Length:113 Length:113 Length:113
## 1st Qu.: 8.00 Class :character Class :character Class :character
## Median : 38.00 Mode :character Mode :character Mode :character
## Mean : 46.31
## 3rd Qu.: 72.00
## Max. :148.00
## GENERO RFC FECHA.DE.ALTA PRIMER.MES
## Length:113 Length:113 Length:113 Length:113
## Class :character Class :character Class :character Class :character
## Mode :character Mode :character Mode :character Mode :character
##
##
##
## CUARTO.MES BAJA PUESTO DEPARTAMENTO
## Length:113 Min. :0.0000 Length:113 Length:113
## Class :character 1st Qu.:0.0000 Class :character Class :character
## Mode :character Median :0.0000 Mode :character Mode :character
## Mean :0.3451
## 3rd Qu.:0.0000
## Max. :3.0000
## NO.SEGURO.SOCIAL SALARIO.DIARIO.IMSS FACTOR.CRED.INFONAVIT
## Length:113 Min. :1.440e+02 Length:113
## Class :character 1st Qu.:1.770e+02 Class :character
## Mode :character Median :1.810e+02 Mode :character
## Mean :1.346e+07
## 3rd Qu.:1.810e+02
## Max. :1.517e+09
## N.CREDITO.INFONAVIT LUGAR.DE.NACIMIENTO CURP CALLE
## Min. :0.000e+00 Length:113 Length:113 Length:113
## 1st Qu.:0.000e+00 Class :character Class :character Class :character
## Median :0.000e+00 Mode :character Mode :character Mode :character
## Mean :6.770e+07
## 3rd Qu.:0.000e+00
## Max. :1.922e+09
## NUMERO.INTERNO COLONIA MUNICIPIO ESTADO
## Length:113 Length:113 Length:113 Length:113
## Class :character Class :character Class :character Class :character
## Mode :character Mode :character Mode :character Mode :character
##
##
##
## CODIGO.POSTAL ESTADO.CIVIL TARJETA_CUENTA
## Min. :25016 Length:113 Length:113
## 1st Qu.:66640 Class :character Class :character
## Median :66646 Mode :character Mode :character
## Mean :63365
## 3rd Qu.:66649
## Max. :67493
tibble(df1)
## # A tibble: 113 × 26
## NO.DE.EMP…¹ APELL…² NOMBRE FECHA…³ GENERO RFC FECHA…⁴ PRIME…⁵ CUART…⁶ BAJA
## <int> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <int>
## 1 1 MARTIN… NICOL… 10/09/… MASCU… MALN… 01/07/… 31/07/… 29/10/… 0
## 2 2 DE LEO… MARIA0 14/05/… FEMEN… LEMM… 01/07/… 31/07/… 29/10/… 0
## 3 3 HER0ND… JOSE … 21/11/… MASCU… HECL… 22/11/… 00/01/… 00/01/… 0
## 4 4 CAZARE… MARIA 01/05/… FEMEN… CAMM… 30/01/… 01/03/… 30/05/… 0
## 5 5 LOPEZ … YOLAN… 06/09/… FEMEN… LORY… 05/05/… 04/06/… 02/09/… 0
## 6 6 HER0ND… HERME… 22/06/… MASCU… HEMH… 03/07/… 02/08/… 31/10/… 0
## 7 7 PERALT… ARACE… 01/07/… FEMEN… PEMA… 06/08/… 05/09/… 04/12/… 0
## 8 8 TOVAR … PEDRO… 10/12/… MASCU… TOPP… 23/08/… 22/09/… 21/12/… 0
## 9 9 MORENO… HUMBE… 03/11/… MASCU… MOSH… 11/01/… 10/02/… 11/05/… 0
## 10 10 LU0 LO… YOLAN… 18/08/… FEMEN… LULY… 20/02/… 22/03/… 20/06/… 0
## # … with 103 more rows, 16 more variables: PUESTO <chr>, DEPARTAMENTO <chr>,
## # NO.SEGURO.SOCIAL <chr>, SALARIO.DIARIO.IMSS <dbl>,
## # FACTOR.CRED.INFONAVIT <chr>, N.CREDITO.INFONAVIT <int>,
## # LUGAR.DE.NACIMIENTO <chr>, CURP <chr>, CALLE <chr>, NUMERO.INTERNO <chr>,
## # COLONIA <chr>, MUNICIPIO <chr>, ESTADO <chr>, CODIGO.POSTAL <int>,
## # ESTADO.CIVIL <chr>, TARJETA_CUENTA <chr>, and abbreviated variable names
## # ¹NO.DE.EMPLEADO, ²APELLIDOS, ³FECHA.DE.NACIMIENTO, ⁴FECHA.DE.ALTA, …
str(df1)
## 'data.frame': 113 obs. of 26 variables:
## $ NO.DE.EMPLEADO : int 1 2 3 4 5 6 7 8 9 10 ...
## $ APELLIDOS : chr "MARTINEZ DE LOERA" "DE LEON MORENO" "HER0NDEZ CERVANTES" "CAZARES MORALES" ...
## $ NOMBRE : chr "NICOLAS" "MARIA0" "JOSE LUIS" "MARIA" ...
## $ FECHA.DE.NACIMIENTO : chr "10/09/1955" "14/05/1979" "21/11/1949" "01/05/1990" ...
## $ GENERO : chr "MASCULINO" "FEMENINO" "MASCULINO" "FEMENINO" ...
## $ RFC : chr "MALN550910338" "LEMM7905148GA" "HECL4911213X3" "CAMM9005019S8" ...
## $ FECHA.DE.ALTA : chr "01/07/2010" "01/07/2011" "22/11/2011" "30/01/2013" ...
## $ PRIMER.MES : chr "31/07/2010" "31/07/2011" "00/01/1900" "01/03/2013" ...
## $ CUARTO.MES : chr "29/10/2010" "29/10/2011" "00/01/1900" "30/05/2013" ...
## $ BAJA : int 0 0 0 0 0 0 0 0 0 0 ...
## $ PUESTO : chr "SUPERVISOR DE MAQUIN" "SUPERVISOR DE PEGADO" "EXTERNO" "SUPERVISORA" ...
## $ DEPARTAMENTO : chr "PRODUCCION CARTON MDL" "PRODUCCION CARTON MDL" "EXTERNO" "PRODUCCION CARTON MC" ...
## $ NO.SEGURO.SOCIAL : chr "43745527937" "43127902955" "2184909675" "43089001317" ...
## $ SALARIO.DIARIO.IMSS : num 177 177 177 337 4413757 ...
## $ FACTOR.CRED.INFONAVIT: chr "0" "0" "0" "0" ...
## $ N.CREDITO.INFONAVIT : int 0 0 0 0 0 0 0 0 0 0 ...
## $ LUGAR.DE.NACIMIENTO : chr "0" "0" "0" "0" ...
## $ CURP : chr "MALN550910HZSRRC09" "LEMM790514MCLNRR09" "HECL491121HJCRRS04" "CAMM900501MVZZRR00" ...
## $ CALLE : chr "JOSE I LUGO" "44682" "HACIENDA SAN CRISTOBAL" "RIO ACAPONETA" ...
## $ NUMERO.INTERNO : chr "0" "115" "0" "0" ...
## $ COLONIA : chr "UNIDAD LABORAL" "SANTA TERESITA" "VILLAS DE HUI0LA" "PUEBLO NUEVO" ...
## $ MUNICIPIO : chr "SAN NICOLAS DE LOS G" "APODACA" "APODACA" "APODACA" ...
## $ ESTADO : chr "NUEVO LEON" "NUEVO LEON" "NUEVO LEON" "NUEVO LEON" ...
## $ CODIGO.POSTAL : int 66440 66605 66634 66649 66620 25016 66633 66649 25290 66473 ...
## $ ESTADO.CIVIL : chr "SOLTERO" "SOLTERO" "SOLTERO" "CASADO" ...
## $ TARJETA_CUENTA : chr "BANORTE" "BANORTE" "BANORTE" "BANORTE" ...
head(df1)
## NO.DE.EMPLEADO APELLIDOS NOMBRE FECHA.DE.NACIMIENTO GENERO
## 1 1 MARTINEZ DE LOERA NICOLAS 10/09/1955 MASCULINO
## 2 2 DE LEON MORENO MARIA0 14/05/1979 FEMENINO
## 3 3 HER0NDEZ CERVANTES JOSE LUIS 21/11/1949 MASCULINO
## 4 4 CAZARES MORALES MARIA 01/05/1990 FEMENINO
## 5 5 LOPEZ RAMOS YOLANDA 06/09/1965 FEMENINO
## 6 6 HER0NDEZ MARTÍNEZ HERMENEGILDO 22/06/1984 MASCULINO
## RFC FECHA.DE.ALTA PRIMER.MES CUARTO.MES BAJA PUESTO
## 1 MALN550910338 01/07/2010 31/07/2010 29/10/2010 0 SUPERVISOR DE MAQUIN
## 2 LEMM7905148GA 01/07/2011 31/07/2011 29/10/2011 0 SUPERVISOR DE PEGADO
## 3 HECL4911213X3 22/11/2011 00/01/1900 00/01/1900 0 EXTERNO
## 4 CAMM9005019S8 30/01/2013 01/03/2013 30/05/2013 0 SUPERVISORA
## 5 LORY650906DBA 05/05/2014 04/06/2014 02/09/2014 0 SUPERVISORA
## 6 HEMH8406229JA 03/07/2014 02/08/2014 31/10/2014 0 CUSTOMER SERVICE INF
## DEPARTAMENTO NO.SEGURO.SOCIAL SALARIO.DIARIO.IMSS
## 1 PRODUCCION CARTON MDL 43745527937 176.72
## 2 PRODUCCION CARTON MDL 43127902955 176.72
## 3 EXTERNO 2184909675 176.72
## 4 PRODUCCION CARTON MC 43089001317 337.05
## 5 COSTURA 43836531525 4413757.00
## 6 CEDIS 43028485795 176.72
## FACTOR.CRED.INFONAVIT N.CREDITO.INFONAVIT LUGAR.DE.NACIMIENTO
## 1 0 0 0
## 2 0 0 0
## 3 0 0 0
## 4 0 0 0
## 5 0 0 0
## 6 0 0 0
## CURP CALLE NUMERO.INTERNO COLONIA
## 1 MALN550910HZSRRC09 JOSE I LUGO 0 UNIDAD LABORAL
## 2 LEMM790514MCLNRR09 44682 115 SANTA TERESITA
## 3 HECL491121HJCRRS04 HACIENDA SAN CRISTOBAL 0 VILLAS DE HUI0LA
## 4 CAMM900501MVZZRR00 RIO ACAPONETA 0 PUEBLO NUEVO
## 5 LORY650906MNLPML08 BETANZOS 0 RINCON DE GALICIA
## 6 HEMH840622HSPRRR00 EUCALIPTO 0 IG0CIO ZARAGOZA
## MUNICIPIO ESTADO CODIGO.POSTAL ESTADO.CIVIL TARJETA_CUENTA
## 1 SAN NICOLAS DE LOS G NUEVO LEON 66440 SOLTERO BANORTE
## 2 APODACA NUEVO LEON 66605 SOLTERO BANORTE
## 3 APODACA NUEVO LEON 66634 SOLTERO BANORTE
## 4 APODACA NUEVO LEON 66649 CASADO BANORTE
## 5 APODACA NUEVO LEON 66620 SOLTERO BANORTE
## 6 SALTILLO COAHUILA 25016 CASADO BANORTE
head(df1, n=5)
## NO.DE.EMPLEADO APELLIDOS NOMBRE FECHA.DE.NACIMIENTO GENERO
## 1 1 MARTINEZ DE LOERA NICOLAS 10/09/1955 MASCULINO
## 2 2 DE LEON MORENO MARIA0 14/05/1979 FEMENINO
## 3 3 HER0NDEZ CERVANTES JOSE LUIS 21/11/1949 MASCULINO
## 4 4 CAZARES MORALES MARIA 01/05/1990 FEMENINO
## 5 5 LOPEZ RAMOS YOLANDA 06/09/1965 FEMENINO
## RFC FECHA.DE.ALTA PRIMER.MES CUARTO.MES BAJA PUESTO
## 1 MALN550910338 01/07/2010 31/07/2010 29/10/2010 0 SUPERVISOR DE MAQUIN
## 2 LEMM7905148GA 01/07/2011 31/07/2011 29/10/2011 0 SUPERVISOR DE PEGADO
## 3 HECL4911213X3 22/11/2011 00/01/1900 00/01/1900 0 EXTERNO
## 4 CAMM9005019S8 30/01/2013 01/03/2013 30/05/2013 0 SUPERVISORA
## 5 LORY650906DBA 05/05/2014 04/06/2014 02/09/2014 0 SUPERVISORA
## DEPARTAMENTO NO.SEGURO.SOCIAL SALARIO.DIARIO.IMSS
## 1 PRODUCCION CARTON MDL 43745527937 176.72
## 2 PRODUCCION CARTON MDL 43127902955 176.72
## 3 EXTERNO 2184909675 176.72
## 4 PRODUCCION CARTON MC 43089001317 337.05
## 5 COSTURA 43836531525 4413757.00
## FACTOR.CRED.INFONAVIT N.CREDITO.INFONAVIT LUGAR.DE.NACIMIENTO
## 1 0 0 0
## 2 0 0 0
## 3 0 0 0
## 4 0 0 0
## 5 0 0 0
## CURP CALLE NUMERO.INTERNO COLONIA
## 1 MALN550910HZSRRC09 JOSE I LUGO 0 UNIDAD LABORAL
## 2 LEMM790514MCLNRR09 44682 115 SANTA TERESITA
## 3 HECL491121HJCRRS04 HACIENDA SAN CRISTOBAL 0 VILLAS DE HUI0LA
## 4 CAMM900501MVZZRR00 RIO ACAPONETA 0 PUEBLO NUEVO
## 5 LORY650906MNLPML08 BETANZOS 0 RINCON DE GALICIA
## MUNICIPIO ESTADO CODIGO.POSTAL ESTADO.CIVIL TARJETA_CUENTA
## 1 SAN NICOLAS DE LOS G NUEVO LEON 66440 SOLTERO BANORTE
## 2 APODACA NUEVO LEON 66605 SOLTERO BANORTE
## 3 APODACA NUEVO LEON 66634 SOLTERO BANORTE
## 4 APODACA NUEVO LEON 66649 CASADO BANORTE
## 5 APODACA NUEVO LEON 66620 SOLTERO BANORTE
tail(df1)
## NO.DE.EMPLEADO APELLIDOS NOMBRE FECHA.DE.NACIMIENTO
## 108 0 VERA VALDEZ JOSE MANUEL 23/12/1994
## 109 0 ZAPATA GARCIA ADRIA0 IRENE 05/05/1977
## 110 0 QUINTANILLA RUIZ BRAYAN JESUS 12/03/2002
## 111 0 SALAS MORALES ALVIERI SEBASTIAN 01/04/2003
## 112 0 ALVAREZ DORIA EDGAR HORACIO 11/06/1989
## 113 0 VAZQUEZ GAYTAN SOFIA 18/09/1972
## GENERO RFC FECHA.DE.ALTA PRIMER.MES CUARTO.MES BAJA
## 108 MASCULINO VEVM9412238W8 18/08/2022 18/09/2022 18/12/2022 0
## 109 FEMENINO ZAGA770505VA6 19/08/2022 19/09/2022 19/12/2022 0
## 110 MASCULINO QURB020312FT5 19/08/2022 19/09/2022 19/12/2022 0
## 111 MASCULINO SAMA030401V11 23/08/2022 23/09/2022 23/12/2022 0
## 112 MASCULINO AADE890611LN5 23/08/2022 23/09/2022 23/12/2022 0
## 113 FEMENINO VAGS720918SKA 23/08/2022 23/09/2022 23/12/2022 0
## PUESTO DEPARTAMENTO NO.SEGURO.SOCIAL SALARIO.DIARIO.IMSS
## 108 AYUDANTE DE MANTENIMIENTO 0 35149402816 180.68
## 109 COSTURERA 0 43947745741 180.68
## 110 AYUDANTE GENERAL 0 05 180278862 180.68
## 111 AYUDANTE GENERAL 0 60170348043 180.68
## 112 MONTACARGUISTA 0 43058988700 180.68
## 113 AYUDANTE GENERAL 0 47907208715 180.68
## FACTOR.CRED.INFONAVIT N.CREDITO.INFONAVIT
## 108 0 0
## 109 0 0
## 110 0 0
## 111 0 0
## 112 0 0
## 113 0 0
## LUGAR.DE.NACIMIENTO CURP CALLE
## 108 EBANO, SAN LUIS POTOSI VEVM941223HSPRLN07 MIER Y NORIEGA
## 109 HIDALGO, TAMAULIPAS ZAGA770505MTSPRD06 AZALEA
## 110 MONTERREY, NUEVO LEON QURB020312HNLNZRA1 RIO USUMACINTA
## 111 SAN NICOLAS DE LOS GARZA, NUEVO LEON SAMA030401HNLLRLA1 ROBLE
## 112 GUADALUPE, NUEVO LEON AADE890611HNLLRD RIO PAPALOAPAN
## 113 MONTERREY, NUEVO LEON VAGS720918MNLZYF00 FRANCIA
## NUMERO.INTERNO COLONIA MUNICIPIO ESTADO CODIGO.POSTAL
## 108 106B MIRADOR DE SAN ANTONIO JUAREZ NUEVO LEON 67255
## 109 423 HACIENDA LAS MARGARITAS APODACA NUEVO LEON 66647
## 110 615 PUEBLO NUEVO APODACA NUEVO LEON 66646
## 111 357 LA ENRAMADA APODACA NUEVO LEON 66635
## 112 722 PUEBLO NUEVO APODACA NUEVO LEON 66646
## 113 1109 VIVIENDA DIG0 APODACA NUEVO LEON 66647
## ESTADO.CIVIL TARJETA_CUENTA
## 108 CASADO SANTANDER
## 109 SOLTERA BANORTE
## 110 SOLTERO BANORTE
## 111 SOLTERO BANORTE
## 112 UNION LIBRE BANORTE
## 113 CASADA BANORTE
tabyl(df1, GENERO, ESTADO)
## GENERO COAHUILA GUADALUPE N.L. NUEVO LEON
## FEMENINO 1 0 60
## MASCULINO 8 1 43
tabyl(df1, DEPARTAMENTO, BAJA)
## DEPARTAMENTO 0 3
## 0 32 8
## AY FLEXO 1 0
## CALIDAD 2 0
## CEDIS 8 0
## CELDAS 1 2
## CORTADORAS 1 0
## COSTURA 8 0
## COSTURA T2 1 0
## EHS 3 0
## EMBARQUES 4 0
## EXTERNO 2 0
## LIMPIEZA 1 0
## MATERIALES 1 0
## PAILERIA 3 1
## PRODUCCION CARTON MC 5 0
## PRODUCCION CARTON MDL 7 0
## PRODUCCION RETORN 10 0
## ROTATIVA 1 0
## STABILUS 5 2
## TROQUEL 4 0
tabyl(df1, PUESTO, BAJA)
## PUESTO 0 3
## AY GENERAL 7 0
## AYUDANTE DE MANTENIMIENTO 1 0
## AYUDANTE GENERAL 48 12
## CHOFER 4 0
## CHOFER GESTOR 1 0
## COSTURERA 10 0
## CUSTOMER SERVICE INF 1 0
## ENFERMERA 1 0
## EXTERNO 2 0
## GESTOR 1 0
## GUARDIA DE SEGURIDAD 1 0
## INSPECTOR DE CALIDAD 1 0
## INSPECTORA DE CALIDAD 1 0
## LIDER 1 0
## LIMPIEZA 1 0
## MANTENIMIENTO 1 0
## MONTACARGUISTA 1 0
## MOZO 1 0
## OP FLEXO RANURADORA REFILADORA 1 0
## OPERADOR SIERRA 1 0
## PINTOR 1 0
## RECIBO 1 0
## RESIDENTE 4 0
## SOLDADOR 4 1
## SUPERVISOR DE MAQUIN 1 0
## SUPERVISOR DE PEGADO 1 0
## SUPERVISORA 2 0
## Técnicas para limpieza de datos
### Remover valores irrelevantes
### Remover valores duplicados
df1[duplicated(df1) ,]
## [1] NO.DE.EMPLEADO APELLIDOS NOMBRE
## [4] FECHA.DE.NACIMIENTO GENERO RFC
## [7] FECHA.DE.ALTA PRIMER.MES CUARTO.MES
## [10] BAJA PUESTO DEPARTAMENTO
## [13] NO.SEGURO.SOCIAL SALARIO.DIARIO.IMSS FACTOR.CRED.INFONAVIT
## [16] N.CREDITO.INFONAVIT LUGAR.DE.NACIMIENTO CURP
## [19] CALLE NUMERO.INTERNO COLONIA
## [22] MUNICIPIO ESTADO CODIGO.POSTAL
## [25] ESTADO.CIVIL TARJETA_CUENTA
## <0 rows> (or 0-length row.names)
sum(duplicated(df1))
## [1] 0
### Eliminar renglones duplicados
df2<- df1
df2<-distinct(df2)
### Errores tipográficos
df3 <- df2
df3$NO.DE.EMPLEADO <- abs(df3$NO.DE.EMPLEADO)
summary(df3)
## NO.DE.EMPLEADO APELLIDOS NOMBRE FECHA.DE.NACIMIENTO
## Min. : 0.00 Length:113 Length:113 Length:113
## 1st Qu.: 8.00 Class :character Class :character Class :character
## Median : 38.00 Mode :character Mode :character Mode :character
## Mean : 46.31
## 3rd Qu.: 72.00
## Max. :148.00
## GENERO RFC FECHA.DE.ALTA PRIMER.MES
## Length:113 Length:113 Length:113 Length:113
## Class :character Class :character Class :character Class :character
## Mode :character Mode :character Mode :character Mode :character
##
##
##
## CUARTO.MES BAJA PUESTO DEPARTAMENTO
## Length:113 Min. :0.0000 Length:113 Length:113
## Class :character 1st Qu.:0.0000 Class :character Class :character
## Mode :character Median :0.0000 Mode :character Mode :character
## Mean :0.3451
## 3rd Qu.:0.0000
## Max. :3.0000
## NO.SEGURO.SOCIAL SALARIO.DIARIO.IMSS FACTOR.CRED.INFONAVIT
## Length:113 Min. :1.440e+02 Length:113
## Class :character 1st Qu.:1.770e+02 Class :character
## Mode :character Median :1.810e+02 Mode :character
## Mean :1.346e+07
## 3rd Qu.:1.810e+02
## Max. :1.517e+09
## N.CREDITO.INFONAVIT LUGAR.DE.NACIMIENTO CURP CALLE
## Min. :0.000e+00 Length:113 Length:113 Length:113
## 1st Qu.:0.000e+00 Class :character Class :character Class :character
## Median :0.000e+00 Mode :character Mode :character Mode :character
## Mean :6.770e+07
## 3rd Qu.:0.000e+00
## Max. :1.922e+09
## NUMERO.INTERNO COLONIA MUNICIPIO ESTADO
## Length:113 Length:113 Length:113 Length:113
## Class :character Class :character Class :character Class :character
## Mode :character Mode :character Mode :character Mode :character
##
##
##
## CODIGO.POSTAL ESTADO.CIVIL TARJETA_CUENTA
## Min. :25016 Length:113 Length:113
## 1st Qu.:66640 Class :character Class :character
## Median :66646 Mode :character Mode :character
## Mean :63365
## 3rd Qu.:66649
## Max. :67493
### ¿Cuántos NA's tengo en la base de datos?
sum(is.na(df3))
## [1] 0
### ¿Cuántos NA's tengo por variable?
sapply(df3, function(x) sum(is.na(x)))
## NO.DE.EMPLEADO APELLIDOS NOMBRE
## 0 0 0
## FECHA.DE.NACIMIENTO GENERO RFC
## 0 0 0
## FECHA.DE.ALTA PRIMER.MES CUARTO.MES
## 0 0 0
## BAJA PUESTO DEPARTAMENTO
## 0 0 0
## NO.SEGURO.SOCIAL SALARIO.DIARIO.IMSS FACTOR.CRED.INFONAVIT
## 0 0 0
## N.CREDITO.INFONAVIT LUGAR.DE.NACIMIENTO CURP
## 0 0 0
## CALLE NUMERO.INTERNO COLONIA
## 0 0 0
## MUNICIPIO ESTADO CODIGO.POSTAL
## 0 0 0
## ESTADO.CIVIL TARJETA_CUENTA
## 0 0
?sapply
## starting httpd help server ... done
### Borrar todos los registros NA's de una tabla
df4<-df3
df4<-na.omit(df4)
summary(df4)
## NO.DE.EMPLEADO APELLIDOS NOMBRE FECHA.DE.NACIMIENTO
## Min. : 0.00 Length:113 Length:113 Length:113
## 1st Qu.: 8.00 Class :character Class :character Class :character
## Median : 38.00 Mode :character Mode :character Mode :character
## Mean : 46.31
## 3rd Qu.: 72.00
## Max. :148.00
## GENERO RFC FECHA.DE.ALTA PRIMER.MES
## Length:113 Length:113 Length:113 Length:113
## Class :character Class :character Class :character Class :character
## Mode :character Mode :character Mode :character Mode :character
##
##
##
## CUARTO.MES BAJA PUESTO DEPARTAMENTO
## Length:113 Min. :0.0000 Length:113 Length:113
## Class :character 1st Qu.:0.0000 Class :character Class :character
## Mode :character Median :0.0000 Mode :character Mode :character
## Mean :0.3451
## 3rd Qu.:0.0000
## Max. :3.0000
## NO.SEGURO.SOCIAL SALARIO.DIARIO.IMSS FACTOR.CRED.INFONAVIT
## Length:113 Min. :1.440e+02 Length:113
## Class :character 1st Qu.:1.770e+02 Class :character
## Mode :character Median :1.810e+02 Mode :character
## Mean :1.346e+07
## 3rd Qu.:1.810e+02
## Max. :1.517e+09
## N.CREDITO.INFONAVIT LUGAR.DE.NACIMIENTO CURP CALLE
## Min. :0.000e+00 Length:113 Length:113 Length:113
## 1st Qu.:0.000e+00 Class :character Class :character Class :character
## Median :0.000e+00 Mode :character Mode :character Mode :character
## Mean :6.770e+07
## 3rd Qu.:0.000e+00
## Max. :1.922e+09
## NUMERO.INTERNO COLONIA MUNICIPIO ESTADO
## Length:113 Length:113 Length:113 Length:113
## Class :character Class :character Class :character Class :character
## Mode :character Mode :character Mode :character Mode :character
##
##
##
## CODIGO.POSTAL ESTADO.CIVIL TARJETA_CUENTA
## Min. :25016 Length:113 Length:113
## 1st Qu.:66640 Class :character Class :character
## Median :66646 Mode :character Mode :character
## Mean :63365
## 3rd Qu.:66649
## Max. :67493
### Reemplazar NA's con CEROS
df5<-df4
df5[is.na(df5)]<-0
summary(df5)
## NO.DE.EMPLEADO APELLIDOS NOMBRE FECHA.DE.NACIMIENTO
## Min. : 0.00 Length:113 Length:113 Length:113
## 1st Qu.: 8.00 Class :character Class :character Class :character
## Median : 38.00 Mode :character Mode :character Mode :character
## Mean : 46.31
## 3rd Qu.: 72.00
## Max. :148.00
## GENERO RFC FECHA.DE.ALTA PRIMER.MES
## Length:113 Length:113 Length:113 Length:113
## Class :character Class :character Class :character Class :character
## Mode :character Mode :character Mode :character Mode :character
##
##
##
## CUARTO.MES BAJA PUESTO DEPARTAMENTO
## Length:113 Min. :0.0000 Length:113 Length:113
## Class :character 1st Qu.:0.0000 Class :character Class :character
## Mode :character Median :0.0000 Mode :character Mode :character
## Mean :0.3451
## 3rd Qu.:0.0000
## Max. :3.0000
## NO.SEGURO.SOCIAL SALARIO.DIARIO.IMSS FACTOR.CRED.INFONAVIT
## Length:113 Min. :1.440e+02 Length:113
## Class :character 1st Qu.:1.770e+02 Class :character
## Mode :character Median :1.810e+02 Mode :character
## Mean :1.346e+07
## 3rd Qu.:1.810e+02
## Max. :1.517e+09
## N.CREDITO.INFONAVIT LUGAR.DE.NACIMIENTO CURP CALLE
## Min. :0.000e+00 Length:113 Length:113 Length:113
## 1st Qu.:0.000e+00 Class :character Class :character Class :character
## Median :0.000e+00 Mode :character Mode :character Mode :character
## Mean :6.770e+07
## 3rd Qu.:0.000e+00
## Max. :1.922e+09
## NUMERO.INTERNO COLONIA MUNICIPIO ESTADO
## Length:113 Length:113 Length:113 Length:113
## Class :character Class :character Class :character Class :character
## Mode :character Mode :character Mode :character Mode :character
##
##
##
## CODIGO.POSTAL ESTADO.CIVIL TARJETA_CUENTA
## Min. :25016 Length:113 Length:113
## 1st Qu.:66640 Class :character Class :character
## Median :66646 Mode :character Mode :character
## Mean :63365
## 3rd Qu.:66649
## Max. :67493
### Reemplazar NA's con el Promedio
df6<-df5
df6$BAJA[is.na(df6$BAJA)]<-mean(df6$BAJA, na.rm= TRUE)
summary(df6)
## NO.DE.EMPLEADO APELLIDOS NOMBRE FECHA.DE.NACIMIENTO
## Min. : 0.00 Length:113 Length:113 Length:113
## 1st Qu.: 8.00 Class :character Class :character Class :character
## Median : 38.00 Mode :character Mode :character Mode :character
## Mean : 46.31
## 3rd Qu.: 72.00
## Max. :148.00
## GENERO RFC FECHA.DE.ALTA PRIMER.MES
## Length:113 Length:113 Length:113 Length:113
## Class :character Class :character Class :character Class :character
## Mode :character Mode :character Mode :character Mode :character
##
##
##
## CUARTO.MES BAJA PUESTO DEPARTAMENTO
## Length:113 Min. :0.0000 Length:113 Length:113
## Class :character 1st Qu.:0.0000 Class :character Class :character
## Mode :character Median :0.0000 Mode :character Mode :character
## Mean :0.3451
## 3rd Qu.:0.0000
## Max. :3.0000
## NO.SEGURO.SOCIAL SALARIO.DIARIO.IMSS FACTOR.CRED.INFONAVIT
## Length:113 Min. :1.440e+02 Length:113
## Class :character 1st Qu.:1.770e+02 Class :character
## Mode :character Median :1.810e+02 Mode :character
## Mean :1.346e+07
## 3rd Qu.:1.810e+02
## Max. :1.517e+09
## N.CREDITO.INFONAVIT LUGAR.DE.NACIMIENTO CURP CALLE
## Min. :0.000e+00 Length:113 Length:113 Length:113
## 1st Qu.:0.000e+00 Class :character Class :character Class :character
## Median :0.000e+00 Mode :character Mode :character Mode :character
## Mean :6.770e+07
## 3rd Qu.:0.000e+00
## Max. :1.922e+09
## NUMERO.INTERNO COLONIA MUNICIPIO ESTADO
## Length:113 Length:113 Length:113 Length:113
## Class :character Class :character Class :character Class :character
## Mode :character Mode :character Mode :character Mode :character
##
##
##
## CODIGO.POSTAL ESTADO.CIVIL TARJETA_CUENTA
## Min. :25016 Length:113 Length:113
## 1st Qu.:66640 Class :character Class :character
## Median :66646 Mode :character Mode :character
## Mean :63365
## 3rd Qu.:66649
## Max. :67493
### Reemplazar negativos con ceros
df7<-df6
df7[df7<-0]
## data frame with 0 columns and 113 rows
summary(df7)
## Min. 1st Qu. Median Mean 3rd Qu. Max.
## 0 0 0 0 0 0
### De acuerdo al análisis descriptivo, vemos que se tiene un alto nivel de ausentimo
### por parte de los ayudantes generales. Esto puede interpretarse que es debido a sus
### largas jornadas de trabajo o actividades variadas por realizar. En cuanto a los Departamentos
### con más bajas, tenemos que Stabilus, Celdas y Pailería muestran los niveles más altos,
### mientras que el resto de los Departamentos y Puestos laborales muestran información deficiente.
describe(df2)
## # A tibble: 5 × 26
## described_v…¹ n na mean sd se_mean IQR skewn…² kurto…³ p00
## <chr> <int> <int> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl> <dbl>
## 1 NO.DE.EMPLEA… 113 0 4.63e+1 4.24e+1 3.99e+0 64 0.741 -0.465 0
## 2 BAJA 113 0 3.45e-1 9.61e-1 9.04e-2 0 2.45 4.05 0
## 3 SALARIO.DIAR… 113 0 1.35e+7 1.43e+8 1.34e+7 3.96 10.6 113. 144.
## 4 N.CREDITO.IN… 113 0 6.77e+7 3.55e+8 3.34e+7 0 5.10 24.4 0
## 5 CODIGO.POSTAL 113 0 6.34e+4 1.12e+4 1.05e+3 9 -3.14 8.01 25016
## # … with 16 more variables: p01 <dbl>, p05 <dbl>, p10 <dbl>, p20 <dbl>,
## # p25 <dbl>, p30 <dbl>, p40 <dbl>, p50 <dbl>, p60 <dbl>, p70 <dbl>,
## # p75 <dbl>, p80 <dbl>, p90 <dbl>, p95 <dbl>, p99 <dbl>, p100 <dbl>, and
## # abbreviated variable names ¹described_variables, ²skewness, ³kurtosis
## Método estadístico
#count(df2, GENERO, sort = TRUE)
#count(df2, FECHA.DE.ALTA, sort = TRUE)
#count(df2, PRIMER.MES, sort = TRUE)
#count(df2, CUARTO.MES, sort = TRUE)
#count(df2, BAJA, sort = TRUE)
#count(df2, PUESTO, sort = TRUE)
#count(df2, DEPARTAMENTO, sort = TRUE)
#count(df2, FACTOR.CRED.INFONAVIT, sort = TRUE)
#count(df2, N.CREDITO.INFONAVIT, sort = TRUE)
#count(df2, MUNICIPIO, sort = TRUE)
#count(df2, ESTADO, sort = TRUE)
#count(df2, ESTADO.CIVIL, sort = TRUE)
#count(df2, TARJETA_CUENTA, sort = TRUE)
tibble(df2)
## # A tibble: 113 × 26
## NO.DE.EMP…¹ APELL…² NOMBRE FECHA…³ GENERO RFC FECHA…⁴ PRIME…⁵ CUART…⁶ BAJA
## <int> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <chr> <int>
## 1 1 MARTIN… NICOL… 10/09/… MASCU… MALN… 01/07/… 31/07/… 29/10/… 0
## 2 2 DE LEO… MARIA0 14/05/… FEMEN… LEMM… 01/07/… 31/07/… 29/10/… 0
## 3 3 HER0ND… JOSE … 21/11/… MASCU… HECL… 22/11/… 00/01/… 00/01/… 0
## 4 4 CAZARE… MARIA 01/05/… FEMEN… CAMM… 30/01/… 01/03/… 30/05/… 0
## 5 5 LOPEZ … YOLAN… 06/09/… FEMEN… LORY… 05/05/… 04/06/… 02/09/… 0
## 6 6 HER0ND… HERME… 22/06/… MASCU… HEMH… 03/07/… 02/08/… 31/10/… 0
## 7 7 PERALT… ARACE… 01/07/… FEMEN… PEMA… 06/08/… 05/09/… 04/12/… 0
## 8 8 TOVAR … PEDRO… 10/12/… MASCU… TOPP… 23/08/… 22/09/… 21/12/… 0
## 9 9 MORENO… HUMBE… 03/11/… MASCU… MOSH… 11/01/… 10/02/… 11/05/… 0
## 10 10 LU0 LO… YOLAN… 18/08/… FEMEN… LULY… 20/02/… 22/03/… 20/06/… 0
## # … with 103 more rows, 16 more variables: PUESTO <chr>, DEPARTAMENTO <chr>,
## # NO.SEGURO.SOCIAL <chr>, SALARIO.DIARIO.IMSS <dbl>,
## # FACTOR.CRED.INFONAVIT <chr>, N.CREDITO.INFONAVIT <int>,
## # LUGAR.DE.NACIMIENTO <chr>, CURP <chr>, CALLE <chr>, NUMERO.INTERNO <chr>,
## # COLONIA <chr>, MUNICIPIO <chr>, ESTADO <chr>, CODIGO.POSTAL <int>,
## # ESTADO.CIVIL <chr>, TARJETA_CUENTA <chr>, and abbreviated variable names
## # ¹NO.DE.EMPLEADO, ²APELLIDOS, ³FECHA.DE.NACIMIENTO, ⁴FECHA.DE.ALTA, …
### Total de empleados por género y Estado en el cual viven
### Dataframe
df23 <- data.frame(df1$SALARIO.DIARIO.IMSS)
df23
## df1.SALARIO.DIARIO.IMSS
## 1 1.767200e+02
## 2 1.767200e+02
## 3 1.767200e+02
## 4 3.370500e+02
## 5 4.413757e+06
## 6 1.767200e+02
## 7 2.600100e+02
## 8 2.407500e+02
## 9 1.767200e+02
## 10 1.528600e+02
## 11 1.757900e+02
## 12 1.767200e+02
## 13 1.767200e+02
## 14 1.444500e+02
## 15 2.796100e+02
## 16 1.444500e+02
## 17 1.767200e+02
## 18 1.767200e+02
## 19 1.444500e+02
## 20 1.767200e+02
## 21 1.767200e+02
## 22 1.516700e+02
## 23 2.086500e+02
## 24 1.516700e+02
## 25 2.407100e+02
## 26 1.516729e+09
## 27 1.516700e+02
## 28 1.767200e+02
## 29 1.767200e+02
## 30 1.516700e+02
## 31 1.767200e+02
## 32 1.767200e+02
## 33 1.767200e+02
## 34 1.767200e+02
## 35 1.516100e+02
## 36 1.516100e+02
## 37 1.767200e+02
## 38 1.516100e+02
## 39 1.516100e+02
## 40 1.516100e+02
## 41 1.767200e+02
## 42 1.767200e+02
## 43 1.767200e+02
## 44 1.516100e+02
## 45 1.516100e+02
## 46 1.516100e+02
## 47 1.516100e+02
## 48 1.516100e+02
## 49 1.767200e+02
## 50 1.516100e+02
## 51 1.767200e+02
## 52 1.806800e+02
## 53 1.806800e+02
## 54 1.806800e+02
## 55 1.806800e+02
## 56 1.806800e+02
## 57 1.806800e+02
## 58 1.806800e+02
## 59 1.806800e+02
## 60 1.806800e+02
## 61 1.806800e+02
## 62 1.806800e+02
## 63 1.806800e+02
## 64 1.806800e+02
## 65 1.806800e+02
## 66 1.806800e+02
## 67 1.806800e+02
## 68 1.806800e+02
## 69 1.806800e+02
## 70 1.806800e+02
## 71 1.816800e+02
## 72 1.846800e+02
## 73 1.856800e+02
## 74 1.806800e+02
## 75 1.806800e+02
## 76 1.806800e+02
## 77 1.806800e+02
## 78 1.806800e+02
## 79 1.806800e+02
## 80 1.806800e+02
## 81 1.806800e+02
## 82 1.806800e+02
## 83 1.806800e+02
## 84 1.806800e+02
## 85 1.806800e+02
## 86 1.806800e+02
## 87 1.806800e+02
## 88 1.806800e+02
## 89 1.806800e+02
## 90 1.806800e+02
## 91 1.806800e+02
## 92 1.806800e+02
## 93 1.806800e+02
## 94 1.806800e+02
## 95 1.806800e+02
## 96 1.806800e+02
## 97 1.806800e+02
## 98 1.806800e+02
## 99 1.806800e+02
## 100 1.806800e+02
## 101 1.806800e+02
## 102 1.806800e+02
## 103 1.806800e+02
## 104 1.806800e+02
## 105 1.806800e+02
## 106 1.806800e+02
## 107 1.806800e+02
## 108 1.806800e+02
## 109 1.806800e+02
## 110 1.806800e+02
## 111 1.806800e+02
## 112 1.806800e+02
## 113 1.806800e+02
prop.table(df23, margin=NULL)
## df1.SALARIO.DIARIO.IMSS
## 1 1.161743e-07
## 2 1.161743e-07
## 3 1.161743e-07
## 4 2.215740e-07
## 5 2.901569e-03
## 6 1.161743e-07
## 7 1.709285e-07
## 8 1.582671e-07
## 9 1.161743e-07
## 10 1.004890e-07
## 11 1.155630e-07
## 12 1.161743e-07
## 13 1.161743e-07
## 14 9.496029e-08
## 15 1.838134e-07
## 16 9.496029e-08
## 17 1.161743e-07
## 18 1.161743e-07
## 19 9.496029e-08
## 20 1.161743e-07
## 21 1.161743e-07
## 22 9.970666e-08
## 23 1.371649e-07
## 24 9.970666e-08
## 25 1.582408e-07
## 26 9.970854e-01
## 27 9.970666e-08
## 28 1.161743e-07
## 29 1.161743e-07
## 30 9.970666e-08
## 31 1.161743e-07
## 32 1.161743e-07
## 33 1.161743e-07
## 34 1.161743e-07
## 35 9.966721e-08
## 36 9.966721e-08
## 37 1.161743e-07
## 38 9.966721e-08
## 39 9.966721e-08
## 40 9.966721e-08
## 41 1.161743e-07
## 42 1.161743e-07
## 43 1.161743e-07
## 44 9.966721e-08
## 45 9.966721e-08
## 46 9.966721e-08
## 47 9.966721e-08
## 48 9.966721e-08
## 49 1.161743e-07
## 50 9.966721e-08
## 51 1.161743e-07
## 52 1.187776e-07
## 53 1.187776e-07
## 54 1.187776e-07
## 55 1.187776e-07
## 56 1.187776e-07
## 57 1.187776e-07
## 58 1.187776e-07
## 59 1.187776e-07
## 60 1.187776e-07
## 61 1.187776e-07
## 62 1.187776e-07
## 63 1.187776e-07
## 64 1.187776e-07
## 65 1.187776e-07
## 66 1.187776e-07
## 67 1.187776e-07
## 68 1.187776e-07
## 69 1.187776e-07
## 70 1.187776e-07
## 71 1.194350e-07
## 72 1.214072e-07
## 73 1.220646e-07
## 74 1.187776e-07
## 75 1.187776e-07
## 76 1.187776e-07
## 77 1.187776e-07
## 78 1.187776e-07
## 79 1.187776e-07
## 80 1.187776e-07
## 81 1.187776e-07
## 82 1.187776e-07
## 83 1.187776e-07
## 84 1.187776e-07
## 85 1.187776e-07
## 86 1.187776e-07
## 87 1.187776e-07
## 88 1.187776e-07
## 89 1.187776e-07
## 90 1.187776e-07
## 91 1.187776e-07
## 92 1.187776e-07
## 93 1.187776e-07
## 94 1.187776e-07
## 95 1.187776e-07
## 96 1.187776e-07
## 97 1.187776e-07
## 98 1.187776e-07
## 99 1.187776e-07
## 100 1.187776e-07
## 101 1.187776e-07
## 102 1.187776e-07
## 103 1.187776e-07
## 104 1.187776e-07
## 105 1.187776e-07
## 106 1.187776e-07
## 107 1.187776e-07
## 108 1.187776e-07
## 109 1.187776e-07
## 110 1.187776e-07
## 111 1.187776e-07
## 112 1.187776e-07
## 113 1.187776e-07
### Gráfico "Frecuencia de bajas por empleado"
hist(df3$N.CREDITO.INFONAVIT,main="Número de créditos INFONAVIT otorgados",xlab="Valor de créditos INFONAVIT de empleados",col='steelblue')
### Gráfico "Frecuencia de bajas por empleado"
hist(df3$BAJA,main="Frecuencia de bajas por empleado acorde a promedios",xlab="Frecuencia de bajas por empleado",col='steelblue')
### Estado en el que viven empleados VS. Género más recurrente
df7<-df6
### Gráfica de dispersión: Código postal
plot(df7$CODIGO.POSTAL, horizontal= TRUE)
## Warning in plot.window(...): "horizontal" is not a graphical parameter
## Warning in plot.xy(xy, type, ...): "horizontal" is not a graphical parameter
## Warning in axis(side = side, at = at, labels = labels, ...): "horizontal" is not
## a graphical parameter
## Warning in axis(side = side, at = at, labels = labels, ...): "horizontal" is not
## a graphical parameter
## Warning in box(...): "horizontal" is not a graphical parameter
## Warning in title(...): "horizontal" is not a graphical parameter
### Gráfica de dispersión: Número de empleado
plot(df7$NO.DE.EMPLEADO, horizontal= TRUE)
## Warning in plot.window(...): "horizontal" is not a graphical parameter
## Warning in plot.xy(xy, type, ...): "horizontal" is not a graphical parameter
## Warning in axis(side = side, at = at, labels = labels, ...): "horizontal" is not
## a graphical parameter
## Warning in axis(side = side, at = at, labels = labels, ...): "horizontal" is not
## a graphical parameter
## Warning in box(...): "horizontal" is not a graphical parameter
## Warning in title(...): "horizontal" is not a graphical parameter
Propuesta 1. Vemos que se tiene un mayor porcentaje de empleadas femeninas, representando un 70% de los empleados totales. Adicional, muchos de los empleados viven en principalmente tres estados: Nuevo León y Coahuila, del cual destaca principalmente Nuevo León. Se recomienda que haya mayor apertura en cuanto a los roles que pueden asumir en los distintos puestos de trabajo o en su caso, que haya puestos de trabajo específicamente dirigidos para mujeres.
Propuesta 2. Respecto a los puestos laborales, existen 60 personas desempeñándose como “ayudantes generales”. Es importante analizar la importancia que tiene dicho puesto y cuáles son las posibilidades de crecimiento dentro de este. Se debe considerar la forma de implementar una evaluación de habilidades para los empleados que les permita crecer de manera orgánica dentro de la empresa y de esta forma, aumentar el porcentaje de retención de personal.
Este análisis nos permite comprender la importancia de la limpieza de datos, análisis e interpretación de datos. De acuerdo a la información, se puede ver que FORM aún cuenta con áreas de oportunidad por trabajar para tener un mejor aprovechamiento de sus recursos. Es importante destacar que alguno de esas mejoras empieza por la transformación digital, la cual podrá ser implementada a través de un mejor seguimiento de sus bases de datos internas, teniéndola actualizada y limpia. De esta forma se podrá tener una mejor toma de decisiones a futuro y de manera continua, una mejor predicción de diagnósticos.