時間序列之加權移動平均

2021-02-20 大數據專家傅一航

前面介紹了一次移動平均和二次移動平均,其實,不管是一次還是二次,都是可以算是加權移動平均的特殊情況。

 

加權移動平均(WeightedMoving Average),取前N期的加權平均值作為預測值,而且前N期的權重不一定相等。

 

加權移動平均的計算公式如下:

其中為權重係數,其總和應該為1。

由公式可知,一次移動平均其實是加權移動平均的特殊情況。

 

加權移動平均有兩個重要的問題考慮:

1)  如何選擇合適的期數N。這個選擇原則與一次移動平均相同,在此不再贅述。

2)  如何確定各期最合適的權重係數。一般情況下,遵循時間越近權重越大的原則。

 

和一次移動平均一樣,也只能夠預測下一期的序列值,適用於變化不大的序列,實現修勻(或平滑)原有序列,以便找到序列的長期趨勢。

 

在加權移動平均中,期數N的選擇和權重係數的選擇都很重要。

在實際應用中,可以採用規劃求解來找到最優的權重係數,以使得MAPE或SSE最小。 

 

如下,某公司收集了每年的煤炭產量,現要預測一下2008年的煤炭產量。

操作步驟如下:

1)  假定間隔為N=3,以及各期權重a,b,c的初始值,且權重和為1(即在G2輸入「=Sum(D2:F2)」)。

2)  計算加權移動平均。在C7單元格輸入公式」=$D$2*B4+$E$2*B5+$F$2*B6」,注意平滑係數要採用絕對引用,然後公式向下拉。

3)  計算誤差平方。在D7單元格輸入公式「=(C7-B7)^2」,公式向下拉。

4) 計算APE和MAPE。在E7單元格輸入「=ABS(C7-B7)/B7」,公式向下拉;在G9單元格輸入「=AVERAGE(E7:E51)」,得到MAPE。

 

圖8加權移動平均計算

 

5)  下面採用規劃求解得到權重係數的最優值(見以下規劃求解圖)。

 

圖9規劃求解求最佳權重係數

 

得到在N=3時的規劃求解得到最優權重係數:

 

仔細觀察權重系統,發現係數a=0,說明前第3期的數據對於預測幾乎沒有價值,因此考慮優化,改取N=2即可。

6) 取N=2,重新如上計算,規劃求解,得到最優的加權移動平均結果。

7) 評估預測值的準確度MAPE為3.99%,滿足要求。

8) 進行預測。公式向下拉到C52單元格,得到2008年的煤炭產量的預測值。

 

圖10加權移動平均計算(優化後)

 

 

▽ 戳此看往期文章

時間序列:

01 時間序列分析方法索引

02 時間序列的因素分析法

03 時間序列之一次移動平均

04 時間序列之二次移動平均

大數據的哲學觀  事物發展都是有規律的

如何讓數據「說話」 數據解讀能力培養

大數據的核心價值是什麼?探索事物規律和特徵

一切不以應用為導向的大數據都是在耍流氓 

大數據建模五步法 選擇-訓練-評估-優化-應用

教你如何優化出好模型!好模型是優化出來的

大數據職位體系 系統類+應用類

大數據職位發展通道 大數據職位的發展通道

大數據變革之工具變革 探索客觀事物的工具

大數據變革之思維變革 認知事物的新思維

大數據變革之文化變革 尊重事實的數據文化

 

 

●文章作者簡介

傅一航,大數據專家。專注於大數據分析、大數據挖掘等應用技術,及大數據系統解決方案。致力於將大數據技術應用於政府、通信、金融、航空、電商、網際網路等領域。聯繫作者: 2509626286@qq.com。

