如何根据组和变量名称转换数据[重复]

问题描述 投票:0回答:1

如何从 R 下面的 data.frame 到另一个 data.frame。我是 dplyr/tidyr 的新手,所以不知道到底要使用哪些函数,但我想可以使用这些包来完成。

NAME    GROUP  X1  X2
A        G1    1    2
A        G2    1    3
A        G3    4    3
B        G1    3    3 
B        G2    2    3
B        G3    5    4
C        G1    4    3
C        G2    4    1 
C        G3    4    3




NAME  X1_G1  X2_G1   X1_G2  X2_G2  X1_G3  X2_G3
A      1       2        1      3     4       3
B      4       3        3      3     2       3   
C      4       3        4      1     4       3

谢谢您的帮助!

r dataframe dplyr data.table tidyr
1个回答
1
投票
library(tidyr) #v1.0.0
pivot_wider(df, names_from = GROUP, values_from = c(X1, X2))

# A tibble: 3 x 7
  NAME  X1_G1 X1_G2 X1_G3 X2_G1 X2_G2 X2_G3
  <chr> <int> <int> <int> <int> <int> <int>
1 A         1     1     4     2     3     3
2 B         3     2     5     3     3     4
3 C         4     4     4     3     1     3

我知道这是一个重复,但这个库已经发布一个月了,这被认为是解决这个问题的新方法。

© www.soinside.com 2019 - 2024. All rights reserved.