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

Теперь, если вы посмотрите на данные, комбинация от 6 до 10 доступна во второмпериод, но не в первом периоде.Следовательно, когда я использую этот код
a_summary <- test %>%
group_by(from, to) %>%
summarize(avg = mean(share, na.rm = T)) %>%
ungroup() %>%
spread(from, avg, fill = 0)
Выходные данные выглядят так: 
Теперь посмотрите на ячейки от 10 до 6.это дает значение 1, потому что комбинация от 10 до 6 существует только один раз.Но когда я делаю среднее значение, я хотел бы рассмотреть все комбинации в каждом периоде.следовательно, ожидаемый результат от 10 до 6 ячеек равен .5, а сумма столбцов и строк в матрице должна составлять 1.