matlab中的组件明智索引

时间:2018-06-18 15:13:34

标签: arrays matlab

如何在Matlab中进行组件明智的索引? 给定

N =

 1     2
 2     3
 3     1
L =

     0    2.0000    2.8284
2.0000         0    2.0000
2.8284    2.0000         0

我想提取由N行给出的L元素 那是 [L(1,2),L(2,3),L(3,1)] = [2.0,2.0,2.8284]

我们可以使用for循环

轻松完成
Lele=zeros(3,1);
for i = 1:3
   Lele(i) = L(N(i,1),N(i,2)); 
end

我们如何使用索引技术以矢量化方式实现这一目标? 换句话说,我们如何使用矩阵行作为索引

1 个答案:

答案 0 :(得分:3)

使用sub2ind提取线性索引,然后使用它们提取所需的元素,即

Lele = L(sub2ind(size(L), N(:,1), N(:,2)));