B.2 Operaciones con variables (columnas)
B.2.1 Seleccionar variables con select()
<- select(empleados, id, sexo, minoria, tiempemp, salini, salario)
emplea2 head(emplea2)
## id sexo minoria tiempemp salini salario
## 1 1 Hombre No 98 27000 57000
## 2 2 Hombre No 98 18750 40200
## 3 3 Mujer No 98 12000 21450
## 4 4 Mujer No 98 13200 21900
## 5 5 Hombre No 98 21000 45000
## 6 6 Hombre No 98 13500 32100
Se puede cambiar el nombre (ver también ?rename())
head(select(empleados, sexo, noblanca = minoria, salario))
## sexo noblanca salario
## 1 Hombre No 57000
## 2 Hombre No 40200
## 3 Mujer No 21450
## 4 Mujer No 21900
## 5 Hombre No 45000
## 6 Hombre No 32100
Se pueden emplear los nombres de variables como índices:
head(select(empleados, sexo:salario))
## sexo fechnac educ catlab salario
## 1 Hombre 1952-02-03 15 Directivo 57000
## 2 Hombre 1958-05-23 16 Administrativo 40200
## 3 Mujer 1929-07-26 12 Administrativo 21450
## 4 Mujer 1947-04-15 8 Administrativo 21900
## 5 Hombre 1955-02-09 15 Administrativo 45000
## 6 Hombre 1958-08-22 15 Administrativo 32100
head(select(empleados, -(sexo:salario)))
## id salini tiempemp expprev minoria sexoraza
## 1 1 27000 98 144 No Blanca varón
## 2 2 18750 98 36 No Blanca varón
## 3 3 12000 98 381 No Blanca mujer
## 4 4 13200 98 190 No Blanca mujer
## 5 5 21000 98 138 No Blanca varón
## 6 6 13500 98 67 No Blanca varón
Hay opciones para considerar distintos criterios: starts_with()
, ends_with()
,
contains()
, matches()
, one_of()
(ver ?select
).
head(select(empleados, starts_with("s")))
## sexo salario salini sexoraza
## 1 Hombre 57000 27000 Blanca varón
## 2 Hombre 40200 18750 Blanca varón
## 3 Mujer 21450 12000 Blanca mujer
## 4 Mujer 21900 13200 Blanca mujer
## 5 Hombre 45000 21000 Blanca varón
## 6 Hombre 32100 13500 Blanca varón
B.2.2 Generar nuevas variables con mutate()
head(mutate(emplea2, incsal = salario - salini, tsal = incsal/tiempemp ))
## id sexo minoria tiempemp salini salario incsal tsal
## 1 1 Hombre No 98 27000 57000 30000 306.12245
## 2 2 Hombre No 98 18750 40200 21450 218.87755
## 3 3 Mujer No 98 12000 21450 9450 96.42857
## 4 4 Mujer No 98 13200 21900 8700 88.77551
## 5 5 Hombre No 98 21000 45000 24000 244.89796
## 6 6 Hombre No 98 13500 32100 18600 189.79592