我的数据框df
如下:
df$x1 df$x2 df$x3 df$x4 df$x5 df$x6
Acti Acti Arthrex Arthrex Aflac Aflac
4 5 3 1 2 5
1 3 5 2 1 4
我希望在第一行中按文本拆分数据框,然后垂直合并。我想要的输出如下:
df$x1 df$x2
Acti Acti
4 5
1 3
Arthrex Arthrex
3 1
5 2
Aflac Aflac
2 5
1 4
非常感谢你的帮助。
答案 0 :(得分:2)
这是使用dplyr的解决方案(假设您的数据名为df):
library(dplyr)
t(df) %>% # transpose the data so that the first row is now the first col
as_data_frame() %>% # convert back to data.frame from matrix
group_by(V1) %>% # group the data by the first column
do(as_data_frame(t(.))) # transpose each group back to the correct orientation
dplyr::do
允许您对每个组执行任意操作,然后行将结果重新绑定到data.frame中。