How to automize removal of NaN's for a structure?

3 views (last 30 days)
Hello! I have some NaN's in my structure, and have tried various things but what I've gotten to work, in order to change them to zero is the following:
CL.i0(isnan(CL.i0)) = 0;
CL.i1(isnan(CL.i1)) = 0;
CL.i2(isnan(CL.i2)) = 0;
CD.i0(isnan(CD.i0)) = 0;
CD.i1(isnan(CD.i1)) = 0;
CD.i2(isnan(CD.i2)) = 0;
CM.i0(isnan(CM.i0)) = 0;
CM.i1(isnan(CM.i1)) = 0;
CM.i2(isnan(CM.i2)) = 0;
Is there any way to change this to automize it for future code?
Thanks in advance guys.

Accepted Answer

Walter Roberson
Walter Roberson on 7 Apr 2020
In restricted cases where the structure fields are guaranteed to be simple data types, then you can use much smaller code.
structfun(@(F) fillmissing(F, 'constant', 0), CL, 'uniform', 0)

More Answers (0)

Categories

Find more on Structures 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!