np.int
это просто int
, обычный встроенный тип Python. Я думаю, что это только в пространстве имен numpy
для обратной совместимости. Это не тип NumPy, и вы не можете выполнить преобразование типов для массивов, вызвав его.
np.int_
- это тип NumPy для dtype. int
значения преобразуются по умолчанию, и это тот тип, который используется, когда вы делаете что-то вроде some_array.astype(int)
. Это соответствует C long
. np.int_
, вы можете вызывать для преобразования типов целые массивы:
>>> x = numpy.array([True, False, True])
>>> numpy.int_(x)
array([1, 0, 1])
но чаще использовать astype
:
>>> x.astype(int)
array([1, 0, 1])