2

我想使用存储在另一个数组中的 z 坐标从 3D 矩阵中的元素创建一个数组。最简单的方法是:

X=2;
Y=3;
lastZ=10000000
for i=1:lastZ
    new_array=matrix(X,Y,Z(i));
end

但我正在寻找一种仅使用矩阵而不是for-loop的“矢量化”方式。我尝试了以下代码,但收到错误消息“下标索引必须是真正的正整数或逻辑”:

new_array=matrix(X,Y,Z);

我知道 Z 是一个数组,不能与整数 X 和 Y 放在一起。有没有更好的方法在单行代码中创建这样的数组?

4

1 回答 1

3

你可以试试:

new_array=squeeze(matrix(X,Y,1:Z));
于 2012-07-12T16:24:13.430 回答