在 MATLAB 中按值拆分矩阵
我想知道是否有一个 MATLAB 解决方案可以将矩阵拆分为子矩阵,如下所示:
矩阵是:
A =
16 2 3
5 11 10
9 7 6
4 14 15
5 1 3
我想将从 5 开始的行转移到另一个矩阵,以 16 开始的行转移到另一个矩阵,等等。
是否有一个函数可以实现这一点,或者我应该使用 if/for 方法?
I wonder if there is a MATLAB solution to split a matrix into sub matrices like the following:
The matrix is:
A =
16 2 3
5 11 10
9 7 6
4 14 15
5 1 3
I would like to take the rows that are starting with 5 to another matrix, those that start with 16 to another, etc..
Is there a function for this or should I go with if/for approach?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
这是一种使用函数 SORTROWS、独特,ACCUMARRAY 和 MAT2CELL 创建一个元胞数组,每个元胞存储一组第一列中具有相同值的行:
Here's one solution that uses the functions SORTROWS, UNIQUE, ACCUMARRAY, and MAT2CELL to create a cell array with each cell storing a set of rows with the same value in the first column:
我想我找到了 = )
现在
M{n}
是以n
开头的所有行的矩阵。 =)I think I found it = )
Now
M{n}
is the matrix of all rows that start withn
. = )