【问题标题】:MATLAB: Mapping Values to Index of Other ArrayMATLAB:将值映射到其他数组的索引
【发布时间】:2011-08-07 04:00:20
【问题描述】:

任何 MATLAB 专家都可以帮助解决这个问题:

我有以下两个数组:

A = [1 1 3 4 4 4 4 4];
B = [6 7 8 9];

我想创建第三个数组,它使用“A”的值作为指向 B 中数组的指针。所以,最终结果是:

C = [6 6 8 9 9 9 9 9];

“A”的每个元素都映射到“B”中的索引。

提前致谢。

编辑: 对不起,忘了提:我正在寻找一个非循环解决方案。这可行(我认为),但它使用循环:

C = [];
for i = 1:length(A)
   C = [C B(A(i))];
end

【问题讨论】:

    标签: arrays matlab indexing


    【解决方案1】:

    使用B(A)。它将A 的元素视为B 的索引,并返回与A 大小相同的数组。

    【讨论】:

    • 太棒了。工作完美 - 谢谢!我会在分钟后接受。时间已过。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-30
    • 2020-03-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多