将1到12映射到小数集

nam*_*nam 0 matlab

我有一个m随机范围从1到12 的向量.

3    12    12     7    10     3     6    12    10    12
Run Code Online (Sandbox Code Playgroud)

我有一个转换表

1 2 3 4 5 6 7 8 9 10 11 12

0.6 0.7 1.8 0.9 0.5 1.6 0.9 1.5 1.8 0.8 0.9 0.5

这意味着,如果m(1)==3,我想改变m(1)1.8.如果m(2)==12,我想改变m(2)0.5.

我可以知道这种转换最快捷的方式是什么?谢谢.

rah*_*ma1 5

这可以通过索引来完成

conversion_table = [0.6 0.7 1.8 0.9 0.5 1.6 0.9 1.5 1.8 0.8 0.9 0.5];
m = [3 12 12  7 10  3  6 12 10 12];
m = conversion_table(m)
Run Code Online (Sandbox Code Playgroud)