我主要在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