Re: [問題] 依照序號抓數字(矩陣版)已回收
※ 引述《phylliss (何じゃこりゃ!)》之銘言:
: 例:
: A = [ 5 1 9 8 3 ];
: i1 = [ 2 3 1 4 5 ];
: 所以 A(i1) = [ 1 9 5 8 3 ]
: 問題:
: A = [ 2 1 5 7 3
: 9 7 3 5 1
: 7 5 2 9 0 ];
: i1 = [ 1 3 2 4 5
: 5 3 4 1 2
: 1 2 4 3 5 ];
: 欲同上例 A(i1) = [ 2 5 1 7 3 %(以下這三行是錯的)
: 1 3 5 9 7
: 7 5 9 2 0 ]
: 請問該怎麼做,才能依照i1矩陣內的index依列抓取呢?謝謝好心人士的回答!
[m, n] = size(i1);
ind = sub2ind(size(A), repmat((1:m)', 1, n), i1);
% result
A(ind)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
推
05/06 13:44, , 1F
05/06 13:44, 1F
→
05/06 18:19, , 2F
05/06 18:19, 2F
小改了一下,避免 i1 維度與 A 不同會出錯的情形。也感謝原原 PO 的謝禮。XD
※ 編輯: DigiPrince 來自: 140.113.94.230 (05/07 03:59)
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 4 之 4 篇):