使用python實現(xiàn)時間序列白噪聲檢驗方式
白噪聲檢驗也稱為純隨機性檢驗, 當數(shù)據(jù)是純隨機數(shù)據(jù)時,再對數(shù)據(jù)進行分析就沒有任何意義了, 所以拿到數(shù)據(jù)后最好對數(shù)據(jù)進行一個純隨機性檢驗
acorr_ljungbox(x, lags=None, boxpierce=False) # 數(shù)據(jù)的純隨機性檢驗函數(shù)
lags為延遲期數(shù),如果為整數(shù),則是包含在內(nèi)的延遲期數(shù),如果是一個列表或數(shù)組,那么所有時滯都包含在列表中最大的時滯中
boxpierce為True時表示除開返回LB統(tǒng)計量還會返回Box和Pierce的Q統(tǒng)計量
返回值:
lbvalue:測試的統(tǒng)計量
pvalue:基于卡方分布的p統(tǒng)計量
bpvalue:((optionsal), float or array) ? 基于 Box-Pierce 的檢驗的p統(tǒng)計量
bppvalue:((optional), float or array) ? 基于卡方分布下的Box-Pierce檢驗的p統(tǒng)計量
代碼實現(xiàn):
from statsmodels.stats.diagnostic import acorr_ljungboxacorr_ljungbox(b.salesVolume, lags = [6, 12],boxpierce=True)
由輸出結(jié)果可以看到,不管是使用哪個統(tǒng)計量,p值都很大,所以該數(shù)據(jù)無法拒絕原假設(shè),即認為該數(shù)據(jù)是純隨機數(shù)據(jù)
補充知識:用python實現(xiàn)時間序列單位根檢驗
在時間序列的建模中,需要先對數(shù)據(jù)進行平穩(wěn)性檢驗,常用的有DF檢驗、ADF檢驗和PP檢驗,文章實例ADF檢驗
注:檢驗的P值是只在一個假設(shè)檢驗問題中,利用樣本觀測值能夠作出拒絕原假設(shè)的最小顯著性水平。
如果a >= p, 則在顯著性水平a 下拒絕H0
如果a < p,則在顯著性水平a下接受H0
實現(xiàn)方法一:
from arch.unitroot import ADFADF(data)
ADF檢驗的原假設(shè)是不平穩(wěn),這里P值近似為0 , 所以拒絕原假設(shè),認為序列平穩(wěn)。
from statsmodels.stats.diagnostic import unitroot_adfunitroot_adf(b.salesVolume)
這里包含了檢驗值、p-value、滯后階數(shù)、自由度等信息。我們看到了檢驗統(tǒng)計量為?5.954367776923936,小于1%的臨界值-4.01203360058309,,即p值遠小于0.01,因此我們拒絕原假設(shè),認為該時間序列是平穩(wěn)的。(這里原假設(shè)是存在單位根,即時間序列為非平穩(wěn)的。)
以上這篇使用python實現(xiàn)時間序列白噪聲檢驗方式就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. SSM框架整合JSP中集成easyui前端ui項目開發(fā)示例詳解2. 詳解瀏覽器的緩存機制3. python中的class_static的@classmethod的巧妙用法4. ASP中if語句、select 、while循環(huán)的使用方法5. React優(yōu)雅的封裝SvgIcon組件示例6. asp文件用什么軟件編輯7. 詳解Python函數(shù)print用法8. 使用本機IIS?Express開發(fā)Asp.Net?Core應(yīng)用圖文教程9. React中使用TS完成父組件調(diào)用子組件的操作方法10. 微信開發(fā) 網(wǎng)頁授權(quán)獲取用戶基本信息
