Мы можем сгруппировать по 'RID' и проверить, есть ли all
из 1, 3 %in%
Столбец
library(dplyr)
df %>%
group_by(RID) %>%
filter(all(c(1, 3) %in% A))
# A tibble: 3 x 3
# Groups: RID [1]
# date RID A
# <int> <fct> <dbl>
#1 1 Amy 1
#2 2 Amy 3
#3 3 Amy 1
data
df <- structure(list(date = c(1L, 2L, 3L, 1L, 2L, 3L), RID = structure(c(1L,
1L, 1L, 2L, 2L, 2L), .Label = c("Amy", "Bob"), class = "factor"),
A = c(1, 3, 1, NA, 1, 1)), class = "data.frame", row.names = c(NA,
-6L))