How to create new cell array from a cell array that meets a condition?

9 Ansichten (letzte 30 Tage)
I have a cell array that is 500x20 in size. The last column contains the string 'Good' or 'Bad'. I want to make a new cell array that has the rows that contain the 'Good' string in the last column. For example:
1 6 4 8 Bad
3 8 5 3 Good
a= 8 6 4 9 Bad
7 4 3 6 Good
7 7 6 3 Bad
I want the output to be a new cell array with the second and fourth rows.

Akzeptierte Antwort

Walter Roberson
Walter Roberson am 22 Dez. 2022
mask = strcmp(YourCell(:,end), 'Good');
GoodRows = YourCell(mask,:);
Question: have you considered using a table() instead of a cell array? Also have you considered using categorical for the conditions ?

Weitere Antworten (0)

Kategorien

Mehr zu Characters and Strings finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by