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


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


用法:

dask.array.nan_to_num(*args, **kwargs)

用零和無窮大替換 NaN 用大的有限數(默認行為)或用戶使用 nanposinf 和/或 neginf 關鍵字定義的數字。

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

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

如果x 不精確,NaN 將被零或nan 關鍵字中的用戶定義值替換,無窮大被x.dtype 可表示的最大有限浮點值或posinf 關鍵字中的用戶定義值替換-infinity 被x.dtypeneginf 關鍵字中用戶定義的值所表示的最大負有限浮點值替換。

對於複雜的 dtype,上述內容分別應用於x 的每個實部和虛部。

如果x 不是不準確的,則不進行替換。

參數

x標量或類似數組(Dask 中不支持)

輸入數據。

copybool,可選(在 Dask 中不支持)

是創建x 的副本(True)還是就地替換值(False)。僅當轉換為數組不需要副本時,才會發生就地操作。默認為真。

nanint、float、可選(在 Dask 中不支持)

用於填充 NaN 值的值。如果未傳遞任何值,則 NaN 值將替換為 0.0。

posinfint、float、可選(在 Dask 中不支持)

用於填充正無窮大值的值。如果沒有傳遞任何值,那麽正無窮大值將被替換為一個非常大的數字。

neginfint、float、可選(在 Dask 中不支持)

用於填充負無窮大值的值。如果未傳遞任何值,則負無窮大值將被替換為非常小的(或負)數。

返回

outndarray

x ,替換了非有限值。如果 copy 為 False,則這可能是 x 本身。

注意

NumPy 使用 IEEE 二進製浮點算術標準 (IEEE 754)。這意味著 Not a Number 不等於無窮大。

例子

>>> np.nan_to_num(np.inf)  
1.7976931348623157e+308
>>> np.nan_to_num(-np.inf)  
-1.7976931348623157e+308
>>> np.nan_to_num(np.nan)  
0.0
>>> x = np.array([np.inf, -np.inf, np.nan, -128, 128])  
>>> np.nan_to_num(x)  
array([ 1.79769313e+308, -1.79769313e+308,  0.00000000e+000, # may vary
       -1.28000000e+002,  1.28000000e+002])
>>> np.nan_to_num(x, nan=-9999, posinf=33333333, neginf=33333333)  
array([ 3.3333333e+07,  3.3333333e+07, -9.9990000e+03, 
       -1.2800000e+02,  1.2800000e+02])
>>> y = np.array([complex(np.inf, np.nan), np.nan, complex(np.nan, np.inf)])  
array([  1.79769313e+308,  -1.79769313e+308,   0.00000000e+000, # may vary
     -1.28000000e+002,   1.28000000e+002])
>>> np.nan_to_num(y)  
array([  1.79769313e+308 +0.00000000e+000j, # may vary
         0.00000000e+000 +0.00000000e+000j,
         0.00000000e+000 +1.79769313e+308j])
>>> np.nan_to_num(y, nan=111111, posinf=222222)  
array([222222.+111111.j, 111111.     +0.j, 111111.+222222.j])

相關用法


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