matlab中如何从最小到最大排序

matlab中如何从最小到最大排序,matlab,Matlab,我有这个数字数组 A= [1 2 3 4 1 2 3 1 3 1 1 2 1 2 1 1 2 1 0 6 1 2 1 0] 我想将第4列从最小到最大排序,相应的行将在其新位置后面,如下所示: A =[1 2 1 0 1 2 3 1 1 2 1 1 3 1 1 2 1 2 3 4 2 1 0 6] 最后一行在顶部,因为第4列中的零是第4列中最小的数字,

我有这个数字数组

 A= [1  2   3   4
1   2   3   1
3   1   1   2
1   2   1   1
2   1   0   6
1   2   1   0]
我想将第4列从最小到最大排序,相应的行将在其新位置后面,如下所示:

A =[1   2   1   0
1   2   3   1
1   2   1   1
3   1   1   2
1   2   3   4
2   1   0   6]
最后一行在顶部,因为第4列中的零是第4列中最小的数字,所以我将如何做到这一点?谢谢

您可以这样做:

[~,order] = sort(A(:,4));
A = A(order,:);
您可以这样做:

[~,order] = sort(A(:,4));
A = A(order,:);
这将有助于:

sortrows(A,columnNumber);
这将有助于:

sortrows(A,columnNumber);

我试过了,但它给出了一个错误:索引不能产生多个结果。@nobel:代码是正确的,我不知道你的情况出了什么问题。也许你有一个变量
sort
隐藏了函数
sort
我试过了,但它给出了一个错误:索引不能产生多个结果。@nobel:代码是正确的,我不知道你的情况有什么错。可能您有一个变量
sort
隐藏函数
sort
对不起,我误解了,它可以工作,谢谢。对不起,我误解了,它可以工作,谢谢。