[Numpy-discussion] Standard Deviation (std): Suggested change for "ddof" default value

Sturla Molden sturla.molden at gmail.com
Tue Apr 1 16:02:11 EDT 2014


Haslwanter Thomas <Thomas.Haslwanter at fh-linz.at> wrote:

> Personally I cannot think of many applications where it would be desired
> to calculate the standard deviation with ddof=0. In addition, I feel that
> there should be consistency between standard modules such as numpy, scipy, and pandas.

ddof=0 is the maxiumum likelihood estimate. It is also needed in Bayesian
estimation.

If you are not eatimating from a sample, but rather calculating for the
whole population, you always want ddof=0. 

What does Matlab do by default? (Yes, it is a retorical question.)


> I am wondering if there is a good reason to stick to "ddof=0" as the
> default for "std", or if others would agree with my suggestion to change
> the default to "ddof=1"?

It is a bad idea to suddenly break everyone's code. 


Sturla




More information about the NumPy-Discussion mailing list