我试图从矩阵中复制一些元素,但不是整行,而不是单个元素.
例如,在以下矩阵中:
a = 1 2
3 4
5 6
7 8
9 0
Run Code Online (Sandbox Code Playgroud)
我该如何复制以下数据?
b = 1
3
5
Run Code Online (Sandbox Code Playgroud)
即第1列中的行1:3 ...我知道您可以删除整个列,如下所示:
b = a(:,1)
Run Code Online (Sandbox Code Playgroud)
...我很欣赏可以这样做,然后转储最后两行,但我想使用更简化的代码,因为我正在运行一个资源密集型解决方案.
MATLAB中矩阵中的元素按列主顺序存储.这意味着,您甚至可以使用单个索引并说:
b = a(1:3);
Run Code Online (Sandbox Code Playgroud)
由于前3个元素是1,3,5.类似地,a(6)是2,a(7)是4等.查看sub2ind方法以了解更多:
http://www.mathworks.com/help/techdoc/ref/sub2ind.html