deleting all the empty rows

1 vue (au cours des 30 derniers jours)
antonet
antonet le 13 Juil 2012
Modifié(e) : Stephen23 le 25 Sep 2014
Dear all,
I have
[N,T,R]]=xlsread(name);
I want to erase all the empty rows in T.
I suggest
T( all(cellfun(@isempty,T),2), : ) = [];
Am i correct?
  3 commentaires
antonet
antonet le 13 Juil 2012
cheers per
Stephen23
Stephen23 le 25 Sep 2014
Modifié(e) : Stephen23 le 25 Sep 2014
A little speed-up that is sometimes worth keeping in mind:
T(all(cellfun('isempty',T),2),:) = [];
There are some special cases (which run faster), where the functions can be supplied as a string. See the cellfun docs for more info.

Connectez-vous pour commenter.

Réponses (1)

Greg Heath
Greg Heath le 13 Juil 2012
I don't think MATLAB allows empty rows or columns
>> A = [ 1 2 3; [] [] [] ; 7 8 9 ]
A = 1 2 3
7 8 9
>> A = [ 1 [] 3; 4 [] 6; 7 [] 9 ]
A = 1 3
4 6
7 9
>> A = [ [] 2 3; 4 [] 6; 7 8 [] ]
A = 2 3
4 6
7 8
Hope this helps.
Greg
  2 commentaires
Nirmal
Nirmal le 13 Juil 2012
Modifié(e) : Nirmal le 13 Juil 2012
T in this case is cell array not the matrix and the cell can have empty string.
Greg Heath
Greg Heath le 25 Sep 2014
Correct:
>> A = { 1 2 3; [] [] [] ; 7 8 9 }, B = { 1 [] 3; 4 [] 6; 7 [] 9 }, C = { [] 2 3; 4 [] 6; 7 8 [] }
A = [1] [2] [3]
[] [] []
[7] [8] [9]
B = [1] [] [3]
[4] [] [6]
[7] [] [9]
C = [] [2] [3]
[4] [] [6]
[7] [8] []

Connectez-vous pour commenter.

Catégories

En savoir plus sur Characters and Strings dans Help Center et File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by