Indexing multidimensional matrices using logical arrays
Mostrar comentarios más antiguos
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?
Respuesta aceptada
Más respuestas (2)
Andrei Bobrov
el 17 de Dic. de 2013
Editada: Andrei Bobrov
el 17 de Dic. de 2013
l = r1 < .5;
r1(l) = -r1(l);
On comment by Marco
r1 = abs(r1);
2 comentarios
Marco Pereira
el 17 de Dic. de 2013
Editada: Marco Pereira
el 17 de Dic. de 2013
Andrei Bobrov
el 17 de Dic. de 2013
What you want?
Marco Pereira
el 17 de Dic. de 2013
0 votos
Categorías
Más información sobre Matrices and Arrays en Centro de ayuda y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!