numpy.asarray_chkfinite#

numpy.asarray_chkfinite(a, dtype=None, order=None)[源代码]#

将输入转换为数组,检查是否为 NaN 或 Inf.

参数:
aarray_like

输入数据,以任何可以转换为数组的形式.这包括列表,元组列表,元组,元组的元组,列表的元组和 ndarray.成功需要没有 NaN 或 Inf.

dtypedata-type,可选

默认情况下,数据类型是从输入数据推断出来的.

order{‘C’, ‘F’, ‘A’, ‘K’},可选

内存布局.’A’和’K’取决于输入数组a的顺序.’C’行优先(C风格),’F’列优先(Fortran风格)内存表示.如果 a 是Fortran连续的,则’A’(任何)表示’F’,否则’C’ ‘K’(保留)保留输入顺序 默认为 ‘C’.

返回:
outndarray

a 的数组解释.如果输入已经是 ndarray,则不执行任何复制.如果 a 是 ndarray 的子类,则返回基类 ndarray.

提出:
ValueError

如果 a 包含 NaN(非数字)或 Inf(无穷大),则引发 ValueError.

参见

asarray

创建数组.

asanyarray

传递子类的类似函数.

ascontiguousarray

将输入转换为连续数组.

asfortranarray

将输入转换为具有列优先内存顺序的ndarray.

fromiter

从迭代器创建一个数组.

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