Hi Coder, Just out of curiosity, if we can make the last two lines into a single line?
M = zeros (9,1);
Alert_LessThree = 1:3;
B = [2 4 4 4 1 5 6 7 8];
[tf,Ioc_Alert_LessThree] = find (ismember(B, Alert_LessThree));
M(Ioc_Alert_LessThree,:) = 2;
Thank you

 Akzeptierte Antwort

Adam
Adam am 11 Jul. 2017

1 Stimme

M( ismember(B, Alert_LessThree) ) = 2

Weitere Antworten (1)

Star Strider
Star Strider am 11 Jul. 2017

2 Stimmen

Yes.
You only need the first output from ismember, that is a logical vector. I believe this is the result you want:
M(ismember(B, Alert_LessThree)) = 2;

1 Kommentar

balandong
balandong am 11 Jul. 2017
Thanks guys, in fact, that is more efficient!

Melden Sie sich an, um zu kommentieren.

Kategorien

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

Gefragt:

am 11 Jul. 2017

Kommentiert:

am 11 Jul. 2017

Community Treasure Hunt

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

Start Hunting!

Translated by