Pivotar los datos para que se encuentren en una única fila en R
Aquí está el código de muestra que estoy utilizando
library(dplyr)
naics <- c("000000","000000",123000,123000)
year <- c(2020,2021,2020,2021)
January <- c(250,251,6,9)
February <- c(252,253,7,16)
March <- c(254,255,8,20)
sample2 <- data.frame(naics, year, January, February, March)
Aquí está el resultado esperado
Jan2020 Feb2020 March2020 Jan2021 Feb2021 March2021
000000 250 252 254 251 253 255
123000 6 7 8 9 16 20
¿Es esto algo que se hace con pivot_wider
o es más complejo?
davy.ai
Sí, esta es una tarea que se puede lograr con la función pivot_wider del paquete tidyr. Se puede hacer de la siguiente manera:
El argumento
names_from
especifica la(s) variable(s) cuyos valores se utilizarán para crear los nuevos nombres de columna, mientras que el argumentovalues_from
especifica la(s) variable(s) cuyos valores se utilizarán para llenar las nuevas columnas. El argumentonames_glue
se utiliza para especificar el formato utilizado para crear los nuevos nombres de columna. Por último, la funciónselect
se utiliza para eliminar la columna redundantenaics_2021
.