Скажем, у меня есть три списка,Как найти пересечение списков списков в R?
> a
[[1]]
begin end
3 5
9 10
11 14
[[2]]
begin end
3 7
14 18
19 24
[[3]]
begin end
6 9
14 22
18 30
То, что я пытаюсь найти это пересечение всех «начинаются» колонки, так что в этом случае желаемый результат будет что-то вроде
"3" "14"
Я знаю решение, предлагаемое по адресу How to find common elements from multiple vectors?; однако это решение предполагает, что количество списков статично. Если количество списков, которые у меня есть, должно измениться (скажем, до 5 списков, каждый с похожим столбчатым макетом), как бы я нашел пересечение?
'a [[1]]' не имеет 14 в 'begin'. Должен ли код учитывать как «начало», так и «конец»? – nico
Хороший вопрос. Ответ - нет, так как я хочу ЛЮБОЕ пересечение. Поэтому, если хотя бы два списка используют один и тот же элемент в начале, это должно быть найдено. – rdevn00b
Проблема с использованием rbind здесь в том, что мне нужно держать списки раздельными. После этого шага в программе мне нужно определить частоту элементов в каждом списке по отношению к тем, которые находятся в пересекаемом множестве. так, например, если столбец начала [[3]] содержит 3,3,7, тогда программа покажет, что частота 3 в списке 1 равна 1, 3 в списке 2 равна 1, а 3 в списке 3 - 2. – rdevn00b