首页 > 解决方案 > 在 dplyr 中的 group_by 之后过滤组内的行

问题描述

我有一个如下所示的数据框。一些主题/变量组没有D1visit. 我需要做的是过滤这些行。换句话说,我只需要提取那些包含D1visit. 如果有人可以提供帮助,请不胜感激。

dt = expand.grid(subject=1:3,
                 variable = c('A', 'B', 'C'),
                 visit = c('D1', 'D2', 'D3'))
dt <- dt %>% filter(!(variable=='C'&visit=='D1'))

dt %>% 
    group_by(subject, variable) %>% 
    arrange(subject, variable) %>%
    ?????

标签: rdplyr

解决方案


我们可以用%in%

dt %>% 
   group_by(subject, variable) %>% 
   filter('D1' %in% visit)

推荐阅读