Aunque la mayoria de los datos estan presentados en tablas no estan organizados de la manera que se pretende trabajar sobre ellos por lo que la funciónsplit()nos permitirá clasificar los datos ya sea dados en vector o como un data frame en tablas, para ello lo explicare con el siguiente ejemplo que muestra una data que contiene el nivel de satisfaccion(satisfaction_level) de empleados de una cierta compañia la cual la clasificaremos con respecto al tipo de ventas (sales) como se muestra en la Img 1. data tipo csv.
Img 1. :Archivo de tipo csv que contiene nivel de satifación de empleados de una cierta compañia
La lectura de un archivo de tipo csv hacia un data frame se hace por medio de la funcion read.csv como se muestra a continuación:
library(readr)
HR <- read_csv("C:/Users/Usuario/Desktop/DRSP/CURSO RMARKDOWN/ejercicio_1/HR.csv")
HR
## # A tibble: 53 x 10
## satisfaction_level last_evaluation number_project average_montly_hours
## <dbl> <dbl> <dbl> <dbl>
## 1 0.38 0.53 2 157
## 2 0.8 0.86 5 262
## 3 0.11 0.88 7 272
## 4 0.72 0.87 5 223
## 5 0.37 0.52 2 159
## 6 0.41 0.5 2 153
## 7 0.89 0.92 5 242
## 8 0.82 0.87 4 239
## 9 0.4 0.49 2 135
## 10 0.41 0.46 2 128
## # ... with 43 more rows, and 6 more variables: time_spend_company <dbl>,
## # Work_accident <dbl>, left <dbl>, promotion_last_5years <dbl>, sales <chr>,
## # salary <chr>
Ahora nos enfocaremos solamente en tres variables: nivel de satisfacción (satisfaction_level), tipos de ventas(sales) y salario(salary) para fines didacticos para la cual reduciré mi data a tan solo las variables de interes.
HR_1 <- data.frame(HR$satisfaction_level, HR$sales, HR$salary)
Mostrando los 10 primeros datos con la función head()
head(HR_1,10)
## HR.satisfaction_level HR.sales HR.salary
## 1 0.38 sales low
## 2 0.80 sales medium
## 3 0.11 sales medium
## 4 0.72 sales low
## 5 0.37 sales low
## 6 0.41 sales low
## 7 0.89 sales low
## 8 0.82 sales low
## 9 0.40 sales low
## 10 0.41 accounting low
split()Supongase que ahora queremos obtener la misma información pero clasificado por tipo de venta(sales) para este proposito usaremos la función split()
HR_clasificado <- split(HR_1[2:3], HR_1$HR.sales)
HR_clasificado
## $accounting
## HR.sales HR.salary
## 10 accounting low
## 11 accounting low
## 12 accounting low
## 46 accounting low
##
## $hr
## HR.sales HR.salary
## 13 hr low
## 14 hr low
## 15 hr low
## 16 hr low
##
## $IT
## HR.sales HR.salary
## 31 IT medium
## 32 IT medium
## 33 IT medium
## 34 IT medium
## 35 IT medium
## 40 IT medium
##
## $management
## HR.sales HR.salary
## 30 management medium
## 49 management low
##
## $marketing
## HR.sales HR.salary
## 44 marketing medium
## 50 marketing low
## 51 marketing low
## 52 marketing low
##
## $product_mng
## HR.sales HR.salary
## 36 product_mng medium
## 37 product_mng medium
## 38 product_mng medium
## 39 product_mng medium
## 41 product_mng medium
## 42 product_mng high
## 43 product_mng low
##
## $sales
## HR.sales HR.salary
## 1 sales low
## 2 sales medium
## 3 sales medium
## 4 sales low
## 5 sales low
## 6 sales low
## 7 sales low
## 8 sales low
## 9 sales low
## 45 sales low
## 53 sales medium
##
## $support
## HR.sales HR.salary
## 22 support low
## 23 support low
## 24 support low
## 25 support low
## 26 support low
## 47 support low
##
## $technical
## HR.sales HR.salary
## 17 technical low
## 18 technical low
## 19 technical low
## 20 technical low
## 21 technical low
## 27 technical low
## 28 technical low
## 29 technical low
## 48 technical low
A cada una de las tablas correspondientes a tipo de venta (sales) se tiene acceso de manera habitual para listas, por ejemplo, la tabla correspondiente a la venta de tipo technical
HR_clasificado$"technical"
## HR.sales HR.salary
## 17 technical low
## 18 technical low
## 19 technical low
## 20 technical low
## 21 technical low
## 27 technical low
## 28 technical low
## 29 technical low
## 48 technical low
#Cnclusión
#Habiendo concluido podremos realizar los estadísticos descriptivos de manera mas simple si nuestro objetivo fuera realizarlo en cierta variable clasificada ya sea promedios, medias, etc. la cual podremos usar funciones mas adelante como `lapply` o `sapply` u otros métodos estadísticos.