首页 > 解决方案 > 如何使用两个现有数据框创建新数据框?

问题描述

我有2个数据框:

stats_20 = data.frame(name = c('Abby', 'Ben', 'Casey'), goals = c(4, 6, 3), assists = c(3, 2, 5))
stats_21 = data.frame(name = c('Abby', 'Ben', 'David'), goals = c(3, 3, 8), assists = c(2, 5, 4))

我想将两者组合成一个“总”数据框,类似于:

total_stats
   name      goals     assists
1  Abby          7           5
2  Ben           9           7
3  David         8           4

我不在乎 stat_21 中没有出现的名字(例如,Casey)。

标签: r

解决方案


如果要聚合两者,请使用 dplyr 并执行以下操作:

rbind( stats_20, stats_21 ) %>% group_by( names ) %>% summarize( gl = sum(goals) , ass=sum(assists) )

如果您需要首先删除 stats_21 中不在 stats_20 中的任何内容,dplyr::outer_join请查看如何标记要删除的记录。


推荐阅读