基于另一个数组排序顺序对多个数组进行排序

时间:2013-10-30 14:05:14

标签: arrays matlab sorting multidimensional-array octave

我在matlab / octave中有三个独立的数组,它们都是相互关联的。

我正在尝试根据c的排序对a和b的数组值进行排序(因此,当c排序时,a和b数组的排序顺序与c数组相同)。

Example:
Original Array
a= [1.2   2   3   4    5   6]
b= [3     5   6   4.1  7   9]
c= [2.2   1   9   6    8   3]

数组a和b基于c的类型 (注意所有数组都是根据数组c排序的顺序排序的)

Final Array that I want:
a= [2   1.2   6   4    5   3]
b= [5   3     9   4.1  7   6]
c= [1   2.2   3   6    8   9]

阿罗哈 瑞克

PS:如果有更好的方法可以使用matlab / octave请告诉我

1 个答案:

答案 0 :(得分:13)

[sorted, indices] = sort(c)
% get your output with
a(indices)
b(indices)