按id创建列行组合

时间:2017-05-05 17:39:03

标签: r reshape2 tidyr

我有一个长格式数据框,格式如下:

data.frame(id = rep(1:3, each = 3), category = rep(c("a","b","c"),3),
                      qtr_1 = rpois(9,1),qtr_2 = rpois(9,1),
                      qtr_3 = rpois(9,1),qtr_4 = rpois(9,1))


id category qtr_1 qtr_2 qtr_3 qtr_4
 1    a       2     0    0      1
 1    b       2     1    2      1
 1    c       3     2    0      0
 2    a       1     0    1      0 
 2    b       1     3    1      0 
 3    c       1     0    1      1 

我正在尝试将类别和“qtr_#”列组合在一起,以便我有一个数据框,每个类别(类别+ qtr)有4列,每个id有一行。列的所需最终结果如下所示:

id qtr_1.a qtr_2.a qtr_3.a qtr_4.a qtr_1.b qtr_2.b qtr_3.b qtr_4.b ....

我确定tidyr或reshape2的组合有一种方法,但我正在努力解决这个问题。

0 个答案:

没有答案