To delete the empty fields in the dataset

Dear all, Could you please help me that I faced the difficulty to do the data set to be tidy up? I want to delete the empty fields in the data set. The data set(53x2 cell array) is below;
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] [1x18 struct]
[] []
[1x18 struct] [1x18 struct]
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] [1x18 struct]
[] []
[1x18 struct] []
[] []
[1x18 struct] []
[] []
[] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] [1x18 struct]
[1x18 struct] []
[] []
[1x18 struct] []
[] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] [1x18 struct]
[1x18 struct] []
[1x18 struct] [1x18 struct]
[1x18 struct] []
[] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[1x18 struct] []
[] []
[1x18 struct] [1x18 struct]

2 Kommentare

Azzi Abdelmalek
Azzi Abdelmalek am 27 Apr. 2016
Is it a cell array or what? What is its size? do you mean to delete the entire row?
Khaing Zin Htwe
Khaing Zin Htwe am 27 Apr. 2016
this data set is 53x2 Cell Array,sir. I want to delete only these empty fields showed below:

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Azzi Abdelmalek
Azzi Abdelmalek am 27 Apr. 2016

0 Stimmen

V={5 [];4 6;[] 8;7 8;[] []}
idx=cellfun(@isempty,V)
V(any(idx,2),:)=[]

3 Kommentare

Khaing Zin Htwe
Khaing Zin Htwe am 27 Apr. 2016
Thanks sir,it deletes the entire row that is specified . But I just want to delete the only empty fields ,sir.So , I need to do 53x2 cell array to Nx1 cell array firstly and to delete the empty rows ,sir.Thank for your kind help.
Dear Azzi Abdelmalek , May i also know how to reduce the empty fields of array.I have the array [1 0 0 2 3 5 6 0 2 8 0].I want to delete these empty columns of this array.It is so easy for you,i think.Please help me,sir.
Azzi Abdelmalek
Azzi Abdelmalek am 9 Mai 2016
Bearbeitet: Azzi Abdelmalek am 9 Mai 2016
If there are empty element, that means you haven't to delete them, because they don't exist, unless you mean to delete the zero elements, in this case
array=[1 0 0 2 3 5 6 0 2 8 0]
out=nonzeros(array)'

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Elias Gule
Elias Gule am 29 Apr. 2016

0 Stimmen

Now, try this
V = {1,2,[],[],23,16,'A',struct()}; % your cell array
V = V(~cellfun('isempty'),V);

2 Kommentare

THanks sir.
Plz replace
V = V(~cellfun('isempty'),V);
with
V = V(~cellfun('isempty',V));

Melden Sie sich an, um zu kommentieren.

Kategorien

Community Treasure Hunt

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

Start Hunting!

Translated by