當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Python numpy frexp用法及代碼示例


本文簡要介紹 python 語言中 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 的元素分解為尾數和二進製 index 。

返回(尾數, index ), 在哪裏x = 尾數 * 2**指數`。尾數位於開區間(-1, 1)內,而二進製指數是有符號整數。

參數

x array_like

要分解的數字數組。

out1 ndarray,可選

尾數的輸出數組。必須具有相同的形狀x.

out2 ndarray,可選

指數的輸出數組。必須具有相同的形狀x.

out ndarray,None,或 ndarray 和 None 的元組,可選

存儲結果的位置。如果提供,它必須具有輸入廣播到的形狀。如果未提供或 None,則返回一個新分配的數組。元組(隻能作為關鍵字參數)的長度必須等於輸出的數量。

where 數組,可選

此條件通過輸入廣播。在條件為真的位置,out數組將設置為 ufunc 結果。在其他地方,out數組將保留其原始值。請注意,如果未初始化out數組是通過默認創建的out=None,其中條件為 False 的位置將保持未初始化狀態。

**kwargs

對於其他僅關鍵字參數,請參閱 ufunc 文檔。

返回

mantissa ndarray

-1 和 1 之間的浮點值。如果 x 是標量,則這是一個標量。

exponent ndarray

2 的整數 index 。如果 x 是標量,則這是標量。

注意

不支持複雜的 dtype,它們會引發 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.])

相關用法


注:本文由純淨天空篩選整理自numpy.org大神的英文原創作品 numpy.frexp。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。