我如何将输入数据转换为下面的输出数据?对于每个Grp1
,我希望指标列变成行,每个值Grp2
都有一列.谢谢
输入数据数据
structure(list(Grp1 = c("A", "A", "B", "B"), Grp2 = c("test",
"ctrl", "test", "ctrl"), metric1 = c(10L, 50L, 40L, 30L), metric2 = c(10L,
20L, 45L, 40L), metric3 = c(15L, 20L, 30L, 40L), metric4 = 1:4), class = "data.frame", row.names = c(NA,
-4L))
期望输出
structure(list(Grp1 = c("A", "A", "A", "A", "B", "B", "B", "B"
), metric = c("metric1", "metric2", "metric3", "metric4", "metric1",
"metric2", "metric3", "metric4"), test = c(10L, 10L, 15L, 1L,
40L, 45L, 30L, 3L), ctrl = c(50L, 20L, 20L, 2L, 30L, 40L, 40L,
4L)), class = "data.frame", row.names = c(NA, -8L))