Вот вариант с dplyr
, где мы группируем по 'group', а затем filter
, чтобы сохранить количество различных элементов 'set', равным 2
library(dplyr)
df1 %>%
group_by(group) %>%
filter(n_distinct(set) == 2)
# A tibble: 4 x 2
# set group
# <chr> <int>
#1 A 10
#2 B 10
#3 A 34
#4 B 34
data
df1 <- structure(list(set = c("A", "B", "A", "A", "A", "B", "B"),
group = c(10L,
10L, 11L, 11L, 34L, 34L, 67L)), class = "data.frame", row.names = c(NA,
-7L))