标签: r
如果我有一个矩阵A(5000乘6000),这意味着它有n行和m列,a_ij就是元素。我想计算sum (k=1..m, l=1..m) (a[i,l]*a[j,k])(即this formula),即5000乘5000。计算这样一个公式的有效方法是什么?
a_ij
sum (k=1..m, l=1..m) (a[i,l]*a[j,k])
提前致谢。
答案 0 :(得分:4)
您可以简化表达式,以便产品的双倍总和成为两个行i和j的乘积。所以你的输出矩阵基本上是rowums的kronecker产品:
i
j
x <- rowSums(a) x %o% x