i want to delete cells that contain 0's
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Ioannis Vourvachakis
il 24 Nov 2021
Commentato: Ioannis Vourvachakis
il 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 Commenti
Risposta accettata
Kevin Holly
il 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 Commenti
Kevin Holly
il 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,:)=[]
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Data Types 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!