如何按列转置数据帧并如何按R

时间:2018-09-27 06:12:17

标签: r

我有一个这样的数据集:

规则|产生
A | 1
B | 1
C | 1
D | 2

我想要这个输出:

1 | 2
A | D
B |
C |

这一次,我尝试了传播,聚合以及许多功能,但仍然没有达到预期的效果。我想按“ GENERATION”分组,并将其类别设为新数据集的列名,其中每个列的值与第一个数据集的顺序相同。

谢谢。

1 个答案:

答案 0 :(得分:1)

像这样吗?

library(tidyverse)
 df<-data.frame(x=c(letters[1:4]),y=c(1,1,1,2))

 df%>%
   group_by(y)%>%
   mutate(num=row_number())%>%
   spread(y,x)%>%
   select(-num)
# A tibble: 3 x 2
  `1`   `2`  
  <fct> <fct>
1 a     d    
2 b     NA   
3 c     NA