Группировка данных с отсутствующим значением - PullRequest
0 голосов
/ 03 ноября 2019

Мне нужно сравнить вопросы двух разных опросов (t1, t2). Поэтому у меня есть два кадра данных, подобных приведенным ниже:

t1     t2

x       x
x       y
y       z
z       w 
y       z 
x       x
z       y
z       w 
w       x
        z 
        v 

Эти данные должны быть сгруппированы по v, w, x, y и z. К сожалению, значение v не встречается в первом фрейме данных, и оба фрейма имеют разное количество строк, поэтому я не могу собрать их в один фрейм данных. Когда я использую «group_by» и «суммировать», я получаю два столбца, но один с 4 и один с 5 строками. Как и раньше, я не могу собрать их вместе.

Я не хочу добавлять дополнительную строку в первый кадр данных, так как я не хочу манипулировать исходным набором данных.

В конце мне нужен стол, который должен выглядеть следующим образом:

        t1      t2

v       0       1
w       1       2
x       3       3
y       2       2
z       3       3 

Надеюсь, вы мне поможете! Спасибо!

1 Ответ

2 голосов
/ 03 ноября 2019

Один из способов будет:

library(tidyverse)

bind_rows(
  gather(t1),
  gather(t2)
) %>% {table(.$val, .$key)}

Вывод:

    t1 t2
  v  0  1
  w  1  2
  x  3  3
  y  2  2
  z  3  3
...