如何在一个坐标上对MATLAB中的4D矩阵求和?

时间:2014-07-01 21:18:15

标签: matlab

我不知道发生了什么事,但我找不到办法。这似乎很容易。

我有一个4D矩阵A=rand(4, 3, 3, 3),我想在第3个坐标上对这些矩阵求和。

A = rand(4, 3, 3, 3);

S1 = A(:,:,1,1)+A(:,:,1,2)+A(:,:,1,3);

S2 = A(:,:,2,1)+A(:,:,2,2)+A(:,:,2,3);

S3 = A(:,:,3,1)+A(:,:,3,2)+A(:,:,3,3);

一般如何做到这一点?

1 个答案:

答案 0 :(得分:4)

要沿着第n个维度求和,你可以使用sum这样的第二个参数:

s = sum(A,n);

因此在你的情况下,要沿着第三个维度求和:

s = sum(A,3);