5.7 Resumen: dplyr/tidyr y R base
A modo de referencia rápida, la siguiente tabla recoge las tareas más habituales de manipulación de datos vistas en este capítulo, junto con su equivalente en R base (Capítulo 2):
| Tarea | dplyr / tidyr | R base |
|---|---|---|
| Leer texto/CSV | read_csv2(), read_delim() (readr) |
read.table(), read.delim() |
| Leer Excel | read_excel() (readxl) |
openxlsx::read.xlsx() |
| Escribir texto/CSV | write_csv2() (readr) |
write.table() |
| Seleccionar columnas | select(df, a, b) |
df[, c("a","b")] |
| Renombrar columnas | rename(df, x = antiguo) |
names(df)[i] <- "x" |
| Filtrar filas | filter(df, cond) |
subset(df, cond), df[cond, ] |
| Ordenar filas | arrange(df, x) |
df[order(df$x), ] |
| Crear/transformar variable | mutate(df, z = expr) |
df$z <- expr |
| Recodificar/categorizar | mutate(df, z = case_when(...)) |
cut(), ifelse() |
| Resumir | summarise(df, ...) |
aggregate(), tapply() |
| Agrupar y resumir | group_by(df, g) %>% summarise(...) |
aggregate(y ~ g, df, FUN) |
| Unir tablas (join) | inner_join(), left_join(), … |
merge() |
| Filtrar por coincidencia | semi_join(df1, df2) |
df1[df1$x %in% df2$x, ] |
| Encadenar operaciones | %>% / |> |
llamadas anidadas |