【发布时间】:2016-11-11 23:29:44
【问题描述】:
我希望在现有的 x by y by z 矩阵上附加一个行向量(以及后来的列向量) .所以基本上“为原始 3d 矩阵中的每个 z 添加一个新行(在“底部”)。考虑以下简短的 Matlab 程序
appendVector = [1 2 3 4 5]; % Small matrix for brevity. Actual matrices used are much larger.
origMatrix = ones(5,5,3);
appendMatrix = [origMatrix( ... ); appendVector];
我的问题是:我如何寻址(使用 Matlab 风格的矩阵寻址,而不是“手动”类 C 循环) origMatrix( ... ) 以附加上面的向量?还可以随意提供有关如何对列向量执行相同操作的建议(我认为执行后者的正确方法是简单地使用 Matlab 中的 '-operator)。
【问题讨论】:
-
您打算如何将 5 元素向量附加到 3D 矩阵。您需要一个
1 x 5 x 3数组,因为您需要填充第三个维度。 -
@Suever 我认为这是最终解决方案的一部分。有没有办法只使用一个向量(通过让 Matlab 处理额外的维度)来执行这个操作,还是我必须在追加之前“准备”附加的向量而不是一个 3d 数组(根据你上面的建议)?
标签: matlab matrix vector append