if conditional 2 out of 3
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Zeynab Mousavikhamene
am 11 Mai 2020
Kommentiert: Walter Roberson
am 12 Mai 2020
I have three groups of number which can be 0 or 1. like A, B and C. I want to write a conditional to be true if 2 of three values were 1. How can I do that?
The simplest way would be like:
if (A==1 && B==1) or (A==1 && C==1) or (B==1 && c==1)
end
but I am searching for sth shorter.
Any idea?
0 Kommentare
Akzeptierte Antwort
KALYAN ACHARJYA
am 11 Mai 2020
Bearbeitet: KALYAN ACHARJYA
am 11 Mai 2020
(A+B+C)>=2
2 Kommentare
Walter Roberson
am 12 Mai 2020
If the values can be something other than 0 and 1, it is not clear how you want to compare them.
(A~=0) + (B~=0) + (C~=0) >= 2 %non-zeros
or
nnz([A,B,C]) >= 2 %non-zeros
or
sum([A,B,C] == SomeValue) >= 2 %match SomeValue specifically
or
nnz([A,B,C] == SomeValue) >= 2 %match SomeValue specifically
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Conditional Mean Models finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!