排序单元格数组?

时间:2011-07-19 18:15:51

标签: arrays matlab sorting cell-array

我有一个数字单元格数组,但大多数单元格数组都是空的,例如:

x = 

[]    [6]    []    [4]    []    []    []    [1]

我有一个匹配的数组y

y = [1, 3,1,5,7,3,1,5]

我想从单元格数组x中获取数字的索引,并使用它们从y获取相应的值。所以x(2)与y(2)匹配。我使用

将x转换为数组
x = cell2mat(x); 

但问题是它返回

x = [6,4,1]

这不允许我获得正确的索引,因此我可以对X进行排序,然后相应地对Y进行排序,以便相同的索引匹配。我试图使用对单元格数组不起作用的排序。

1 个答案:

答案 0 :(得分:2)

只需使用y(x);这将从y向量返回索引6,4和1。

请注意,返回矩阵的顺序取决于x中索引的顺序;如果您想对x进行排序,请在运行y(x)之前执行此操作。