看板 MATLAB 關於我們 聯絡資訊
假設我有多個一維陣列 a=[1 3 2 15 88 20 11 ...]; b=[11 25 55 45 23 34 ...]; ... query=[24 39]; 我想要找出同時包含這兩個元素的陣列 並印出其陣列中的位置 也希望可以按query的順序印出位置 /搜尋過find 可是對find不是太孰悉 或者有其他函式可以用呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 203.64.91.30
Rasin:pos=find(a==query(1)) 03/27 14:06
Rasin:a(pos) 03/27 14:07
但是query的兩個元素不一定會相鄰 有可能中間會間隔數個甚至多個元素 而且順序也未必會一樣 是這樣寫嗎? ※ 編輯: cashpaggy 來自: 203.64.91.30 (03/27 14:45)
Rasin:跑了再說吧 03/27 18:27
mp19990920:iFind = ismember(a, query); 03/27 23:02
mp19990920:index = 1:numel(a); 03/27 23:03
mp19990920:index(iFind)即為所求,b亦然 03/27 23:04
cashpaggy:感謝樓上兩位! 03/28 11:00