在NumPy 和SciPy 計算運行平均值
在資料分析中,計算運行平均值,也稱為移動平均值,是一種常見的方法平滑時間序列波動的操作。此技術涉及沿著輸入數組滑動指定大小的窗口,並在每一步計算窗口內值的平均值。
NumPy Approach
NumPy, Python 中著名的科學計算庫,提供了一種計算運行平均值的便捷方法。利用 np.convolve 函數,我們可以有效地應用卷積運算來實現這一點。程式碼如下:
import numpy as np # Define the input array array = np.array([1, 2, 3, 4, 5]) # Specify the window size window_size = 3 # Calculate the running mean using convolution running_mean = np.convolve(array, np.ones(window_size) / window_size, mode='valid')
理解卷積運算
卷積運算本質上是對視窗中的值進行加權求和。對於運行平均值,我們使用統一內核,其中每個權重為 1/window_size。這確保了視窗內的所有值對計算平均值的貢獻相同。
處理邊界效應
np.convolve 中的模式參數決定了在計算過程中如何處理邊界效應。卷積。 「有效」模式傳回捲積運算對陣列大小沒有影響的結果。這意味著運行平均值的長度等於輸入數組減去視窗大小,從而有效地忽略邊緣的值。如果您需要以不同的方式處理邊界效應,您可以探索 np.convolve 支援的其他模式,例如「full」或「same」。
因此,透過利用 NumPy 的捲積功能,我們可以有效地計算運行一維數組的平均值,為您提供輕鬆平滑和分析時間序列資料的工具。
以上是如何在 NumPy 中高效計算運行平均值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!