[Numpy-discussion] Summing an array with dtype=object
Robert Kern
robert.kern at gmail.com
Mon Nov 16 00:16:44 EST 2009
On Sun, Nov 15, 2009 at 23:11, Pierre GM <pgmdevlist at gmail.com> wrote:
> All,
> An issue was recently raised about summing a MaskedArray with a np.object dtype. Turns out that the problem is numpy based:
> Let's sum using integers
>>>> type(np.sum([1,2,3], dtype=np.int32))
> <type 'numpy.int32'>
>
> Now, with a np.object dtype:
>>>> type(np.sum([1,2,3],dtype=object))
> <type 'int'>
>
> And we no longer have a np.object, but a regular Python int. Which, unfortunately for MaskedArray, does not have a view object (hence the bug).
> Is it the expected behavior ?
Yes. Wherever we can, we return the object itself rather than
np.object_ scalars.
In [2]: a
Out[2]: array([0, 1, 2], dtype=object)
In [5]: type(a[0])
Out[5]: int
--
Robert Kern
"I have come to believe that the whole world is an enigma, a harmless
enigma that is made terrible by our own mad attempt to interpret it as
though it had an underlying truth."
-- Umberto Eco
More information about the NumPy-Discussion
mailing list