在dplyr中过滤组,其中仅包含值的特定组合 [英] Filter groups in dplyr that exclusively contain specific combinations of values

查看:88
本文介绍了在dplyr中过滤组,其中仅包含值的特定组合的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

给出一个表:

  id value
1  1     a
2  2     a
3  2     b
4  2     c
5  3     c

我会喜欢过滤:

a)只有a值的id,即id 1。

a) the ids that only have value a, i.e. id 1.

b )包含a和b联合的id,即id 2。

b) the ids that contain a and b jointly, i.e. id 2.

数据:

data.frame(id = c(1,2,2,2,3), value = c("a", "a", "b", "c", "c"))


推荐答案

尝试

a)

df %>% group_by(id) %>% filter(all(value == "a"))

b)

df %>% group_by(id) %>% filter(all(c("a", "b") %in% value))

这篇关于在dplyr中过滤组,其中仅包含值的特定组合的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