一、np.isinf函數
在NumPy中,np.isinf函數用於檢查給定數組中的元素是否為正無窮、負無窮或非無窮。如果數組中的元素是無窮,函數返回True,否則False。
以下是np.isinf函數的基本語法:
np.isinf(x, out=None, where=True, casting='same_kind', order='K', dtype=None)
參數說明:
x:數組或標量。
out:輸出數組,可選參數。
where:值為True時,僅在True的相應位置計算;值為False時,在False的相應位置計算。
casting:字元串,表示數組如何強制轉換到另一個dtype。
order:字元,表示數組在內存中的存儲順序。
dtype:輸入數據的數據類型。
示例代碼:
import numpy as np
x = np.array([2e30, 3, np.inf, np.nan, np.PINF])
print("np.isinf(x): ", np.isinf(x))
1、np.isinf函數實現了對給定數組中元素是否為無窮的檢查。
2、函數返回一個布爾數組,數組中每個元素都對應是否是無窮。
3、np.isinf函數參數詳解:
- x:數組或標量。
- out:輸出數組,可選參數。
- where:值為True時,僅在True的相應位置計算;值為False時,在False的相應位置計算。
- casting:字元串,表示數組如何強制轉換到另一個dtype。
- order:字元,表示數組在內存中的存儲順序。
- dtype:輸入數據的數據類型。
二、np.isinf(data)
np.isinf(data)函數用於檢查給定數據是否為正無窮、負無窮或非無窮。如果數據是無窮,函數返回True,否則False。
以下是np.isinf(data)函數的基本語法:
np.isinf(data)
參數說明:
data:輸入數據。
示例代碼:
import numpy as np
data = 2.0
print("np.isinf(data): ", np.isinf(data))
1、np.isinf(data)函數實現對給定數據是否為無窮的檢查。
2、函數返回一個布爾值,對應給定數據是否為無窮。
3、參數data是輸入的數據。
三、np.isinfinite
np.isinfinite函數用於檢查給定數組中的元素是否為無窮。如果數組中的元素是無窮,函數返回True,否則False。
以下是np.isinfinite函數的基本語法:
np.isinfinite(x, out=None, where=True, casting='same_kind', order='K', dtype=None)
參數說明:
x:數組或標量。
out:輸出數組,可選參數。
where:值為True時,僅在True的相應位置計算;值為False時,在False的相應位置計算。
casting:字元串,表示數組如何強制轉換到另一個dtype。
order:字元,表示數組在內存中的存儲順序。
dtype:輸入數據的數據類型。
示例代碼:
import numpy as np
x = np.array([2e30, 3, np.inf, np.nan, np.PINF])
print("np.isinfinite(x): ", np.isinfinite(x))
1、np.isinfinite函數實現了對給定數組中元素是否為無窮的檢查。
2、函數返回一個布爾數組,數組中每個元素都對應是否是無窮。
3、np.isinfinite函數參數詳解:
- x:數組或標量。
- out:輸出數組,可選參數。
- where:值為True時,僅在True的相應位置計算;值為False時,在False的相應位置計算。
- casting:字元串,表示數組如何強制轉換到另一個dtype。
- order:字元,表示數組在內存中的存儲順序。
- dtype:輸入數據的數據類型。
四、應用場景舉例
1、判斷運算結果是否為無窮。
import numpy as np
# 計算100次階乘
factorials = np.arange(100)
factorials = np.cumprod(factorials)
inf_check = np.isinf(factorials)
# 輸出計算結果
for i in range(len(factorials)):
if inf_check[i]:
print(i, 'inf')
break
print(len(str(factorials[i])))
2、找到數組中的無窮數。
import numpy as np
# 檢查數組中是否有無窮數
x = np.array([2e30, 3, np.inf, np.nan, np.PINF])
inf_check = np.isinf(x)
# 輸出數組中的無窮數
for i in range(len(x)):
if inf_check[i]:
print(x[i])
3、替換所有無窮數。
import numpy as np # 將數據中的無窮數替換成指定值 x = np.array([2e30, 3, np.inf, np.nan, np.PINF]) x[np.isinf(x)] = np.nan print(x)
五、總結
np.isinf函數主要用於檢查給定數組或標量中的元素是否為正無窮、負無窮或非無窮,np.isinf(data)函數用於檢查給定數據是否為正無窮、負無窮或非無窮,np.isinfinite函數用於檢查給定數組中的元素是否為正無窮或負無窮。以上三個函數都返回一個布爾數組,數組中每個元素都對應是否是無窮。np.isinf函數和np.isinfinite函數參數相同,都包括x(數組或標量)、out(輸出數組)、where(True/False)、casting、order和dtype。np.isinf函數和np.isinfinite函數在應用場景中常用於判斷運算結果是否為無窮、找到數組中的無窮數和替換所有無窮數等操作。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/280325.html
微信掃一掃
支付寶掃一掃