>> C = [{1} {2} ; {'@CF'} {2}]
C =
[ 1] [2]
'@CF' [2]
>> whos C
Name Size Bytes Class Attributes
C 2x2 478 cell
How can I convert C
into double
so that:
>> C
C =
1 2
NaN 2
I've tried str2double(C)
. It returns:
NaN NaN
NaN NaN
C = [{1} {2} ; {'@CF'} {2}]
C =
[ 1] [2]
'@CF' [2]
D = cellfun(@isnumeric,C);
C(~D)={nan}
C =
[ 1] [2]
[NaN] [2]
cell2mat(C)
ans =
1 2
NaN 2
Find the non numeric values with isnumeric, queried by cellfun. Use that with logical indexing to extract the numeric values:
C = [{1} {2} ; {'@CF'} {2}];
isnum = cellfun(@isnumeric,C);
result = NaN(size(C));
result(isnum) = [C{isnum}];
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With