相關焦點

  • 小白學數據 除了大姨媽周期時間序列分析還有什麼用
    你知不知道,這張圖其實就是一個時間序列圖,你看圖預測未來幾個月女票的大姨媽時間就叫做時間序列分析…… 咳咳,言歸正傳,時間序列分析是一種廣泛應用的數據處理統計方法,除了計算大姨媽周期,在實際很生活還有很多應用,小白今天就來帶大家探探究竟。 小白問:時間序列分析就是分析時間的麼?
  • 乾貨分享 | 時間序列回歸預測模型——ARIMA
    (1)自回歸模型(AR)在時序分析中,描述時間序列{Xt}自身某一時刻和前p個時刻之間相互關係的模型稱自回歸模型,其形式為:Xt = a1Xt-1 + a2Xt-2 + ... + apXt-p + εt其中,aj 為參數,{εt} 為白噪聲,它反映了所有其它隨機因素的幹擾,其中p為模型階次,即Xt由前p個值決定。
  • 關於時間序列分析,你要知道這些
    在這裡需要強調一點的是,時間序列分析並不是關於時間的回歸,它主要是研究自身的變化規律。01. 時間序列預測有什麼特點?※ 時間序列表現出季節趨勢※ 基於線性回歸模型的假設,對於時間序列預測是不成立的※ 時間序列模型依賴於事件發生的先後順序02.
  • python時間序列分析之_用pandas中的rolling函數計算時間窗口數據
    因此,引出滑動窗口(移動窗口)的概念,簡單點說,為了提升數據的可靠性,將某個點的取值擴大到包含這個點的一段區間,用區間來進行判斷,這個區間就是窗口。如下面的示意圖所示,其中時間序列數據代表的是15日每日的溫度,現在我們以3天為一個窗口,將這個窗口從左至右依次滑動,統計出3天的平均值作為這個點的值,比如3號的溫度就是1號、2號、3號的平均溫度,通過示意圖我們已經理解了滑動窗口,下面我們就看看pandas中使用的函數及各參數的含義。
  • 時間序列分析(三):平穩時間序列分析之數據準備
    平穩時間序列是時間序列中一類重要的時間序列,對於該時間序列,有一套非常成熟的平穩序列建模方法,這也是本節中將重點介紹的部分。對於非平穩序列,可以通過差分、提取確定性成分等方法,將轉化成平穩序列,再運用平穩序列建模方法進行建模。在實際操作中,由於樣本數據的匱乏,要根據樣本數據要找到生成樣本的真實隨機過程基本是不太可能的。
  • 利用深度學習進行時間序列預測
    介紹長期以來,我聽說時間序列問題只能用統計方法(AR[1],AM[2],ARMA[3],ARIMA[4])。這些技術通常被數學家使用,他們試圖不斷改進這些技術來約束平穩和非平穩的時間序列。幾個月前,我的一個朋友(數學家、統計學教授、非平穩時間序列專家)提出讓我研究如何驗證和改進重建恆星光照曲線的技術。
  • SAS時間序列模型預測未來航班數量
    是以時間序列所能反映的社會經濟現象的發展過程和規律性,進行引伸外推,預測其發展趨勢的方法。時間序列建模步驟:1. 時間序列平穩性檢驗:如果一個時間序列的概率分布與時間無關,則成為平穩序列。2.時間序列平穩化和零均值化:時間序列預測模型是建立在平穩序列的基礎上的,由於日常所見的數據序列大多是非平穩序列,故需要轉換為平穩序列,轉換後需要進行零均值化處理。3.
  • r語言檢驗時間序列平穩性_r中時間序列平穩怎麼檢驗 - CSDN
    分解非季節性數據非季節性時間序列由趨勢分量和不規則分量組成。分解時間序列涉及嘗試將時間序列分成這些分量,即估計趨勢分量和不規則分量。為了估計可以使用加性模型描述的非季節性時間序列的趨勢分量,通常使用平滑方法,例如計算時間序列的簡單移動平均值。
  • 「醫學圖像處理」MRI T1, T2 PD-加權成像
    通過運行具有不同權重的不同序列,可以選擇要成像區域中的不同對比度。主要有一下三個序列:T1加權:最大化T1對比度顯示T2加權:最大化T2對比度顯示質子密度PD加權:氫質子密度顯示當然還有更加複雜的序列,比如 FLAIR:fluid attenuated
  • 時間序列分析法中,既看不出數據的離散程度,也不能反映近、遠期
    時間序列分析法中,既看不出數據的離散程度,也不能反映近、遠期數據變化趨勢的方法是(  )。  A、簡單平均法  B、移動平均法  C、加權移動平均法  D、指數平滑法   建設工程教育網2021年房地產估價師考試新課已開通,網校總結多年成功輔導經驗,從學員實際需求出發,結合房地產估價師考試命題規律、重點、難點,融入先進的教學理念
  • ggplot2繪製時間序列變化圖
    ggplot2繪製時間序列變化圖疫情時間序列變化涉及主要方法:list.files遍歷文件read_excel讀取EXCEL文件for循環讀取文件夾內所有EXCELymd時間提取rbind/cbind數據框行列的合併ggplot2製圖labs標註X軸、Y軸標題
  • Pandas處理時間序列數據的20個關鍵知識點
    時間序列數據有許多定義,它們以不同的方式表示相同的含義。一個簡單的定義是時間序列數據包括附加到順序時間點的數據點。時間序列數據的來源是周期性的測量或觀測。許多行業都存在時間序列數據。舉幾個例子:一段時間內的股票價格每天,每周,每月的銷售額流程中的周期性度量一段時間內的電力或天然氣消耗率在這篇文章中,我將列出20個要點,幫助你全面理解如何用Pandas處理時間序列數據。1.不同形式的時間序列數據時間序列數據可以是特定日期、持續時間或固定的自定義間隔的形式。時間戳可以是給定日期的一天或一秒,具體取決於精度。
  • 時間序列模型
    但人家的確是這麼設計的模型,先忍一忍。AR模型AR模型中文叫做自回歸模型,意思就是變量自身的數值是自身變量歷史數值的線性組合。上個公式就明白了:這裡的時間序列變量是,信號處理裡習慣叫做white noise process。基本進行數據擬合的模型都會加這麼個噪音。加上這個噪音,一個巨傻無比的線性函數就變成了高大上的隨機過程了。
  • Python中的時間序列數據可視化的完整指南
    時間序列數據在許多不同的行業中都非常重要。它在研究、金融行業、製藥、社交媒體、網絡服務等領域尤為重要。對時間序列數據的分析也變得越來越重要。在分析中有什麼比一些好的可視化效果更好呢?沒有一些視覺效果,任何類型的數據分析都是不完整的。因為一個好的情節比20頁的報告更能讓你理解。因此,本文是關於時間序列數據可視化的。
  • 什麼時候需要加權數據?
    最近有看到用戶在答疑群裡提問到「加權數據」的問題,才發現對於剛剛開始接觸數據分析的人來說,數據格式這塊內容似乎很容易出現問題。於是SPSSAU決定寫下這篇教程,希望通過簡單的講解,幫助大家更好地理解。按照正確的格式上傳數據,是展開下一步分析工作的基本前提。一般來說,有兩種數據格式:原始數據、加權數據。
  • R語言ARIMA集成模型預測時間序列分析
    p=18493 本文我們使用4個時間序列模型對每周的溫度序列建模。第一個是通過auto.arima獲得的,然後兩個是SARIMA模型,最後一個是Buys-Ballot方法。我們使用以下數據k=620n=nrow(elec)futu=(k+1):ny=electricite$Load[1:k]plot(y,type="l")我們開始對溫度序列進行建模(溫度序列對電力負荷的影響很大)
  • 平面薄片質心公式詳解,加權平均的思路
    其本質是加權平均。質心:質量的中心,指物質系統上被認為質量集中於此的一個假想點。重心:物體各部分所受重力之合力的作用點。均勻重力場中,質心就是重心複雜物體的重心,可以使用懸掛法。平均一個20分鐘的課程,要準備劇本8小時以上,複雜的課程要準備一星期。② 形象,透徹。對於難以用語言表達的數學過程,我們會用動畫展示。後續還考慮採用全景圖、可互動AR等等。這樣能徹底學懂每個細節。③ 不斷迭代。根據學生的反饋,及時對內容進行調整。
  • 時間序列基本概念
    平穩時間序列是時間序列中一類重要的時間序列,對於該時間序列,有一套非常成熟的平穩序列建模方法,這也是本節中將重點介紹的部分。對於非平穩序列,可以通過差分、提取確定性成分等方法,將轉化成平穩序列,再運用平穩序列建模方法進行建模。在實際操作中,由於樣本數據的匱乏,要根據樣本數據要找到生成樣本的真實隨機過程基本是不太可能的。