How can I compare two logical vectors to a value?

25 visualizzazioni (ultimi 30 giorni)
I want to do the following without loops:
logix = [1;0;0;1;1;1;0;0;0];
logiy = [0;1;1;0;1;0;0;1;1];
logi = zeros(size(logix,1),1);
for i = 1:size(logix,1)
if logix(i)==0
if logiy(i)==0
logi(i)=1;
else logi(i)=0;
end
else logi(i)=0;
end
end
logix and logiy are logical vectors (same size) and I want logi to be the vector that is 1 if logix and logiy are 0 in the same row or 0 if not. Thanks in advance, regards, jan

Risposta accettata

Arthur
Arthur il 5 Dic 2012
logi = ~logix & ~logiy

Più risposte (1)

Jos (10584)
Jos (10584) il 5 Dic 2012
Modificato: Jos (10584) il 5 Dic 2012
or via De Morgan (<http://en.wikipedia.org/wiki/De_Morgan%27s_laws>)
logi = ~(logix | logiy)

Categorie

Scopri di più su Develop Apps Using App Designer in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by