将数据帧列名转换为新变量的单元格值



我有下面的数据帧

d<-structure(list(WaterYear = c(2014, 2015), Discharge = c(1783.939638, 
1970.891674), EnvWater = c(6, 1)), row.names = c(NA, -2L), class = c("tbl_df", 
"tbl", "data.frame"))

我想用一种有3列的方式来转换它。原样的WaterYear、将包括DischargeEnvWaterCategory以及具有相对值的Value。通常我想将它应用于2列以上。

我们可以使用pivot_longer将其重塑为"long"以创建所需的数据

library(tidyr)
pivot_longer(d, cols = -WaterYear, names_to = 'Category', values_to = 'Value')

最新更新