matlab 矩阵合并问题想把多个矩阵按第一列值的大小合并成一个矩阵,有什么简便的方法吗?例如 [1,10;3,25;5,30] 和[2,100;4,125] 合并成[1,10;2,100;3,25;4,125;5,30].
来源:学生作业帮助网 编辑:作业帮 时间:2024/09/02 17:53:48
matlab 矩阵合并问题想把多个矩阵按第一列值的大小合并成一个矩阵,有什么简便的方法吗?例如 [1,10;3,25;5,30] 和[2,100;4,125] 合并成[1,10;2,100;3,25;4,125;5,30].
matlab 矩阵合并问题
想把多个矩阵按第一列值的大小合并成一个矩阵,有什么简便的方法吗?
例如 [1,10;3,25;5,30] 和[2,100;4,125] 合并成[1,10;2,100;3,25;4,125;5,30].
matlab 矩阵合并问题想把多个矩阵按第一列值的大小合并成一个矩阵,有什么简便的方法吗?例如 [1,10;3,25;5,30] 和[2,100;4,125] 合并成[1,10;2,100;3,25;4,125;5,30].
先合并, 再排序, 如下代码:
clear all; clc;
A = [1,10;3,25;5,30];
B = [2,100;4,125];
C = [A;B] %合并
[null index] = sort(C(:,1)); %获得索引
C = C(index,:) %按照索引重新排序
运行结果
C =
1 10
3 25
5 30
2 100
4 125
C =
1 10
2 100
3 25
4 125
5 30
补充, 根据另一位知友描述:
[null index] = sort(C(:,1)); %获得索引
C = C(index,:) %按照索引重新排序
可以替换成
C = sortrows(C,1) %注意不是 sortrow