最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

畢業(yè)設(shè)計(jì) 大數(shù)據(jù)銷量數(shù)據(jù)預(yù)測(cè)可視化系統(tǒng)

2023-02-23 10:28 作者:丹成學(xué)長(zhǎng)  | 我要投稿

0 前言

?? 這兩年開(kāi)始畢業(yè)設(shè)計(jì)和畢業(yè)答辯的要求和難度不斷提升,傳統(tǒng)的畢設(shè)題目缺少創(chuàng)新和亮點(diǎn),往往達(dá)不到畢業(yè)答辯的要求,這兩年不斷有學(xué)弟學(xué)妹告訴學(xué)長(zhǎng)自己做的項(xiàng)目系統(tǒng)達(dá)不到老師的要求。

為了大家能夠順利以及最少的精力通過(guò)畢設(shè),學(xué)長(zhǎng)分享優(yōu)質(zhì)畢業(yè)設(shè)計(jì)項(xiàng)目,今天要分享的是

?? ?基于大數(shù)據(jù)的銷量數(shù)據(jù)預(yù)測(cè)

??學(xué)長(zhǎng)這里給一個(gè)題目綜合評(píng)分(每項(xiàng)滿分5分)

  • 難度系數(shù):3分

  • 工作量:3分

  • 創(chuàng)新點(diǎn):3分

畢設(shè)幫助,選題指導(dǎo),技術(shù)解答,歡迎打擾,見(jiàn)B站個(gè)人主頁(yè)

https://space.bilibili.com/33886978


餐廳銷量預(yù)測(cè)

  • 一、建模流程

  • 二、模型簡(jiǎn)介


    • 2.1自回歸模型AR

    • 2.2移動(dòng)平均模型MA

    • 2.3自回歸移動(dòng)平均模型ARMA

    • 2.ARIMA模型介紹


  • 三、模型識(shí)別

  • 四、模型檢驗(yàn)


    • (1)用途

    • (1)什么是純隨機(jī)序列?

    • (2)檢驗(yàn)純隨機(jī)性

    • (1)用途

    • (1)什么是平穩(wěn)序列?

    • (2)檢驗(yàn)平穩(wěn)性

    • 4.1半穩(wěn)性檢驗(yàn)


    • ◆白噪聲檢驗(yàn)(純隨機(jī)性檢驗(yàn))


  • 五、Python實(shí)戰(zhàn)


    • (一)導(dǎo)入工具及數(shù)據(jù)

    • (二)原始序列的檢驗(yàn)

    • (三)一階差分序列的檢驗(yàn)

    • (四)定階(參數(shù)調(diào)優(yōu))

    • (五)建模與預(yù)測(cè)

一、建模流程


二、模型簡(jiǎn)介

2.ARIMA模型介紹

2.1自回歸模型AR

自回歸模型描述當(dāng)前值與歷史值之間的關(guān)系,用變量自身的歷史時(shí)間數(shù)據(jù)對(duì)自身進(jìn)行預(yù)測(cè)。自回歸模型必須滿足平穩(wěn)性的要求。

自回歸模型首先需要確定一個(gè)階數(shù)p,表示用幾期的歷史值來(lái)預(yù)測(cè)當(dāng)前值。p階自回歸模型的公式定義為: ?

在這里插入圖片描述

上式中yt是當(dāng)前值,u是常數(shù)項(xiàng),p是階數(shù) ri是自相關(guān)系數(shù),et是誤差。

自回歸模型有很多的限制: ? 1、自回歸模型是用自身的數(shù)據(jù)進(jìn)行預(yù)測(cè) ? 2、時(shí)間序列數(shù)據(jù)必須具有平穩(wěn)性 ? 3、自回歸只適用于預(yù)測(cè)與自身前期相關(guān)的現(xiàn)象

2.2移動(dòng)平均模型MA

移動(dòng)平均模型關(guān)注的是自回歸模型中的誤差項(xiàng)的累加 ,移動(dòng)平均法能有效地消除預(yù)測(cè)中的隨機(jī)波動(dòng),q階自回歸過(guò)程的公式定義如下: ?

