我有一个很大的数据框,我想按另一个数据框列进行筛选,但保留分组信息以通知筛选.我想按ID列进行筛选,但使用Year列来通知与其他数据帧的分组.在我当前的示例中,group_by
调用不能跨数据帧工作,因为我只按一列进行过滤.请记住,我希望这是一个更通用的表达式,可以在包含数十万行的数据集上使用,因此显式写出所有可能的Year和ID筛选组合是不实际的.下面是我的例子:
df_filter<-data.frame(year=c(20,20,20,21,21,21),ID=seq(1:6))
df_all<-data.frame(year=c(20,20,20,21,21,21), ID=c(1,2,4,3,5,6))
filtered<-df_all %>%
group_by(year) %>%
filter(ID %in% df_filter$ID)
> filtered
year ID
1 20 1
2 20 2
3 20 4
4 21 3
5 21 5
6 21 6
***desired result***
year ID
1 20 1
2 20 2
3 21 5
4 21 6
谢谢!