I'm certain that there is a way for me to vectorize this loop but I can't see it
TestRan is a 170x1 double
CorrectVector is a 90x1 double, a subset of TestRan
I need to populate a 170x1 double CorrectLogical with 0/1 based on CorrectVector
what I have:
CorrectLogical = zeros(length(TestRan,1))
for i=1:length(CorrectVector)
CorrectLogical(TestRan==CorrectVector(i)) = 1
end

 Akzeptierte Antwort

Azzi Abdelmalek
Azzi Abdelmalek am 25 Nov. 2013
Bearbeitet: Azzi Abdelmalek am 25 Nov. 2013

0 Stimmen

CorrectLogical = zeros(size(TestRan))
CorrectLogical(ismember(TestRan,CorrectVector))=1

Weitere Antworten (2)

Tyler Davis
Tyler Davis am 25 Nov. 2013

0 Stimmen

that's it! thx for the quick help
Image Analyst
Image Analyst am 25 Nov. 2013

0 Stimmen

CorrectLogical = ismember(TestRan, CorrectVector)

Kategorien

Mehr zu Loops and Conditional Statements finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by