[Numpy-discussion] Problem with concatenate and object arrays
Travis Oliphant
oliphant.travis at ieee.org
Tue Sep 5 12:44:41 EDT 2006
Matthew Brett wrote:
> Hi,
>
>
>> This is a result of PyArray_FromAny changing when object arrays are
>> explicitly requested (which they are in this case --- although behind
>> the scenes).
>>
>
> Hmm - I think I am hitting a related bug/feature/surprising change in
> behavior, which is showing up rather obscurely in a failure of the
> scipy.io matlab loading tests:
>
> http://projects.scipy.org/scipy/scipy/ticket/258
>
> Here's the change I wasn't expecting, present with current SVN:
>
> a = arange(2)
> b = arange(1)
> c = array([a, b], dtype=object)
> c
> ->
> array([[0, 1],
> [0, 0]], dtype=object)
>
> On a previous version of numpy (1.02b.dev2975) I get the answer I was expecting:
>
> array([[0], [0 1]], dtype=object)
>
Grrr.. Object arrays are very hard to get right. I have no idea why
this is happening, but I'll look into it. I think it's the bug that
led me to put in the special-case object-array handling in the first
place. Now, that special-case object-array handling is only done on an
error condition, I need to fix this right and raise an inconsistent
shape error. It will probably help with the TypeError messages that are
currently raised in this situation with other types as well.
-Travis
More information about the NumPy-Discussion
mailing list