在這里插入圖片描述

2.3自回歸移動(dòng)平均模型ARMA

自回歸模型AR和移動(dòng)平均模型MA模型相結(jié)合,我們就得到了自回歸移動(dòng)平均模型ARMA(p,q),計(jì)算公式如下: ?

在這里插入圖片描述

三、模型識(shí)別

在這里插入圖片描述

? 自相關(guān)函數(shù)ACF:時(shí)間序列觀測(cè)值與其過(guò)去的觀測(cè)值之間的線性相關(guān)性。

偏自相關(guān)函數(shù)PACF:在給定中間觀測(cè)值的條件下,時(shí)間序列觀測(cè)值預(yù)期過(guò)去的觀測(cè)值之間的線性相關(guān)性

拖尾和截尾 ? 拖尾指序列以指數(shù)率單調(diào)遞減或震蕩衰減,而截尾指序列從某個(gè)時(shí)點(diǎn)變得非常?。??

在這里插入圖片描述

四、模型檢驗(yàn)

4.1半穩(wěn)性檢驗(yàn)

(1)用途

建模之前,檢驗(yàn)時(shí)間序列數(shù)據(jù)是否滿足平穩(wěn)性,才能進(jìn)-步建模

(1)什么是平穩(wěn)序列?

如果時(shí)間序列在某-常數(shù)附件波動(dòng)且波 動(dòng)范圍有限,數(shù)學(xué)表達(dá)即常數(shù)均值和常數(shù)方差,并且延遲k期的序列變量的自協(xié)方差和自相關(guān)系數(shù)是相等的,則稱該序列為平穩(wěn)序列。

(2)檢驗(yàn)平穩(wěn)性

方法一:圖檢驗(yàn)(偏主觀) ? 時(shí)序圖檢驗(yàn):在某-常數(shù)附近波動(dòng)且波動(dòng)范圍有限。 ? 自相關(guān)圖檢驗(yàn):平穩(wěn)序列具有短期相關(guān)性,但隨著延遲期數(shù)k的增加,自相關(guān)系數(shù)會(huì)快速衰減趨向于零。 ? 方法二:單位根檢驗(yàn) ? 不存在單位根即是平穩(wěn)序列。

◆白噪聲檢驗(yàn)(純隨機(jī)性檢驗(yàn))

(1)用途

建模之前,檢驗(yàn)數(shù)據(jù)是否滿足白噪聲檢驗(yàn),非白噪聲才能進(jìn)一步建模。 ? 建模后,檢驗(yàn)殘差是否滿足白噪聲檢驗(yàn),通過(guò)檢驗(yàn),建模才成立。

(1)什么是純隨機(jī)序列?

如果-個(gè)序例是純隨機(jī)序列,那么序列值之間沒(méi)有任何關(guān)系,則自相關(guān)系數(shù)為零(理論)或接近于零(實(shí)際) .

(2)檢驗(yàn)純隨機(jī)性

方法- -:圖檢驗(yàn) ? 自相關(guān)圖檢驗(yàn):自相關(guān)系數(shù)為零或接近于零 ? QQ圖檢驗(yàn):大部分點(diǎn)在直線上,則數(shù)據(jù)符合正態(tài)分布 ? 方法二: D-W檢驗(yàn)或L .B統(tǒng)計(jì)量檢驗(yàn)

五、Python實(shí)戰(zhàn)

(一)導(dǎo)入工具及數(shù)據(jù)

? ? ?#導(dǎo)入數(shù)據(jù) ? ?sale=pd.read_excel("C://Python//分享資料2//arima_data.xls") ? ?print(sale.head()) ? ?print(sale.info())


查看數(shù)據(jù) ?

在這里插入圖片描述

?

在這里插入圖片描述

共有37個(gè)整數(shù)型樣本數(shù)據(jù)

(二)原始序列的檢驗(yàn)

? ? ?#時(shí)序圖觀看是否平穩(wěn)序列 ? ?plt.figure(figsize=(10,5)) ? ?sale['銷量'].plot() ? ?plt.legend(['銷量']) ? ?plt.show()

