Convert Cell array with numeric and non-numeric data into a numeric array.

3 views (last 30 days)
I have a cell array of data pulled from field measurements. This data should be numeric, but it sporadically has non numeric (e.g. "I/O Timeout") text strings in it. I'm loading this into MATLAB via xlsread. I'd like to convert this into a numeric array, and have all of the non-numeric values be converted to "NaN". It seems that this should be a pretty basic thing to do, but I have not found a way to do it yet. Cell2Mat wants every element to be of the same data type.
Thanks for any help.
-Mike A.

Accepted Answer

Fangjun Jiang
Fangjun Jiang on 17 Jun 2011
a={1,2,'timeout',3,4,'i/o'}
b=cellfun(@ischar,a)
a(b)={nan}
c=cell2mat(a)

More Answers (0)

Categories

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

Products

Community Treasure Hunt

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

Start Hunting!