首页 > 解决方案 > 将列添加到分组数据框 dplyr

问题描述

我有两个不同的数据框

DF1 = data.frame("A"= c("a","a","b","b","c","c"), "B"= c(1,2,3,4,5,6))
DF2 = data.frame("A"=c("a","b","c"), "C"=c(10,11,12))

我想将列添加CDF1按列分组A
预期的结果是

  A B C
1 a 1 10
2 a 2 10
3 b 3 11
4 b 4 11
5 c 5 12
6 c 6 12

注意:在此示例中,所有组的大小都相同,但不一定是这种情况

标签: rdplyr

解决方案


欢迎来到stackoverflow。正如@KarthikS 评论的那样,您想要的是加入。

'Joining' 是将两个表连接在一起的操作的名称。“分组依据”列主要用于汇总表时:例如,按州分组和总票数将给出每个州的总票数(不先分组的总和将给出总票数)。

dplyr 中连接的语法是:

output = left_join(df1, df2, by = "shared column")

或等效地

output = df1 %>% left_join(df2, by = "shared column")

此处主要参考。

在您的示例中,共享列是"A".


推荐阅读