在這里插入圖片描述

上圖為一個(gè)單調(diào)遞增的序列,說(shuō)明數(shù)據(jù)是不平穩(wěn)的。

自相關(guān)圖

? ? ?# 查看自相關(guān)圖 ? ?sale['銷量']=sale['銷量'].astype('float') ? ?plot_acf(sale['銷量'],lags=35).show() ? ?#解讀:自相關(guān)系數(shù)長(zhǎng)期大于零,沒(méi)有趨向于零,說(shuō)明序列間具有很強(qiáng)的長(zhǎng)期相關(guān)性。


在這里插入圖片描述

平穩(wěn)性檢驗(yàn)

? ? ?print('原始序列的ADF檢驗(yàn)結(jié)果為',ADF(sale['銷量'])) ? ?#解讀:P值(第二個(gè))大于顯著性水平α(0.05),接受原假設(shè)(非平穩(wěn)序列),說(shuō)明原始序列是非平穩(wěn)序列。

在這里插入圖片描述

(三)一階差分序列的檢驗(yàn)

? ? ?#方法:?jiǎn)挝桓鶛z驗(yàn) ? ?# print('原始序列的ADF檢驗(yàn)結(jié)果為',ADF(sale['銷量'])) ? ?

d1_sale=sale.diff(periods=1, axis=0).dropna()
d1_sale=d1_sale['銷量']
#時(shí)序圖
plt.figure(figsize=(10,5))
d1_sale.plot()
plt.show()
#解讀:在均值附件比較平穩(wěn)波動(dòng)

#自相關(guān)圖
plot_acf(d1_sale,lags=34).show()
#解讀:有短期相關(guān)性,但趨向于零。

#平穩(wěn)性檢驗(yàn)
print('原始序列的ADF檢驗(yàn)結(jié)果為:',ADF(d1_sale))

#解讀:P值小于顯著性水平α(0.05),拒絕原假設(shè)(非平穩(wěn)序列),說(shuō)明一階差分序列是平穩(wěn)序列。

在這里插入圖片描述
在這里插入圖片描述

? 平穩(wěn)性檢驗(yàn)ADF小于0.05,說(shuō)明一階差分是平穩(wěn)的 ?

在這里插入圖片描述

白噪聲檢驗(yàn)

? ? ?print('一階差分序列的白噪聲檢驗(yàn)結(jié)果為:',acorr_ljungbox(d1_sale,lags=1))#返回統(tǒng)計(jì)量、P值 ? ?#解讀:p值小于0.05,拒絕原假設(shè)(純隨機(jī)序列),說(shuō)明一階差分序列是非白噪聲。

在這里插入圖片描述

? p值小于0.05,拒絕原假設(shè)(純隨機(jī)序列),說(shuō)明一階差分序列是非白噪聲。

(四)定階(參數(shù)調(diào)優(yōu))

確定P值和Q值

? ? ?# 參數(shù)調(diào)優(yōu):BIC ? ?# # ?模型調(diào)優(yōu)的方法:AIC和BIC ? ?# # ?值越小越好 ? ?# # ?參數(shù)調(diào)優(yōu)的方法非常多,用不同方法得出的結(jié)論可能不同 ? ?# from pandas.core.frame import DataFrame ? ?# pmax=int(len(d1_sale)/10) #一般階數(shù)不超過(guò)length/10 ? ?# qmax=int(len(d1_sale)/10) #一般階數(shù)不超過(guò)length/10 ? ?# bic_matrix=[] ? ?# for p in range(pmax+1): ? ?# ? ? tmp=[] ? ?# ? ? for q in range(qmax+1): ? ?# ? ? ? ? try: ? ?# ? ? ? ? ? ? tmp.append(ARIMA(sale,(p,1,q)).fit().bic) ? ?# ? ? ? ? except: ? ?# ? ? ? ? ? ? tmp.append(None) ? ?# ? ? bic_matrix.append(tmp) ? ?# ? ? p,q=DataFrame(bic_matrix).stack().idxmin() #最小值的索引 ? ?# print('用BIC方法得到最優(yōu)的p值是%d,q值是%d'%(p,q)) ? ? ? ?

