按ID汇总汇总矩阵,按r汇总

时间:2018-11-08 12:35:08

标签: r matrix

我有这样的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个单元格。因为只有10到6种组合存在一次,所以它的值为1。但是,当我计算平均值时,我想考虑每个时期的所有组合。因此,该10到6个单元格的预期结果为.5,总矩阵列和行总和应为1。

1 个答案:

答案 0 :(得分:0)

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()

来归一化该矩阵。