nansum for double or single -> why error?

hi :)
can please someone explain to me how I can use nansum for a vector? I always get this error:
Undefined function 'nansum' for input arguments of type 'single'.
same for double >> in what datatype do I have to transform the data?
Thx for ur help.

 Réponse acceptée

Cedric
Cedric le 28 Juil 2015
Modifié(e) : Cedric le 28 Juil 2015
Are you using a version of MATLAB anterior to 2006a? Evaluate ver or version to check. Or maybe you shadowed the function by naming a variable nansum by mistake during your tests. To check, evaluate
which nansum
and see if you get something like
C:\Program Files\MATLAB\R2015b\toolbox\stats\stats\nansum.m

3 commentaires

... thx didn't know that this function requires a toolbox licence :S
C:\Program Files\MATLAB\R2015a\toolbox\stats\stats\nansum.m % Has no license available
Cedric
Cedric le 28 Juil 2015
Modifié(e) : Cedric le 28 Juil 2015
Ok, we can help you implement something similar "by hand" if you need (?)
Cedric
Cedric le 28 Juil 2015
Modifié(e) : Cedric le 28 Juil 2015
Well, here is one way to do it:
function s = nansum( A, varargin )
A(isnan( A )) = 0 ;
s = sum( A, varargin{:} ) ;
end

Connectez-vous pour commenter.

Plus de réponses (1)

Steven Lord
Steven Lord le 28 Juil 2015
Marco, since you're using release R2015a (according to your comment on Cedric's answer) you can use SUM with the appropriate nanflag input argument instead of NANSUM.
x = [1:10 NaN];
sum(x, 'omitnan')

3 commentaires

Cedric
Cedric le 28 Juil 2015
I had never realized that this flag was implemented, thank you for the update!
Steven Lord
Steven Lord le 28 Juil 2015
Not only does SUM accept this flag, but so do a number of the other basic statistical calculation functions. For a full list, see the second item in the Mathematics section of the release R2015a Release Notes for MATLAB.
Cedric
Cedric le 28 Juil 2015
Thank you Steven! I obviously don't spend enough time reading release notes.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Large Files and Big Data dans Centre d'aide et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by