我有一个矩阵
A= [1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16; 17 18 19 20]我想在这个矩阵上做一些计算。但实际上我并不需要所有的行。因此,在进行计算之前,我必须丢弃上面矩阵中的一些行。在丢弃3行之后,我们将有一个新的矩阵。
B= [1 2 3 4; 9 10 11 12; 17 18 19 20];现在我必须使用B来做一些其他的计算。那么,如何在matlab中丢弃矩阵中一些不需要的行呢?任何建议都会有帮助。谢谢。
发布于 2015-06-05 01:39:01
试试这个:(在no.要保留的行数较少)
%// Input A
A = [1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16; 17 18 19 20];
%// Rows (1-3,5) you wanted to keep
B = A([1:3, 5],:)输出:
B =
1 2 3 4
5 6 7 8
9 10 11 12
17 18 19 20替代方案:(在no时使用要丢弃的行数较少)
%// rows 2 and 3 discarded
A([2,3],:) = [];输出:
>> A
A =
1 2 3 4
13 14 15 16
17 18 19 20注意:在这里(在备用方法中),输出将替换原始的A。因此,如果以后需要,您需要备份A。您可以在放弃操作以备份输入矩阵之前执行此
%// Input A is backed up in B
B = A;发布于 2015-06-05 02:04:03
您可以选择要保留的行的索引:
A([1,3,5],:)
ans =
1 2 3 4
9 10 11 12
17 18 19 20https://stackoverflow.com/questions/30650484
复制相似问题