У меня есть три data.frame
с, каждый со столбцом с именем col
.Я хочу отфильтровать все строки DataFrame1
, значения которых col
, например, a
, b
, c
и d
отображаются в DataFrame2
.Для этого я использую
subset(DataFrame1, !(col %in% DataFrame2$col))
DataFrame3
содержит списки значений, например a;b;c
, c;d;a
в col
.Также в этом случае я хочу фильтровать DataFrame1 в соответствии с вхождениями a
, b
, c
и d
в DataFrame3
.
Как расширить списки значений до того, как ясделать сопоставление?
Данные примерно:
DataFrame1 DataFrame2 DataFrame3
col data col data col data
a 1 a 6 a;b;c 8
b 2 b 7 c;d;b 9
c 3
d 4
e 5
После фильтрации с DataFrame2
У меня осталось DataFrame1
col data
c 3
d 4
e 5
После фильтрации с DataFrame3
Ожидаю только в DataFrame1
col data
e 5
Данные:
DataFrame1 <- data.frame(col = letters[1:5], data = 1:5)
DataFrame2 <- data.frame(col = letters[1:2], data = 6:7)
DataFrame3 <- data.frame(col = c("a;b;c", "c;d;b"), col = 8:9)