根据排序的X排序Y.

时间:2017-02-18 19:48:44

标签: matlab sorting classification

X = [2.3 4.1 1.9 5.8 6.7 7.5 9.3 15.0 1.6 3.1]

Y = [1 1 1 1 2 2 2 3 3 3]

两个向量的长度相等。

我希望按值对X进行排序,然后根据对X进行排序的相同重排对Y进行排序。

在Matlab中最简单的方法是什么?

2 个答案:

答案 0 :(得分:3)

[B I]=sort(X);
% I is the index
Y=Y(I);

答案 1 :(得分:1)

matlab中的sortrows()函数也是一个很好的解决方案。

XY = [X' Y'];
XY = sortrows(XY,1);% sort both columns in ascending order of X values or col-1
X = (XY(:,1))';
Y = (XY(:,2))';