【发布时间】:2017-03-11 13:00:58
【问题描述】:
我有一个组和名称列表,如下面的 DF 所示。我希望按字母顺序排列此列表,并用逗号分隔每个名称,如下面的 DF2 所示。我以为这很简单,但事实证明它比预期的更具挑战性!
DF <- tibble::data_frame(
Group = c(1, 1, 1, 2, 2, 3, 3, 3),
Name = c("A", "B", "C", "B", "A", "B", "C", "A"))
DF2 <- tibble::data_frame(
Group = c(1, 2, 3),
Name = c("A, B, C", "A, B", "A, B, C"))
如果有任何帮助来解决这个问题,以解决每个组中列出的未知数量的名称,无论是否有 dplyr 管道,我都将不胜感激。
谢谢!
【问题讨论】:
-
DF %>% group_by(Group) %>% summarize(Comb = paste(Name[order(Name)], collapse = ","))怎么样? -
@Abdou 或
DF %>% arrange(Name) %>% group_by(Group) %>% summarize(Comb = toString(Name)) -
@Frank 哦,太好了!
标签: r dataframe dplyr tidyr stringr