从数据框中删除与列表中的值匹配的行> 我的帐户清单如下:
ANrule4 <-
Group_Account
2911
2944
2949
1415
1695
1761
1912
2570
但是我想删除以下列表中列出的任何帐户:
2911
2946
2945
2944
2949
我正在使用以下代码:
ANrules4ex <- ANrule4%>%
filter(!(Group_Account==2946 | Group_Account==2945 | Group_Account==2944 | Group_Account==2942 | Group_Account==2941 | Group_Account==2912 | Group_Account==2911 | Group_Account==2910 ))
这工作正常,但实际上我的列表很长而且很动态,我想将排除列表存储在一个列表中,并希望合并这两个列表,使所有帐户都列在排除列表中,但不确定如何做到这一点。有人可以帮助我
答案 0 :(得分:1)
尝试一下:
df
是您的data.frame
,data
是您要比较的向量。
df[!(df$Group_Account %in% data),]
答案 1 :(得分:0)
您可以使用anti_join
软件包中的dplyr
。
ANrule4 <-
data.frame(Group_Account = c(2911, 2944, 2949, 1415, 1695, 1761, 1912, 2570))
listremove <-
data.frame(Group_Account = c(2911, 2946, 2945, 2944, 2949))
ANrule4 %>% anti_join(listremove, by = "Group_Account")
Group_Account
1 1415
2 1695
3 1761
4 1912
5 2570