r - 在多个条件下使用 dplyr filter() 进行过滤

标签 r dplyr

我有一个包含两个变量的唯一值的数据框:

df <- data.frame(V1=LETTERS,V2=c(1:26))

我想为 df$V1 中的值和 df$V2 中的相应值过滤另一个数据帧。这是我尝试过的,但显然没有产生预期的结果:

df2 <- data.frame(V1=c('A','A','B','B','A'),
                    V2=c(1,2,2,3,4))
df2 %>% filter(V1 %in% unique(df$V1) & V2 %in% unique(df$V2))

我期望的后过滤结果是:

  V1 V2
1  A  1
2  B  2

我如何实现这一目标?

最佳答案

merge(df,df2)
  V1 V2
1  A  1
2  B  2

library(tidyverse)
inner_join(df,df2)
  V1 V2
1  A  1
2  B  2

关于r - 在多个条件下使用 dplyr filter() 进行过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51187131/

相关文章:

r - 如何将不同长度的时间序列围绕 ggplot 图形中的特定点居中

r - 如何让分位数与 summarise_at 和 group_by (dplyr) 一起使用

r - 使用dplyr的select引用变量名的位置

database - 列存储 : Comparing Column Based Databases

r - 在汇总的 tibble 中保留 chisq.test 的多个值

r - 基于具有很多条件的多列进行汇总

r - dplyr::filter() 的意外行为

r - R中非列表类的继承?

r - 从另一个 R 文件执行一组行

r - tidyr 宽到长 : repeated measures and efficiency