[Numpy-discussion] Returning the same dtype in Cython as np.argmax
Wed Jun 8 23:49:01 CDT 2011
On Jun 7, 2011, at 3:17 PM, Keith Goodman wrote:
> What is the rule to determine the dtype returned by numpy functions
> that return indices such as np.argmax?
The return type of indices will be np.intp.
I don't know if Cython provides that type or not. If not, then it is either np.int32 or np.int64 depending on the system.
> I assumed that np.argmax() returned the same dtype as np.int_. That
> works on linux32/64 and win32 but on win-amd64 np.int_ is int32 and
> np.argmax() returns int64.
> Someone suggested using intp. But I can't figure out how to do that in
> Cython since I am unable to cimport NPY_INTP. So this doesn't work:
> from numpy cimport NPY_INTP
> cdef np.ndarray[np.intp_t, ndim=1] output = PyArray_EMPTY(1, dims, NPY_INTP, 0)
> Is there another way? All I can think of is checking whether np.intp
> is np.int32 or int64 when I template the code.
> NumPy-Discussion mailing list
More information about the NumPy-Discussion