i want to delete cells that contain 0's
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
Ioannis Vourvachakis
am 24 Nov. 2021
Kommentiert: Ioannis Vourvachakis
am 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 Kommentare
Akzeptierte Antwort
Kevin Holly
am 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 Kommentare
Kevin Holly
am 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,:)=[]
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Data Type Conversion 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!