我想知道是否有一种简单的方法在MATLAB中执行以下操作:我想复制矩阵的行或列并将其插入下一行/列。复制矩阵的行或列,并将其插入到下一行/列
例如:给定一个3x3矩阵
1 2 3
4 5 6
7 8 9
我想将它复制的第一行,并插入作为第二行:
1 2 3
1 2 3
4 5 6
7 8 9
能有人建议我怎么能做到这一点在MATLAB中?谢谢!
我想知道是否有一种简单的方法在MATLAB中执行以下操作:我想复制矩阵的行或列并将其插入下一行/列。复制矩阵的行或列,并将其插入到下一行/列
例如:给定一个3x3矩阵
1 2 3
4 5 6
7 8 9
我想将它复制的第一行,并插入作为第二行:
1 2 3
1 2 3
4 5 6
7 8 9
能有人建议我怎么能做到这一点在MATLAB中?谢谢!
你可以简单地重复行的索引你想重复
A = A([1 1 2 3],:)
A = [A(1,:); A];
不够通用。 OP给出的例子是使用第一行,但他的问题不是。对于任何选择和插入行来说,trutheality具有唯一的通用方法。 – 2014-03-07 16:53:58
要插入的行数source
的行数target
:
A = [A(1:target-1,:); A(source,:); A(target:end,:)];
我知道这是一个非常古老的话题,但是当我在寻找时,这篇文章就出现在我为同样的问题所做的搜索中特殊的Matlab函数我不记得 - padarray的名字。
所以,你可以这样做:
A = [1 2 3; 4 5 6; 7 8 9]; A = padarray(A,[1 0],'replicate','pre');
例如,如果A是没有明确保存的函数的输出,那么这通常很有用,因此您不知道第一行是什么。无论如何,希望这可以帮助别人!
幸运的是,它是我们正在讨论的matlab,而matlab可以做所有事情:-) – 2016-01-18 10:50:41