假设我有一个元胞数组x
和一个整数数组y
:
x = {'apple', 'orange', 'banana', 'pear'};
y = [2 4 3 1];
实际上,y
表示 的索引x
。我现在想创建一个单元格数组z
,其中的元素x
按照这些索引的顺序指定重新排序。这会给我:
z = {'orange', 'pear', 'banana', 'apple'};
我可以在一行中执行此操作而不必遍历每个元素并z
依次放置吗?
假设我有一个元胞数组x
和一个整数数组y
:
x = {'apple', 'orange', 'banana', 'pear'};
y = [2 4 3 1];
实际上,y
表示 的索引x
。我现在想创建一个单元格数组z
,其中的元素x
按照这些索引的顺序指定重新排序。这会给我:
z = {'orange', 'pear', 'banana', 'apple'};
我可以在一行中执行此操作而不必遍历每个元素并z
依次放置吗?
z = x(y);
因为 StackOverflow 需要至少 30 个字符长的答案,所以这个句子被创建为填充物。
这意味着:按照索引的顺序放入由索引选择的z
元素 frrm 的元胞数组。(这是 MATLAB下标的基础知识;其他索引方法是线性和逻辑的,有关详细信息,请参阅Mathworks站点)。x
y