numpy.asarray_chkfinite#
- numpy.asarray_chkfinite(a, dtype=None, order=None)[源码]#
将输入转换为数组,并检查 NaN 或 Inf。
- 参数:
- a类数组对象
输入数据,任何可以转换为数组的形式。这包括列表、元组列表、元组、元组列表、元组和 ndarray。成功要求不包含 NaN 或 Inf。
- dtype数据类型,可选
默认情况下,数据类型是从输入数据推断的。
- order{‘C’, ‘F’, ‘A’, ‘K’}, optional
输出的内存布局。“C”给出行优先布局(C 风格),“F”给出列优先布局(Fortran 风格)。“C”和“F”将在需要时复制以确保输出格式。“A”(任意)等同于“F”,如果输入 a 是非连续的或 Fortran 连续的,否则它等同于“C”。与“C”或“F”不同,“A”不保证结果是连续的。“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_chkfinite与asarray相同。>>> a = [1, 2] >>> np.asarray_chkfinite(a, dtype=float) array([1., 2.])
如果 array_like 包含 NaN 或 Inf,则引发 ValueError。
>>> a = [1, 2, np.inf] >>> try: ... np.asarray_chkfinite(a) ... except ValueError: ... print('ValueError') ... ValueError