Numpy: np.iinfo ('cabeza') falla

Creado en 28 feb. 2018  ·  6Comentarios  ·  Fuente: numpy/numpy

>>> np.iinfo('intc')
iinfo(min=-2147483648, max=2147483647, dtype=int32)
>>> np.iinfo('uintc')
iinfo(min=0, max=4294967295, dtype=uint32)
>>> np.iinfo('longlong')
iinfo(min=-9223372036854775808, max=9223372036854775807, dtype=int64)
>>> np.iinfo('ulonglong')
iinfo(min=0, max=18446744073709551615, dtype=uint64)
>>> np.iinfo('long')
iinfo(min=-9223372036854775808, max=9223372036854775807, dtype=int64)
>>> np.iinfo('ulong')
Traceback (most recent call last):
  File "<ipython-input-20-e783aa7ef3c1>", line 1, in <module>
    np.iinfo('ulong')
  File "/home/antoine/miniconda3/envs/pyarrow/lib/python3.6/site-packages/numpy/core/getlimits.py", line 516, in __init__
    raise ValueError("Invalid integer data type.")
ValueError: Invalid integer data type.
00 - Bug 04 - Documentation numpy.dtype

Comentario más útil

Gracias por encontrar esto @ ax3l

Todos 6 comentarios

La solución fácil aquí es usar np.iinfo(np.uint)

Creo que esto se debe a que 'long' se decodifica en __buitins__.long

Según https://docs.scipy.org/doc/numpy/user/basics.types.html :

Además de intc, se definen los tipos de enteros C dependientes de la plataforma short, long, longlong y sus versiones sin firmar.

Los documentos están equivocados. El tipo de entero C long se llama np.int_ , y el tipo de entero unsigned long se llama np.uint

Por lo que puedo ver, esto también debería arreglarse en # 11837. :)

Gracias por encontrar esto @ ax3l

De nada, solo puedo reenviar el agradecimiento a @ C0nsultant que me señalamos aquí :)

¿Fue útil esta página
0 / 5 - 0 calificaciones