numpy.asarray_chkfinite#

numpy.asarray_chkfinite(a, dtype=None, order=None)[source]#

將輸入轉換為陣列,並檢查是否有 NaN 或 Inf。

參數:
aarray_like

輸入資料,可以是任何可以轉換為陣列的形式。這包括列表、元組列表、元組、元組的元組、列表的元組和 ndarray。成功轉換的條件是不能有 NaN 或 Inf。

dtypedata-type, optional

預設情況下,資料型別會從輸入資料推斷。

order{‘C’, ‘F’, ‘A’, ‘K’}, optional

記憶體佈局。「A」和「K」取決於輸入陣列 a 的順序。「C」是 row-major (C 風格),「F」是 column-major (Fortran 風格) 記憶體表示法。「A」(任何)表示如果 a 是 Fortran 連續的則為「F」,否則為「C」。「K」(保留)保留輸入順序。預設為「C」。

返回:
outndarray

a 的陣列解釋。如果輸入已經是 ndarray,則不執行複製。如果 a 是 ndarray 的子類別,則返回基底類別 ndarray。

引發:
ValueError

如果 a 包含 NaN(非數字)或 Inf(無限大),則引發 ValueError。

另請參閱

asarray

建立陣列。

asanyarray

類似的函數,會傳遞子類別。

ascontiguousarray

將輸入轉換為 contiguous 陣列。

asfortranarray

將輸入轉換為具有 column-major 記憶體順序的 ndarray。

fromiter

從 iterator 建立陣列。

fromfunction

透過在網格位置上執行函數來建構陣列。

範例

>>> import numpy as np

將列表轉換為陣列。如果所有元素都是有限的,則 asarray_chkfiniteasarray 相同。

>>> a = [1, 2]
>>> np.asarray_chkfinite(a, dtype=float)
array([1., 2.])

如果 array_like 包含 Nans 或 Infs,則引發 ValueError。

>>> a = [1, 2, np.inf]
>>> try:
...     np.asarray_chkfinite(a)
... except ValueError:
...     print('ValueError')
...
ValueError