MATLAB Answers

Convert cell array to numeric data

100 views (last 30 days)
Jagannath Nanduri
Jagannath Nanduri on 9 Mar 2017
I have a large cell array of strings I am trying to convert to numeric data
> whos tt
Name Size Bytes Class Attributes
tt 8634370x1 6147671440 cell
tt(1)
ans =
{1x5 cell}
tt{1}
ans =
'2017' '058' '19' '24' '01.052261'
I am trying to convert this into a matrix of 8634370x5 using str2num or eval. I am lost in cell array indexing. Any help is greatly appreciated. Thanks.
Jaggu

  0 Comments

Sign in to comment.

Answers (1)

Alexandra Harkai
Alexandra Harkai on 9 Mar 2017
cellfun(@str2num, tt)
will do the trick, cellfun applies str2num to every cell.

  2 Comments

Stephen Cobeldick
Stephen Cobeldick on 9 Mar 2017
+1 very nice. I think str2double would be more robust:
cellfun(@str2double, tt)
Alexandra Harkai
Alexandra Harkai on 9 Mar 2017
Cool, will keep str2double in mind!

Sign in to comment.

Sign in to answer this question.