フィルターのクリア

'for loop' trouble

1 回表示 (過去 30 日間)
Michael
Michael 2011 年 5 月 19 日
basically i have two lists of doubles, each a single column, one longer than the other. every number in A is located somewhere in B, I just need to find where. So I tried to use a for loop, but ran into an issue.
A = [12; 15; 16; 19; 20];
B = [10; 11; 12; 13; 14; 15; 16; 17; 18; 19; 20];
My code is as follows:
for j=1:length(A)
ind = find(A==B)
end
the output basically keeps replacing 'ind' with a new value, when in fact i need to store all values of 'ind' that it generates. might be a simple fix but im still learning. thanks in advance
  1 件のコメント
Sean de Wolski
Sean de Wolski 2011 年 5 月 19 日
As with your question earlier, good job writing questions that are easy for us to understand and answer!

サインインしてコメントする。

採用された回答

Sean de Wolski
Sean de Wolski 2011 年 5 月 19 日
[junk,idx] = ismember(A,B)
idx is the location you're looking for.
(and to fix your for-loop)
for ii = length(A):-1:1
ind(ii) = find(A(ii)==B);
end

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLoops and Conditional Statements についてさらに検索

タグ

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by