Can we sum a series of values,even some of them are "NaN"?If i want to do it,how can i do?
1 view (last 30 days)
Show older comments
yang-En Hsiao
on 26 Mar 2019
Commented: Walter Roberson
on 26 Mar 2019
I get a series answer of optimal problem in several times,and i want to sum of them and average them,however, some of them are "NaN",can i or how to write a code to ignore those "NaN" and sum the others which is not "NaN" ?
The version of matlab is 2015a
0 Comments
Accepted Answer
Walter Roberson
on 26 Mar 2019
You did not indicate your MATLAB version.
For a couple of years now, you have been able to write sum(TheArray, 'omitnan') .
Before that, the easiest approach was to use the Statistics toolbox nansum()
mean() these days also has 'omitnan' flag, and in older versions the Stats tool was nanmean()
2 Comments
Walter Roberson
on 26 Mar 2019
That last line returns 0 for me. A(end) is Nan, and adding nan to each A(1:9) entry gives nan for each result, so you would be applying nansum to an all-nan vector, and the result of that is going to be 0.
More Answers (0)
See Also
Categories
Find more on Logical 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!