首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Matlab中丢弃矩阵中不需要的行?

如何在Matlab中丢弃矩阵中不需要的行?
EN

Stack Overflow用户
提问于 2015-06-05 01:33:36
回答 2查看 68关注 0票数 2

我有一个矩阵

代码语言:javascript
复制
A= [1 2 3 4; 5 6 7 8; 9 10 11 12; 13 14 15 16; 17 18 19 20]

我想在这个矩阵上做一些计算。但实际上我并不需要所有的行。因此,在进行计算之前,我必须丢弃上面矩阵中的一些行。在丢弃3行之后,我们将有一个新的矩阵。

代码语言:javascript
复制
B= [1 2 3 4; 9 10 11 12; 17 18 19 20];

现在我必须使用B来做一些其他的计算。那么,如何在matlab中丢弃矩阵中一些不需要的行呢?任何建议都会有帮助。谢谢。

EN

回答 2

Stack Overflow用户

发布于 2015-06-05 01:39:01

试试这个:(在no.要保留的行数较少)

代码语言:javascript
复制
%// 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],:)

输出:

代码语言:javascript
复制
B =

 1     2     3     4
 5     6     7     8
 9    10    11    12
17    18    19    20

替代方案:(在no时使用要丢弃的行数较少)

代码语言:javascript
复制
%// rows 2 and 3 discarded
A([2,3],:) = [];

输出:

代码语言:javascript
复制
>> A

A =

 1     2     3     4
13    14    15    16
17    18    19    20

注意:在这里(在备用方法中),输出将替换原始的A。因此,如果以后需要,您需要备份A。您可以在放弃操作以备份输入矩阵之前执行此

代码语言:javascript
复制
%// Input A is backed up in B
B = A;
票数 3
EN

Stack Overflow用户

发布于 2015-06-05 02:04:03

您可以选择要保留的行的索引:

代码语言:javascript
复制
A([1,3,5],:)

ans =

     1     2     3     4
     9    10    11    12
    17    18    19    20
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30650484

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档