[Numpy-discussion] bug in numpy.mean() ?

K.-Michael Aye kmichael.aye@gmail....
Tue Jan 24 13:48:31 CST 2012


Thank you Bruce and all, 
I knew I was doing something wrong (should have read the mean method 
doc more closely). Am of course glad that's so easy understandable.
But: If the error can get so big, wouldn't it be a better idea for the 
accumulator to always be of type 'float64' and then convert later to 
the type of the original array? 
As one can see in this case, the result would be much closer to the true value.

Michael


On 2012-01-24 19:01:40 +0000, Val Kalatsky said:

> 
> Just what Bruce said. 
> 
> You can run the following to confirm:
> np.mean(data - data.mean())
> 
> If for some reason you do not want to convert to float64 you can add 
> the result of the previous line to the "bad" mean:
> bad_mean = data.mean()
> good_mean = bad_mean + np.mean(data - bad_mean)
> 
> Val
> 
> On Tue, Jan 24, 2012 at 12:33 PM, K.-Michael Aye 
> <kmichael.aye@gmail.com> wrote:
> I know I know, that's pretty outrageous to even suggest, but please
> bear with me, I am stumped as you may be:
> 
> 2-D data file here:
> http://dl.dropbox.com/u/139035/data.npy
> 
> Then:
> In [3]: data.mean()
> Out[3]: 3067.0243839999998
> 
> In [4]: data.max()
> Out[4]: 3052.4343
> 
> In [5]: data.shape
> Out[5]: (1000, 1000)
> 
> In [6]: data.min()
> Out[6]: 3040.498
> 
> In [7]: data.dtype
> Out[7]: dtype('float32')
> 
> 
> A mean value calculated per loop over the data gives me 3045.747251076416
> I first thought I still misunderstand how data.mean() works, per axis
> and so on, but did the same with a flattenend version with the same
> results.
> 
> Am I really soo tired that I can't see what I am doing wrong here?
> For completion, the data was read by a osgeo.gdal dataset method called
> ReadAsArray()
> My numpy.__version__ gives me 1.6.1 and my whole setup is based on
> Enthought's EPD.
> 
> Best regards,
> Michael
> 
> 
> 
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion@scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
> 
> _______________________________________________
> NumPy-Discussion mailing list
> NumPy-Discussion@scipy.org
> http://mail.scipy.org/mailman/listinfo/numpy-discussion
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/numpy-discussion/attachments/20120124/98be8f9e/attachment.html 


More information about the NumPy-Discussion mailing list