2D (5x5) 行列があるとします。
test =
39 13 90 5 71
60 78 38 4 11
87 92 46 45 35
40 96 61 17 1
90 50 46 89 63
そして 2 番目の 2D (5x2) 行列:
tidx =
1 3
2 4
2 3
2 4
4 5
そして、次の出力が得られるように、tidx をテストへの Idex として使用したいと考えています。
out =
39 90
78 4
92 46
96 17
89 63
これを行う1つの方法は、forループを使用することです...
for i=1:size(test,1)
out(i,:) = test(i,tidx(i,:));
end
質問:
これをベクトル化して、for ループなしで同じ出力が生成されるようにする方法はありますか?