r - 将不同的输出组合成 1 行

r - Combine the distinct output in 1 row

下面的代码让我可以查看每天访问的电子学习模块。

activity_per_day_which_modules <- ddply(activity, ~Date, distinct, `Which module(s)` = Module)

输出结果如下:

Date Module
22-10-2021 Food chemistry
22-10-2021 Food Physics

如何告诉 R 将行合并为一个?

Date Module
22-10-2021 Food chemistry, Food physics
23-10-2021 Food chemistry

您只需使用 paste 即可:

library(dplyr)

df %>%
  group_by(Date) %>%
  summarize(Module = paste(Module, collapse = ", "))

注意:如果您的真实数据有更多列,您可能希望求助于 mutate 而不是 summarize,如果您确实这样做,请确保之后执行 %>% distinct()[=15] =]