np.float не соответствует ни np.float32, ни np.float64 - PullRequest
3 голосов
/ 17 мая 2019

Я ищу способ проверить, является ли массив numpy np.float64 или np.float32.Это прекрасно работает для np.float64:

a = np.random.rand(10)

if not issubclass(a.dtype.type, np.float):
    raise "Wrong type"  # No exception is raised for np.float64

, но не для np.float32:

a = np.random.rand(10).astype(np.float32)

if not issubclass(a.dtype.type, np.float):
    raise "Wrong type"  # An exception is raised!

1 Ответ

1 голос
/ 17 мая 2019

Один из способов проверить, является ли тип данных с плавающей запятой, с помощью issubdtype:

In [1]: a = np.random.rand(10).astype(np.float64)

In [2]: b = np.random.rand(10).astype(np.float32)

In [3]: np.issubdtype(a.dtype,np.floating)
Out[3]: True

In [4]: np.issubdtype(b.dtype,np.floating)
Out[4]: True
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...