識別 NumPy 數組中最接近的值
確定 NumPy 數組中最接近指定值的元素可能是一項常見任務。 np.find_nearest() 函數提供了一種方便的方法來定位此類值。
自訂函數方法
以下是find_nearest() 函數的自訂NumPy 實作:
import numpy as np def find_nearest(array, value): array = np.asarray(array) idx = (np.abs(array - value)).argmin() return array[idx]
此函數採用陣列與目標值作為參數。它利用 NumPy 的 np.abs() 函數來計算數組中每個元素與目標值之間的絕對差。然後使用 argmin() 函數來確定最小絕對差的索引位置。
範例用法
考慮以下NumPy 陣列:
array = np.random.random(10) print(array) # [ 0.21069679 0.61290182 0.63425412 0.84635244 0.91599191 0.00213826 # 0.17104965 0.56874386 0.57319379 0.28719469]
要搜尋最接近0.5 的值,我們可以呼叫find_nearest()函數:
print(find_nearest(array, value=0.5)) # 0.568743859261
函數正確辨識數組中與目標值0.5 差異最小的元素。
以上是如何找出 NumPy 陣列中最近的值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!