Spec-Zone.ru › NumPy 1.21

numpy.frexp

numpy.frexp(x, [out1, out2, ]/, [out=(None, None), ]*, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature, extobj]) = <ufunc 'frexp'>

Разложить элементы x на мантиссу и двоичный экспоненту.

Возвращает (mantissa, exponent), где x = mantissa * 2**exponent`. Мантисса лежит в открытом интервале (-1, 1), а двоичный экспонента — целое число со знаком.

Параметры
xarray_like

Массив чисел для разложения.

out1ndarray, необязательно

Массив вывода для мантиссы. Должен иметь такую же форму, как x.

out2ndarray, необязательно

Массив вывода для экспоненты. Должен иметь такую же форму, как x.

outndarray, None или кортеж ndarray и None, необязательно

Местоположение, в которое сохраняется результат. Если предоставлено, оно должно иметь форму, к которой векторизуются входные данные. Если не предоставлено или None, возвращается свежевыделенный массив. Кортеж (возможен только как ключевое слово) должен иметь длину, равную количеству выходов.

wherearray_like, необязательно

Это условие векторизуется по входным данным. В местах, где условие истинно, массив out будет установлен в результат ufunc. В противном случае массив out сохранит свое первоначальное значение. Обратите внимание, что если массив out создан с помощью значения по умолчанию out=None, места в нем, где условие ложно, останутся неинициализированными.

**kwargs

Для других ключевых аргументов см. документацию ufunc.

Возвращает
мантиссаndarray

Значения с плавающей запятой от -1 до 1. Это скаляр, если x является скаляром.

экспонентаndarray

Целые экспоненты 2. Это скаляр, если x является скаляром.

См. также

ldexp

Вычислить y = x1 * 2**x2, обратную функцию frexp.

Примечания

Комплексные типы данных не поддерживаются, они приведут к ошибке TypeError.

Примеры

>>> x = np.arange(9)
>>> y1, y2 = np.frexp(x)
>>> y1
array([ 0.   ,  0.5  ,  0.5  ,  0.75 ,  0.5  ,  0.625,  0.75 ,  0.875,
        0.5  ])
>>> y2
array([0, 1, 2, 2, 3, 3, 3, 3, 4])
>>> y1 * 2**y2
array([ 0.,  1.,  2.,  3.,  4.,  5.,  6.,  7.,  8.])

© 2005–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/generated/numpy.frexp.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API