当向量来自已过滤的数据帧时,过滤器(x%在%vector中)

当向量来自已过滤的数据帧时,过滤器(x%在%vector中),r,filtering,R,Filtering,是的,我使用dplyr和base。我理解data.table很好,但目前,我想停留在我所知道的领域,如果可以管理,请不要提供base或tidyverse之外的解决方案 基本上,我想找到一种更有效的方法来过滤一些数据帧,而不需要创建这么多对象 下面是我一直在做的事情,我只想在同一个链/对象中做以下事情。理想情况下,该解决方案将允许我随后使用其他dplyr函数继续该链 DF1<-Booked%>% filter(Type=="A") DF2<-Billed%>%

是的,我使用dplyr和base。我理解data.table很好,但目前,我想停留在我所知道的领域,如果可以管理,请不要提供base或tidyverse之外的解决方案

基本上,我想找到一种更有效的方法来过滤一些数据帧,而不需要创建这么多对象

下面是我一直在做的事情,我只想在同一个链/对象中做以下事情。理想情况下,该解决方案将允许我随后使用其他dplyr函数继续该链

DF1<-Booked%>%
     filter(Type=="A")

DF2<-Billed%>%
     filter(Material_Number %in% DF1$Material_Number)

DF1%
过滤器(类型=“A”)
DF2%
过滤器(%DF1$物料编号中的物料编号%
我相信还有更直接的方法。原谅我,我是个新手。谢谢你的帮助

请阅读并发布示例数据和预期输出,但您可能需要以下内容:

library(dplyr)

Billed %>%
  inner_join(filter(Booked, Type == "A"), by = "Material_Number")
或:


也许两者兼而有之:

DF2 <- Billed%>%
   filter(Material_Number %in% Booked[Booked$Type=="A",]$Material_Number)
DF2%
过滤器(已预订百分比中的物料编号%[已预订的$Type==“A”,]$物料编号)

DF2%
过滤器(已预订百分比中的物料编号%[Booked$Type==“A”,“物料编号”])

如果有紧急情况,则更容易提供帮助。否则我们只是猜测你具体在做什么
DF2 <- Billed%>%
   filter(Material_Number %in% Booked[Booked$Type=="A",]$Material_Number)
DF2 <- Billed%>%
   filter(Material_Number %in% Booked[Booked$Type=="A","Material_Number"])