# pmax=int(len(d1_sale)/10) #一般階數(shù)不超過(guò)length/10
# qmax=int(len(d1_sale)/10) #一般階數(shù)不超過(guò)length/10

# aic_matrix=[]
# for p in range(pmax+1):
# ? ? tmp=[]
# ? ? for q in range(qmax+1):
# ? ? ? ? try:
# ? ? ? ? ? ? tmp.append(ARIMA(sale,(p,1,q)).fit().aic)
# ? ? ? ? except:
# ? ? ? ? ? ? tmp.append(None)
# ? ? aic_matrix.append(tmp)
# aic_matrix=pd.DataFrame(aic_matrix)
# p,q=aic_matrix.stack().idxmin() #最小值的索引
# print('用AIC方法得到最優(yōu)的p值是%d,q值是%d'%(p,q))

用AIC和BIC方法得到的最優(yōu)的P值和Q值為0,1

(五)建模與預(yù)測(cè)

? ? ?#構(gòu)建模型 ? ?model=ARIMA(sale['銷量'],(0,1,1)).fit() ? ?#查看模型報(bào)告 ? ?print(model.summary2())

在這里插入圖片描述

殘差檢驗(yàn)

? ? ?#殘差檢驗(yàn) ? ?#自相關(guān)圖 ? ?resid=model.resid ? ?plot_acf(resid,lags=35).show() ? ?

#解讀:有短期相關(guān)性,但趨向于零。

#偏自相關(guān)圖
plot_pacf(resid,lags=20).show()

#偏自相關(guān)圖
plot_pacf(resid,lags=35).show()
#


在這里插入圖片描述

如圖所示一階,二階,三階都是非常小的數(shù),說(shuō)明它們之間的相關(guān)性比較小,可能是一個(gè)純隨機(jī)序列

? ? ?#qq圖:線性即正態(tài)分布 ? ?qqplot(resid, line='q', fit=True).show() ? ?#解讀:殘差服從正態(tài)分布,均值為零,方差為常數(shù)

在這里插入圖片描述

上圖可以看出數(shù)據(jù)均勻的落在直線的周圍,說(shuō)明數(shù)據(jù)服從正態(tài)分布:均值為0,方差為常數(shù),是一個(gè)純隨機(jī)序列。

預(yù)測(cè)

? ? ?print('未來(lái)七天的銷量數(shù)據(jù):\n') ? ?print(model.forecast(7))

在這里插入圖片描述

? ? ?#預(yù)測(cè) ? ?# print('未來(lái)七天的銷量數(shù)據(jù):\n') ? ?# print(model.forecast(7)) ? ?forecast=pd.Series(model.forecast(7)[0],index=pd.date_range('2015-2-7',periods=7,freq='D')) ? ?data=pd.concat((sale,forecast),axis=0) ? ?data.columns=['日期','銷量','未來(lái)7天銷量'] ? ?plt.figure(figsize=(10,5)) ? ?data[['銷量','未來(lái)7天銷量']].plot() ? ?plt.show()

在這里插入圖片描述

5 最后

畢設(shè)幫助,選題指導(dǎo),技術(shù)解答,歡迎打擾,見(jiàn)B站個(gè)人主頁(yè)

https://space.bilibili.com/33886978

畢業(yè)設(shè)計(jì) 大數(shù)據(jù)銷量數(shù)據(jù)預(yù)測(cè)可視化系統(tǒng)的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國(guó)家法律
西安市| 定州市| 云安县| 罗城| 大冶市| 富锦市| 平安县| 芦溪县| 金乡县| 山丹县| 北辰区| 富顺县| 汉阴县| 福建省| 库尔勒市| 拉孜县| 岑巩县| 弥勒县| 双桥区| 尉氏县| 常州市| 漯河市| 崇明县| 大冶市| 长沙市| 新宾| 陆川县| 新泰市| 台东县| 安塞县| 毕节市| 云龙县| 筠连县| 正镶白旗| 九寨沟县| 大连市| 垣曲县| 长顺县| 泰安市| 乐业县| 舟曲县|