I have the following data
ID INDUSTRY PRODUCT
625109 PersonalCare Neolone Preservatives
199672 PersonalC
This should work:
library(dplyr)
df <- data.frame(ID = c(62, 19, 22, 18, 62, 22),
INDUSTRY = c("PC", "PC", "P", "F", "PC", "F"),
PRODUCT = c("NP", "NP", "O", "SB", "O", "NP"))
df %>%
group_by(ID) %>%
filter(any(PRODUCT %in% c("NP"))& any(PRODUCT %in% c("O")))
# A tibble: 4 x 3
# Groups: ID [2]
ID INDUSTRY PRODUCT
1 62 PC NP
2 22 P O
3 62 PC O
4 22 F NP