¿Cómo recopilo 2 conjuntos de columnas en tidyr [duplicado]
Esta pregunta ya tiene una respuesta aquí:
Combine múltiples columnas en datos ordenados [duplicado] 3 respuestasReformar múltiples conjuntos de columnas de medición (formato ancho) en columnas individuales (formato largo) 6 respuestasTengo la siguiente estructura:
key | category_x | 2009 | category_y | 2010
test
ejemplo de datos según lo solicitado
set.seed(24)
df <- data.frame(
key = 1:10,
category_x = paste0("stock_", 0:9),
'2008' = rnorm(10, 0, 10),
category_y = paste0("stock_", 0:9),
'2009' = rnorm(10, 0, 10),
category_z = paste0("stock_", 0:9),
'2010' = rnorm(10, 0, 10),
check.names=FALSE
)
¿Cómo cambio eso en:
key | category | year
Sé que puedo usar:
library(magrittr)
library(dplyr)
library(tidyr)
data %>% gather(key, category, starts_with("category_"))
pero eso no trata con el año. Miré Reúna múltiples conjuntos de columnas
pero no recibo los comandos de extracto de propagación.