readcell vs xlsread: substitute "1x1 missing" with "NaN"
21 views (last 30 days)
Show older comments
I used to import my mixed (char/num) content from xls-files as cell array with:
[~, ~, raw1] = xlsread(myfile, mysheet, myrange, 'basic')
Because xlsread is "not recommended", I'm trying to move to readcell. So according to "compatibility consideration" in documentation, I'm now using:
raw2 = readcell(myfile, 'Sheet', mysheet, 'Range', myrange);
It works, but where I had "NaN" in raw1, now I see "1x1 missing" in raw2. I'd like to replace those "1x1 missing" with "NaN" to get the very same output as with xlsread, so I tried:
raw2(cellfun(@(x) any(ismissing(x)), raw2)) = {NaN};
The problem is, not only "1x1 missing", but also some (but not all) valid text values are replaced. What am I doing wrong?
2 Comments
Jan
on 12 May 2022
It would be much easier to find the problem, if we have the input data or know, which data are unexpectedly replaces. "Some bit not all" does not reveal the details.
Answers (0)
See Also
Categories
Find more on Data Import and Analysis in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!