使用dplyr转换数据帧组

时间:2017-06-23 15:23:59

标签: r dplyr

我有一个包含三列的数据框,其中包含id,功能名称和值。对于id,我在不同的行中有不同的功能。例如:

df1  <– data.frame(id = c("A","A","A","B","B","B"), name = c("f1","f2","f3","f1","f2","f3"),value = c(1.1, 2.1, 3.1, 1.2,2.2, 3.2)))

#>   id    feature value
#> 1  A     f1      1.1
#> 2  A     f2      2.1
#> 3  A     f3      3.1
#> 4  B     f1      1.2
#> 5  B     f2      2.2
#> 6  B     f3      3.2

我想重新排列数据并收集一行中一个id的所有观察(特征)。我希望我的结果看起来像这样:

#>   id  f1  f2  f3
#> 1  A 1.1 2.1 3.1
#> 2  B 1.2 2.2 3.2

如果数据帧只包含一个id,则可以使用

转置数据帧
df2 <-  t(df1)
df2 <- data.frame(df2) 
colnames(df2) <- df1$feature

问题:如何使用dplyr转换数据组以获得所需的数据格式?任何帮助表示赞赏! THX

0 个答案:

没有答案