Мы можем выбрать группы, где all
значения: "x"
или "y"
.
В базе R мы можем использовать ave
с subset
unique(subset(df, ave(B %in% c('x', 'y'), A, FUN = all), select = A))
# A
#1 a
#8 d
или с dplyr
:
library(dplyr)
df %>%
group_by(A) %>%
filter(all(B %in% c('x', 'y'))) %>%
distinct(A)
данные
df <- data.frame(A = c('a', 'a', 'a', 'b', 'b', 'c', 'c', 'd', 'd'),
B = c('x', 'x', 'y', 'z', 'z', 'x', 'z', 'x', 'x'))