繁体   English   中英

Matlab,在3D矩阵中插入向量的值

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM