2011-07-19 58 views
2

我有一个数字的单元阵列,但大多数单元阵列是空的,例如:排序单元阵列?

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,然后排序ÿ因此使相同的指数相匹配。我尝试使用对单元阵列不起作用的排序。

回答

2

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

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