Filtering the contents of an array

34 vues (au cours des 30 derniers jours)
Gekkouga
Gekkouga le 10 Juil 2020
Commenté : Gekkouga le 10 Juil 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);

Réponse acceptée

madhan ravi
madhan ravi le 10 Juil 2020
filtered = Z(A, :)
  1 commentaire
Gekkouga
Gekkouga le 10 Juil 2020
Thanks. I didn't expect it to be that simple.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Creating and Concatenating Matrices dans Help Center et File Exchange

Produits


Version

R2020a

Community Treasure Hunt

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

Start Hunting!

Translated by