On Wed, Jul 27, 2011 at 2:20 PM, Charles R Harris <charlesr.har...@gmail.com > wrote:
> > > On Wed, Jul 27, 2011 at 6:58 AM, Charles R Harris < > charlesr.har...@gmail.com> wrote: > >> >> >> On Wed, Jul 27, 2011 at 2:49 AM, Mark Dickinson <mdickin...@enthought.com >> > wrote: >> >>> In NumPy 1.6.0, I get the following behaviour: >>> >>> >>> Python 2.7.2 |EPD 7.1-1 (32-bit)| (default, Jul 3 2011, 15:40:35) >>> [GCC 4.0.1 (Apple Inc. build 5493)] on darwin >>> Type "packages", "demo" or "enthought" for more information. >>> >>> import numpy >>> >>> numpy.nanmin(numpy.ma.masked_array([1,2,3,4])) >>> Traceback (most recent call last): >>> File "<stdin>", line 1, in <module> >>> File >>> "/Library/Frameworks/Python.framework/Versions/7.1/lib/python2.7/site-packages/numpy/lib/function_base.py", >>> line 1507, in nanmin >>> return np.fmin.reduce(a.flat) >>> TypeError: cannot reduce on a scalar >>> >>> numpy.__version__ >>> '1.6.0' >>> >>> >>> In NumPy version 1.5.1: >>> >>> Python 2.7.2 |EPD 7.1-1 (32-bit)| (default, Jul 3 2011, 15:40:35) >>> [GCC 4.0.1 (Apple Inc. build 5493)] on darwin >>> Type "packages", "demo" or "enthought" for more information. >>> >>> import numpy >>> >>> numpy.nanmin(numpy.ma.masked_array([1,2,3,4])) >>> 1 >>> >>> numpy.__version__ >>> '1.5.1' >>> >>> >>> Was this change intentional? >>> >>> >> No, it comes from this >> >> In [2]: a = numpy.ma.masked_array([1,2,3,4]) >> >> In [3]: array(a.flat) >> Out[3]: array(<numpy.ma.core.MaskedIterator object at 0x1fd1f90>, >> dtype='object') >> >> i.e., the a.flat iterator is turned into an object array with one >> element. I'm not sure what the correct fix for this would be. Please open a >> ticket. >> >> > In fact, array no longer recognizes iterators, but a.flat works, so I > assume the __array__ attribute of the array iterator is at work. I think > nanmin needs to be fixed, because it used a.flat for speed, but it looks > like something closer to 'asflat' is needed. In addition, array probably > needs to be fixed to accept iterators, I think it used to. > I'd guess this slipped through with something I changed when I was in the array construction part of the system, because the test suite doesn't exercise this. Any NumPy behavior we want preserved needs tests! -Mark > > How did nanmin interact with the mask of masked arrays in earlier versions? > > Chuck > > > _______________________________________________ > 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