x,y,z是三个向量。
如果我在matlab中运行三个for循环并在每次迭代A(i,j,k) = [x(i) y(j) z(k)]
时存储,那么我将获得一个数组。
创建此阵列的最有效方法是什么?
答案 0 :(得分:1)
您在问题中使用的符号(A(i,j,k) = [x(i) y(j) z(k)]
)有一个错误。它创建一个3D矩阵A并试图为它的(i,j,k)元素赋值,只有你分配3个值(x(i),y(j),z(k))。
所以,如果我理解正确,你的意思是:
A = [x(:) , y(:), z(:)] ;
这将给出大小为3xn的数组。除非你真的打算使用3d矩阵,否则请查看ndgrid
\ meshgrid
选项。