[Numpy-discussion] getting the equivalent complex dtype from a real or int array

Henry Gomersall heng at cantab.net
Tue Oct 29 12:47:29 EDT 2013


Is there a way to extract the size of array that would be created by 
doing 1j*array?

The problem I'm having is in creating an empty array to fill with 
complex values without knowing a priori what the input data type is.

For example, I have a real or int array `a`.

I want to create an array `b` which can hold values from 1j*a in such a 
way that I don't need to compute those explicitly (because I only need 
parts of the array say), without upcasting (or indeed downcasting) the 
result.

So if `a` was dtype 'float32`, `b` would be of dtype `complex64`. If `a` 
was `int64`, `b` would be of dtype `complex128` etc.

Cheers,

Henry



More information about the NumPy-Discussion mailing list