convert Cell to double

10 views (last 30 days)
Navid
Navid on 12 Apr 2014
Commented: Navid on 12 Apr 2014
Hi,
I have C{1,1}<1500x1 cell> which contains data like:
'10/21/2013 13:11:34.0289993'
'10/21/2013 13:11:34.1289978'
'10/21/2013 13:11:34.2289962'
'10/21/2013 13:11:34.3290023'
'10/21/2013 13:11:34.4290008'
'10/21/2013 13:11:34.5289993'
'10/21/2013 13:11:34.6289978'
'10/21/2013 13:11:34.7289962'
I need to convert this cell to double,I used:
C =cellfun(@str2double,C,'un',0);
but it replaces all data with NaN !
can someone help me with that?
best, Navid

Answers (1)

Azzi Abdelmalek
Azzi Abdelmalek on 12 Apr 2014
Edited: Azzi Abdelmalek on 12 Apr 2014
D={'10/21/2013 13:11:34.0289993'
'10/21/2013 13:11:34.1289978'
'10/21/2013 13:11:34.2289962'
'10/21/2013 13:11:34.3290023'
'10/21/2013 13:11:34.4290008'
'10/21/2013 13:11:34.5289993'
'10/21/2013 13:11:34.6289978'
'10/21/2013 13:11:34.7289962'}
s=regexp(D,'\.','split')
a=cellfun(@(x) x{1},s,'un',0)
b=cellfun(@(x) x{2},s,'un',0)
  6 Comments
Azzi Abdelmalek
Azzi Abdelmalek on 12 Apr 2014
What this has to do with your initial question?
Navid
Navid on 12 Apr 2014
after getting this problem,I tried to overwrite the second column with the old values like this:
C =cellfun(@str2double,C,'un',0);
C(1,2)= dataArray(1,2);
VarName1 = cell2mat(C(:,1));
VarName1(isnan(VarName1)) = 0 ;
VarName2 = cell2mat(C(:,2));
VarName2(isnan(VarName2)) = 0 ;
but know for VarName1 every thing is ok but for VarName2 I get this error:
Error using cell2mat (line 53)
Cannot support cell arrays containing cell arrays or objects.
Error in Untitled2 (line 26)
VarName2 = cell2mat(C(:,2));
that's why I wanted to convert C{1,2} to double.

Sign in to comment.

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Tags

Products

Community Treasure Hunt

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

Start Hunting!