R 如何基于第二个df从一个df中删除值
如何基于dataset1中的值从DataSet2中删除重复值 我的数据集1:R 如何基于第二个df从一个df中删除值,r,dplyr,R,Dplyr,如何基于dataset1中的值从DataSet2中删除重复值 我的数据集1: number 2345 2234 1111 我的数据集2: number name 2345 kk 2121 ll 1111 ms 9999 rr 我已经尝试过这段代码,但是我仍然可以从dataset1中找到一些应该从dataset2中删除的值 filter(df2, df2$number %in% df1$number = TRUE) 这样行吗 > df n
number
2345
2234
1111
我的数据集2:
number name
2345 kk
2121 ll
1111 ms
9999 rr
我已经尝试过这段代码,但是我仍然可以从dataset1中找到一些应该从dataset2中删除的值
filter(df2, df2$number %in% df1$number = TRUE)
这样行吗
> df
number
1 2345
2 2234
3 1111
> df1
number name
1 2345 kk
2 2121 ll
3 1111 ms
4 9999 rr
> df1[!(df1$number %in% df$number),]
number name
2 2121 ll
4 9999 rr
>
像这样的
> subset(df2, ! number %in% df1$number)
number name
2 2121 ll
4 9999 rr
数据
> dput(df1)
structure(list(number = c(2345, 2234, 1111)), class = "data.frame", row.names = c(NA,
-3L))
> dput(df2)
structure(list(number = c(2345, 2121, 1111, 9999), name = c("kk",
"ll", "ms", "rr")), class = "data.frame", row.names = c(NA, -4L
))
anti_join(df2,df1)
或过滤器(df2,!number%在%df1$number中)
。(要删除重复项,所以我们需要!
,而绝对不是==TRUE
。是的,类似于df2[!df2$number%在%df1$number中,]