Matlab - 矢量化数组的某些维度?

时间:2015-07-29 20:02:02

标签: arrays matlab vectorization

我尝试对'循环'进行矢量化'对于数组但它对我不起作用。 我的回复'是

for k = 1:N
R(n,n,k) = R(n,n,k) - SE3(k,k);
end

并将其矢量化

diagSE3 = diag(SE3);
R(n,n,1:N) = R(n,n,1:N) - diagSE3(1:N);

1 个答案:

答案 0 :(得分:0)

使用

R(n,n,1:N) = R(n,n,1:N) - diagSE3(1:N)

你试图从尺寸为1 x 1 x N的三维数组中减去一个向量(N x 1)。这可以使用squeeze修复:

R(n,n,1:N) = squeeze(R(n,n,1:N)) - diagSE3(1:N)
相关问题