remove empty rows of a cell
Afficher commentaires plus anciens
Hello
How could I remove the empty rows of a cell array? For example if I have,
K =
{0×0 double } {0×0 double}
{0×0 double } {0×0 double}
{[ 0 10]} {[ 0]}
{[ 0 10]} {[ 0]}
How do I remove the first two rows?
Thanks in advance!
Réponse acceptée
Plus de réponses (1)
Joseph Cheng
le 23 Juin 2021
Modifié(e) : Joseph Cheng
le 23 Juin 2021
you can use the function cellfun() in conjunction with isempty:
clear K
%generate dummy K
for Cind = 1:2
for Rind = 1:4
if Rind<3
K{Rind,Cind}=[];
else
K{Rind,Cind}=randi(10,1,2);
end
end
end
%use the function isempty for each cell in K
emptyK= cellfun(@isempty,K)
emptyKrow = sum(emptyK,2)>1 %check to see which row in K is empty >1 for fully empty row >= if atleast 1 empty is in there
K(emptyKrow,:)=[] %kill off empty rows
1 commentaire
Pilar Julieta Tagliero
le 24 Juin 2021
Catégories
En savoir plus sur Structures dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!