Перекрестный анализ в R. Уменьшите фрейм данных до суммы комбинаций по объектам. - PullRequest
0 голосов
/ 28 октября 2019

Приветствуются предложения с более точными формулировками.

Я пытаюсь провести некоторый анализ совпадений / перекрестного анализа некоторых данных. Предположим, у меня есть фрейм данных следующего формата:

bla <- data.frame(
  a = c(1,1,1,0,0,1,1,1,0,0),
  b = c(0,0,0,1,1,0,0,1,1,0),
  c = c(1,0,1,0,1,0,1,0,1,0)
)

Для каждой комбинации a, b и c я хотел бы получить сумму наблюдений.

Я пытался поиграться с расширениемgrid:

combinations <- expand.grid(names(bla))

Но это только что вернуло a, b, c, тогда как я надеялся на a, ab, abc, b, bc и т. д. Не знаете, как этого добиться?

Даже тогда, если мне все-таки удалось получить все возможные комбинации заголовков фрейма данных a, b и c, что тогда?

Пример, комбинация a и c верна 3 раза (1-я, 3-я и 7-я строки)поэтому я ищу объект, в котором ac = 3.

Как мне уменьшить bla, чтобы получить количество наблюдений, включая перекрытие по каждой функции?

1 Ответ

1 голос
/ 28 октября 2019

В пакете также есть хорошая функция для этого limma:

vennCounts(bla)

  a b c Counts
1 0 0 0      1
2 0 0 1      0
3 0 1 0      1
4 0 1 1      2
5 1 0 0      2
6 1 0 1      3
7 1 1 0      1
8 1 1 1      0

И вы даже можете представить ее в виде диаграммы Венна:

vennDiagram(bla)

enter image description here

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...