[Numpy-discussion] ndarray of complex-like data

Brecht Machiels brecht.machiels@esat.kuleuven...
Tue Feb 16 09:58:25 CST 2010


Travis Oliphant wrote:
> On Feb 16, 2010, at 5:00 AM, Brecht Machiels wrote:
>> I have written a subclass of Python's complex type, which only adds a
>> couple of properties that return values calculated from the real and
>> imaginary parts (magnitude and angle, for example).
>>
>> Now I would like to store objects of this new type in an ndarray. As the
>> new type doesn't store more information than a complex number, the
>> ndarray's dtype can be 'complex'. I also assume that is is better for
>> performance to use dtype=complex instead of dtype=object? Using
>> dtype=complex also ensures that anything put into the array can be cast
>> to a complex.
>>
>> However, I would like the array to return objects of my new type when I
>> retrieve an item from the ndarray. I'm not sure how to do that. I would
>> rather avoid having to define the new type in C.
> 
> 2) Subclass the ndarray to do what you want. 

I have subclassed ndarray, but I'm not sure how to continue from there. 
I was thinking of overriding __getitem__ and casting the complex to my 
complex subclass. Would that be the way to go? How would that work with 
slices?

Kind regards,
Brecht



More information about the NumPy-Discussion mailing list