Removing rows with [] in cell array

Hey everyone,
Clearly my syntax is off. I have seen my a post about this and tried many ways but I keep getting errors, particularly
Error using subsindex
Function 'subsindex' is not defined for values of class
'cell'.
I would like to remove the entire row of data if [] is found in the 3rd column. I read a post that said this error is often returned when I have a variable with a similar name to a matlab function but when I do the following that doesn't seem to be the case.
>> which data
data is a variable.
Here is the final code I tired:
>> data(cellfun(@(x)x(~isempty(x)), data(:,3),'un',0),:)= []
Error using subsindex
Function 'subsindex' is not defined for values of class
'cell'.
Attached is my file! Thank you!

4 Comments

counter = 0; for n = 1:size(ERAW_HWstid605_30yrs,1); if isempty(ERAW_HWstid605_30yrs{n,3}) == false; counter = counter + 1; for m = 1:size(ERAW_HWstid605_30yrs,2); cleandata{counter,m} = ERAW_HWstid605_30yrs{n,m}; end; end; end;
You should put this as an answer so you can get those great points! Thank you very much for this!
just happy to help.
Well you are certainly appreciated. Many thanks, one day I will return the favour to someone

Sign in to comment.

 Accepted Answer

data(cellfun(@(x) isempty(x), data(:,3)),:)=[]

More Answers (0)

Categories

Find more on Programming in Help Center and File Exchange

Asked:

on 8 May 2014

Commented:

on 8 May 2014

Community Treasure Hunt

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

Start Hunting!