3

我有一个A大小为 nRows x nCols 的矩阵。

我有一个nx2矩阵B,其中包含矩阵的索引A。我想获得 中A给出的索引处的值B

可以说,

B = [1, 2;
     2, 3;
     3, 4]

A(1,2) = 1
A(2,3) = 2
A(3,4) = 1

我想知道任何给出以下内容的Matlab命令,给定AB(我不想使用循环):

[1 2 1] 
4

2 回答 2

6

我想这就是你要找的东西:

A(sub2ind(size(A),B(:,1),B(:,2)))
于 2012-10-27T10:26:42.953 回答
2

这就是你想要的:

A = [1,2; 3, 4; 5, 6; 7,8; 9,0]; % this is your N by 2 matrix
B = [1,1; 1,2; 2,1; 3, 1; 4,2]; % these are your indexes
A(sub2ind(size(A), B(:,1), B(:,2)))

A =

 1     2
 3     4
 5     6
 7     8
 9     0



B =

 1     1
 1     2
 2     1
 3     1
 4     2

ans =

 1
 2
 3
 5
 8
于 2012-10-27T09:57:09.147 回答