我有一个3D矩阵a
和一个向量a1
。 a1
的大小每次迭代都会发生变化。现在我想将此向量输入到第二列和第三列定义的某个位置。像这样的东西,
a(:,3,4)=a1;
但它得到错误"Assignment has more non-singleton rhs dimensions than non-singleton
subscripts"
。我怎么解决呢?
答案 0 :(得分:0)
如果a1
的大小在每次迭代时发生变化,则需要将a
预先分配到最大大小并使用显式下标进行分配
a = zeros(5,5,5)
a(1:length(a1),3,4)=a1;
或者你可以使用一个单元格数组:
a{3,4} = a1
单元阵列将能够存储不同长度的矢量。