Filtering the contents of an array

38 visualizaciones (últimos 30 días)
Gekkouga
Gekkouga el 10 de Jul. de 2020
Comentada: Gekkouga el 10 de Jul. de 2020
I have an array 'Z' with 'n' rows and 3 columns as a result of 'n' iterations. I need to filter the array based on the third column and store the values in a separate array.
I tried to use create a logical array with condition but then it gave me only a single column. So, I used concatenation to get a nx3 array and then I used element wise multiplication to remove all the unwanted values. But still, I have an nx3 array with rows of zeros inbetween that I need to eliminate. How should I proceed? I am stuck with logical arrays and array multiplications.
A = Z(:,3) >= R_val;
B = cat(2,A,A,A);
C = Z.*B;
PS: I tried using the logical array as array index but it yields a column vector nullifies the total relationship between the rows. So, that doesn't work.
C = Z(B);

Respuesta aceptada

madhan ravi
madhan ravi el 10 de Jul. de 2020
filtered = Z(A, :)
  1 comentario
Gekkouga
Gekkouga el 10 de Jul. de 2020
Thanks. I didn't expect it to be that simple.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Creating and Concatenating Matrices en Help Center y File Exchange.

Productos


Versión

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by