Indexing multidimensional matrices using logical arrays
Ältere Kommentare anzeigen
I want to efficiently find number in a multidimensional array that fall into
some category and do something to them,like in the code below:
nc=4;
mc=1000;
r1=normrnd(0,1,[nc,mc,n-1]);
for j=2:n
indexNeg(:,:)=r1(:,:,j)<0.5;
r1(:,:,j)=-r1(indexNeg,j);
end
here, I create a multidimensional array of random numbers and change sign of any number smaller than 0.5
I am getting this error Subscript indices must either be real positive integers or logicals.
How to properly use the logical index?
Akzeptierte Antwort
Weitere Antworten (2)
Andrei Bobrov
am 17 Dez. 2013
Bearbeitet: Andrei Bobrov
am 17 Dez. 2013
l = r1 < .5;
r1(l) = -r1(l);
On comment by Marco
r1 = abs(r1);
2 Kommentare
Marco Pereira
am 17 Dez. 2013
Bearbeitet: Marco Pereira
am 17 Dez. 2013
Andrei Bobrov
am 17 Dez. 2013
What you want?
Marco Pereira
am 17 Dez. 2013
0 Stimmen
Kategorien
Mehr zu Matrices and Arrays 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!