1
我需要計算一個加權移動平均無循環和存儲信息的過程。重量可能是線性的,因此舊樣本的權重小於新樣本的權重。如何高效地計算加權移動平均數
例如,使用20個樣本的窗口,我的權重向量是:
[1 2 3 4 5 ... 20]
我使用下面的公式來計算移動平均值:
newMean = currMean + (newSample - currMean)/WindowSize
現在我需要「注入」體重。我可以知道: 1.我正在考慮哪個樣本(第14 ....第26 ....),我可以算。 當然2,我可以知道currMean
我能知道,但我不想做的事: 1.存儲所有樣本(在我的情況下,他們是1200 X 1980年×3矩陣,我根本就不存儲它們)。
我目前使用Matlab,但我真的不需要代碼,只是概念,如果它存在。
謝謝。
我只是使用卷積和構造你的過濾器,使所有的權重總和爲1.即'(1:20)./ sum(1:20)' – Suever
嗯我使用非常大的矩陣,我不我不認爲卷積對我有好處。我的意思是......我現在只是使用3個簡單的數學運算,爲什麼我只爲重量引入卷積? – Leo91
卷積確實*精確*您正在嘗試做什麼,並且非常有效地做到這一點 – Suever