Delete rows from an array with values from multiple columns with the same condition

8 visualizzazioni (ultimi 30 giorni)
I have a 39801x7 array. I want to keep any row of data where is there is a value less than -5 or greater than 5 that the row of data will be kept. I have done the code below but it only does it for column 7 and not all columns. I would like to know what I am doing wrong.
a is the 39801x7 array
for i = 1:7
A1 = a(a(:,i) <= -5 | a(:,i) >= 5 , :);
end

Risposta accettata

Walter Roberson
Walter Roberson il 23 Feb 2019
mask = any(a <= -5 | a >= 5, 2);
A1 = a(mask,:);

Più risposte (0)

Categorie

Scopri di più su Resizing and Reshaping Matrices in Help Center e File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by