У меня есть фрейм данных, который показывает принадлежность к трем цветовым классам. Числа относятся к уникальным идентификаторам. Один идентификатор может быть частью одной или нескольких групп.
dat <- data.frame(BLUE = c(1, 2, 3, 4, 6, NA),
RED = c(2, 3, 6, 7, 9, 13),
GREEN = c(4, 6, 8, 9, 10, 11))
или для наглядности:
BLUE RED GREEN
1 2 4
2 3 6
3 6 8
4 7 9
6 9 10
NA 13 11
Мне нужно определить и подсчитать индивидуальное и кросс-групповое членство (т. е. сколько идентификаторов было только красным, сколько было и красным, и синим и т. д.). Мой желаемый результат приведен ниже. Обратите внимание, что столбец идентификаторов предназначен просто для справки, этот столбец не будет отображаться в ожидаемом выводе.
COLOR TOTAL IDs (reference only, not needed in final output)
RED 2 (7, 13)
BLUE 1 (1)
GREEN 3 (8, 10, 11)
RED, BLUE 3 (2, 3, 6)
RED, GREEN 2 (6, 9)
BLUE, GREEN 2 (4, 6)
RED, BLUE, GREEN 1 (6)
Кто-нибудь знает эффективный способ сделать это в R? Спасибо!
RED, BLUE, GREEN
, а также все 3 попарные группы? Я интерпретировал это как то, что вы хотите, чтобы каждый идентификатор учитывался только один раз (это его максимальная группа). - person ClancyStats   schedule 26.09.2019