Compare and replace elements in a matrix

I have a matrix say A=[1 2 3 4 5 6 7 8 9 10] B=[2 5 10]. I want to compare A and B so that 2,5 and 10 (in B) should be replaced with zeros in A. The result should be [1 0 3 4 0 6 7 8 9 0].

 採用された回答

Azzi Abdelmalek
Azzi Abdelmalek 2013 年 12 月 26 日
編集済み: Azzi Abdelmalek 2013 年 12 月 26 日

1 投票

A=[1 2 3 4 5 6 7 8 9 10];
B=[2 5 10];
for k=1:numel(B)
A(ismember(A,B(k))=0;
end
or
A(ismember(A,B))=0
or
A(any(bsxfun(@eq,A,B')))=0

その他の回答 (1 件)

Walter Roberson
Walter Roberson 2013 年 12 月 26 日

0 投票

Have a look at ismember()

カテゴリ

ヘルプ センター および File ExchangeCell Arrays についてさらに検索

質問済み:

2013 年 12 月 26 日

編集済み:

2013 年 12 月 26 日

Community Treasure Hunt

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

Start Hunting!

Translated by