Convert cell to double

1 次查看(过去 30 天)
Xiao Tang
Xiao Tang 2012-7-17
Hi guys, I got a matrix C,
>>C = [{1} {2} ; {'@CF'} {2}]
C =
[ 1] [2]
'@CF' [2]
>>whos C
Name Size Bytes Class Attributes
C 2x2 478 cell
How can I transfer C into double so that:
>>C
C =
1 2
NaN 2
I've tried Str2double(C), it doesn't work. It returns,
NaN NaN
NaN NaN
  2 个评论
Jan
Jan 2012-7-17
Of course STR2DOUBLE does not work, because the elements of your cell matrix are not strings.
Btw, you can write the cell tighter as: {1, 2; '@CF', 2}

请先登录,再进行评论。

回答(1 个)

Honglei Chen
Honglei Chen 2012-7-17
编辑:Honglei Chen 2012-7-17
Your C already contains numbers, so those cells are invalid for str2double
C(~cellfun(@isnumeric,C))={nan}

类别

Help CenterFile Exchange 中查找有关 Cell Arrays 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by