答案 0 :(得分:1)
这可以使用group by operations来完成。我们按公共列和paste
对感兴趣的列中的元素进行分组。在示例中,它是“X”。可以使用data.table
,dplyr
,aggregate
(来自基地R)等进行汇总分组。
使用data.table
,我们将'data.frame'转换为'data.table'(setDT(df1)
),按多列分组(此处我使用names
指定多列) ,和paste
“X”列元素。
library(data.table)
setDT(df1)[, list(X= toString(X)), c(names(df1)[c(1:7,9)])]
或使用与dplyr
相同的方法。
library(dplyr)
df1 %>%
group_by_(.dots= names(df1)[c(1:7,9)]) %>%
summarise(X= toString(X))