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


Python dask.array.result_type用法及代碼示例

用法:

dask.array.result_type(*arrays_and_dtypes)

此文檔字符串是從 numpy.result_type 複製的。

可能存在與 Dask 版本的一些不一致之處。

返回將 NumPy 類型提升規則應用於參數所產生的類型。

NumPy 中的類型提升與 C++ 等語言中的規則類似,但有一些細微差別。當同時使用標量和數組時,數組的類型優先並考慮標量的實際值。

例如,計算 3*a,其中 a 是一個 32 位浮點數的數組,直觀地應該得到一個 32 位浮點數輸出。如果 3 是 32 位整數,NumPy 規則表明它不能無損地轉換為 32 位浮點數,因此結果類型應該是 64 位浮點數。通過檢查常量 ‘3’ 的值,我們看到它適合 8 位整數,可以無損地轉換為 32 位浮點數。

參數

arrays_and_dtypes數組和數據類型列表

需要其結果類型的某些操作的操作數。

返回

out類型

結果類型。

注意

使用的具體算法如下。

通過首先檢查所有數組和標量的最大類型是布爾值、整數 (int/uint) 還是浮點數 (float/complex) 來確定類別。

如果隻有標量或標量的最大類別高於數組的最大類別,則將數據類型與promote_types()組合以產生返回值。

否則,在每個數組上調用min_scalar_type,並將結果數據類型全部與promote_types() 組合以產生返回值。

int 值的集合不是具有相同位數的類型的 uint 值的子集,這在 min_scalar_type() 中沒有反映,但在 result_type 中作為特殊情況處理。

例子

>>> np.result_type(3, np.arange(7, dtype='i1'))  
dtype('int8')
>>> np.result_type('i4', 'c8')  
dtype('complex128')
>>> np.result_type(3.0, -2)  
dtype('float64')

相關用法


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