如何在Python中使用np isinf()函数

1,761 阅读2分钟

isinf()函数定义在numpy库下,可以导入numpy作为np,我们可以创建一个多维数组并推导出其他数学统计。

Numpy isinf

np.isinf()是numpy库中的一个函数,用于测试元素的正负无限性。isinf()方法返回一个与x相同形状的布尔数组,当x==+/-inf时为真,否则为假。

Numpy isinf()函数测试一个元素是正无穷还是负无穷。 isinf()函数需要两个参数,其中一个是可选的。我们也可以通过数组来检查数组中存在的项目是否属于+ve infinity或-ve类。如果不是+ve或-ve无穷大,该方法返回False,否则返回True。因此,isinf()函数返回布尔值。

语法

numpy.isinf(array or the scalar value, out(output array))

第二个参数是可选的。

参数

Numpy isinf()函数需要两个参数,其中一个参数是可选的。

第一个参数是一个输入数组,或者我们要检查的输入是+ve infinity还是-ve infinity。

第二个参数是一个n维数组,它是可选的。它是一个输出数组,与结果放在一起。

返回值

isinf()函数返回一个布尔数组,如果我们传递一个数组和布尔值true,则返回结果;如果我们传递一个标量值,则返回false。

关于Python中isinf()方法的示例程序

编写程序来展示Python中isinf()函数的工作:

# app.py

import numpy as np

print("Infinity - : ", np.isinf(933), "\n")  # Scalar Values

print("Infinity - : ", np.isinf(444), "\n")

print("Infinity - :", np.isinf(np.inf), "\n")  # checking for infinity value

print("Infinity - :", np.isinf(np.NINF), "\n")

输出

python3 app.py
Infinity - :  False

Infinity - : False

Infinity - : True

Infinity - : True

在这个例子中,我们已经看到,在函数isinf()中绕过两个标量值,我们得到的是False,因为它不代表任何正负无穷大。不过,使用无穷大的值,我们得到的是True

让我们看看另一个例子:

让我们使用np arange()函数创建一个numpy数组

写一个程序,在数学模块值上使用isinf()函数。

请看下面的代码:

# app.py

import math as m

# For finite values
print("Infinity:- ", m.isinf(999))
print("Infinity:- ", m.isinf(-999))

# For not a number and +ve infinity and -ve infinity values
print("Infinity:- ", m.isinf(float("nan")))
print("Infinity:- ", m.isinf(float("inf")))
print("Infinity:- ", m.isinf(float("-inf")))

输出

python3 app.py
Infinity:-  False
Infinity:-  False
Infinity:-  False
Infinity:-  True
Infinity:-  True

在这个例子中,我们可以看到我们使用了Python数学模块,根据函数中传递的值,输出值得到了不同的假的集合。

就是这样了。

另见

Numpy转置

Numpy iscomplex()

Numpy save()

Numpy argwhere()

Numpy isrealobj()