[英]Matlab, inserting the value of a vector in 3d matrix
我有一个3D矩阵a
和一个向量a1
。 a1
的大小在每次迭代中都会更改。 现在,我想将此向量输入到定义了第二列和第三列的某个位置。 像这样
a(:,3,4)=a1;
但却收到错误消息: "Assignment has more non-singleton rhs dimensions than non-singleton subscripts"
。 我该如何解决?
如果a1
的大小在每次迭代中都发生变化,则需要将a
预先分配为最大大小,并使用显式下标进行分配
a = zeros(5,5,5)
a(1:length(a1),3,4)=a1;
另外,您可以使用一个细胞阵列:
a{3,4} = a1
单元阵列将能够存储不同长度的向量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.