2
列索引和矢量B
(mx1
)我要創建矢量C
(mx1
),其中每個行元素是從一列由B
索引的A
行元素。
有沒有可能做到這一點,而不使用循環?向量作爲在給定一個矩陣<code>A</code>(<code>mxn</code>)矩陣
A = [1 2; 3 4; 5 6];
B = [2 1 1].';
然後我想:
C = [2 3 5].';
列索引和矢量B
(mx1
)我要創建矢量C
(mx1
),其中每個行元素是從一列由B
索引的A
行元素。
有沒有可能做到這一點,而不使用循環?向量作爲在給定一個矩陣<code>A</code>(<code>mxn</code>)矩陣
A = [1 2; 3 4; 5 6];
B = [2 1 1].';
然後我想:
C = [2 3 5].';
轉換的B
列下標來線性索引,然後使用它們來參考元件在A
:
idx = sub2ind(size(A), (1:size(A, 1)).', B);
C = A(idx);
(有關詳細信息,讀關於線性索引的部分在this answer)。