我有一个包含三列的数据框,其中包含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