i want to delete cells that contain 0's
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Ioannis Vourvachakis
le 24 Nov 2021
Commenté : Ioannis Vourvachakis
le 24 Nov 2021
In a cell array, there are rows of cells that contain 0's. I want to delete these rows.
Thank you.
0 commentaires
Réponse acceptée
Kevin Holly
le 24 Nov 2021
Assuming the values in cell array are numeric:
cellarray = {34 , 23, 4, 123, 0 ,423, 4312;34 , 23, 4, 123, 5 ,423, 4312;34 , 0, 0, 123, 5 ,423, 4312;34 , 73, 5, 13, 7 ,23, 43;34 , 22, 3, 125, 5 ,423, 4312}
out = cellfun(@(x) find(x == 0),cellarray,'un',0);
idx = cellfun('isempty',out);
[row, column] = find(~idx);
cellarray(row,:)=[]
3 commentaires
Kevin Holly
le 24 Nov 2021
cellarray = {34 , 23, "ok", 123, 0 ,423, 4312;34 , 23, 4, 123, 5 ,"Words", 4312;34 , 0, 0, 123, 5 ,423, 4312;34 , 73, 5, 13, 7 ,"23", 43;34 , 22, 3, "125", 5 ,423, 4312}
out = cellfun(@(x) isnumeric(x) && x==0 ,cellarray,'un',0)
[row, column] = find(cell2mat(out))
cellarray(row,:)=[]
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Data Types dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!