我有一个时间序列,我有一个函数返回矩阵中的局部最大值和最小值,矩阵按y坐标降序排序。例如,在以下系列中运行它:
[1 7 3 7 10 12 6 4 6]
将返回:
{ {6 , 12}, {2, 7}, {9, 6} }
作为局部最大值。如何对此矩阵进行排序,使其按索引按升序排序?我想要:
{{2, 7}, {6, 12}, {9, 6}}
修改
我实际上修改了我的函数,只是按索引排序顺序返回值。但我仍然想知道这样做的最佳方法(用一列值对矩阵进行排序)。
答案 0 :(得分:1)
你想要sortrows()
。但请注意,它适用于标准数组,而不是您在问题中显示的单元数组。例如:
>> m = [ 6 12; 2 7; 9 6 ];
>> sortrows(m)
ans =
2 7
6 12
9 6