итоговая матрица по комбинации ID по r - PullRequest
0 голосов
/ 08 ноября 2018

У меня есть df (тест), подобный этому

enter image description here

Теперь, если вы посмотрите на данные, комбинация от 6 до 10 доступна во второмпериод, но не в первом периоде.Следовательно, когда я использую этот код

a_summary <- test %>%
  group_by(from, to) %>%
  summarize(avg = mean(share, na.rm = T)) %>%
  ungroup() %>%
  spread(from, avg, fill = 0)

Выходные данные выглядят так: enter image description here

Теперь посмотрите на ячейки от 10 до 6.это дает значение 1, потому что комбинация от 10 до 6 существует только один раз.Но когда я делаю среднее значение, я хотел бы рассмотреть все комбинации в каждом периоде.следовательно, ожидаемый результат от 10 до 6 ячеек равен .5, а сумма столбцов и строк в матрице должна составлять 1.

1 Ответ

0 голосов
/ 08 ноября 2018
a_summary <- test %>%
group_by(from, to) %>%
summarize(count = sum(n, na.rm = T)) %>%
ungroup() %>%
spread(from, count, fill = 0)

Это даст вам счет всех комбинаций.Теперь вы можете нормализовать эту матрицу с делением на sum(test$n) или использовать prop.table()

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