Separating an array based on row data?

5 visualizzazioni (ultimi 30 giorni)
Chris Drew
Chris Drew il 15 Mar 2022
Risposto: Jan il 15 Mar 2022
I have an array consisting of 3 columns and 'x' number of rows. Let's call it "Original_Data".
"Original_Data" contains rows where there are values of '0' and I wish to split my array into two new arrays:
  • "Bad_data" will be an array consisting of the original 3 columns from "Original_Data" and all rows from "Original_Data" which contain values of '0'
  • "Good_data" will be an array consisting of the original 3 columns from "Original_Data" and all rows from "Original_Data" which do not contain values of '0'
How would I do this?

Risposte (1)

Jan
Jan il 15 Mar 2022
Data = randi([0,3], 4, 3) % Some Test data
Data = 4×3
1 0 1 0 2 3 0 0 2 2 1 1
good = all(Data, 2); % No zeros in a row
goodData = Data(good, :)
goodData = 1×3
2 1 1
badData = Data(~good, :)
badData = 3×3
1 0 1 0 2 3 0 0 2

Categorie

Scopri di più su Cell Arrays in Help Center e File Exchange

Prodotti


Release

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by