小编Ope*_*son的帖子

如何在没有for循环的情况下表达大量的计算?

我主要在MATLAB工作,但我认为答案不应该太难以从一种语言延伸到另一种语言.

我有一个多维阵列X,其尺寸[n, p, 3].我想计算下面的多维数组.

T = zeros(p, p, p)
for i = 1:p
for j = 1:p
for k = 1:p
T(i, j, k) = sum(X(:, i, 1) .* X(:, j, 2) .* X(:, k, 3));
end
end
end
Run Code Online (Sandbox Code Playgroud)

总和是长度n矢量的元素.任何帮助表示赞赏!

matlab vectorization multidimensional-array matrix-multiplication

4
推荐指数
2
解决办法
142
查看次数