国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Python數(shù)據(jù)分析案例11——灰色預測法預測時間序列數(shù)據(jù)

這篇具有很好參考價值的文章主要介紹了Python數(shù)據(jù)分析案例11——灰色預測法預測時間序列數(shù)據(jù)。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

本次案例來自2022華為杯第E題,第2小問。給定了2012.01-2022.03的土壤濕度的月度數(shù)據(jù),需要預測2022.04-2023.12的土壤濕度的月度數(shù)據(jù)。典型的時間序列預測。

傳統(tǒng)的時間序列預測肯定是ARIMA模型,可以參考我之前的文章。Python統(tǒng)計學10——時間序列分析自回歸模型(ARIMA)

現(xiàn)在流行的方法肯定是深度學習的循環(huán)神經(jīng)網(wǎng)絡(RNN,LSTM,GRU),也可以參考我這篇文章。

Python深度學習05——Keras循環(huán)神經(jīng)網(wǎng)絡實現(xiàn)股價預測


本次我們要用的是一種比較數(shù)學的方法,灰色預測法。

灰色預測法是一種對含有不確定因素的系統(tǒng)進行預測的方法。在建立灰色預測模型之前,需先對原始時間序列進行數(shù)據(jù)處理,經(jīng)過數(shù)據(jù)處理后的時間序列即稱為生成列?;疑到y(tǒng)常用的數(shù)據(jù)處理方式有累加和累減兩種。
灰色預測是以灰色模型為基礎的,在眾多的灰色模型中,GM(1,1)模型最為常用。

原理公式就不介紹了。

灰色預測法的通用性較強,一般的時間序列場合都適用,尤其適合那些規(guī)律性差且不清楚數(shù)據(jù)產(chǎn)生機理的情況?;疑A測模型的優(yōu)點是預測精度高、模型可檢驗、參數(shù)估計方法簡單、對小數(shù)據(jù)集有很好的預測效果;缺點是對原始數(shù)據(jù)序列的光滑度要求很高,在原始數(shù)據(jù)列光滑性較差的情況下灰色預測模型的預測精度不高,甚至通不過檢驗。


認識數(shù)據(jù)

首先我們對問題要有清晰的認識。預測無非就是給一些數(shù)據(jù),然后需要預測其他的一些數(shù)據(jù),題目給的數(shù)據(jù)大概是這樣的:

Python數(shù)據(jù)分析案例11——灰色預測法預測時間序列數(shù)據(jù)

給定了2012.01-2022.03的土壤濕度的月度數(shù)據(jù),需要預測2022.04-2023.12的土壤濕度的月度數(shù)據(jù)。

需要這代碼演示數(shù)據(jù)的同學可以參考:數(shù)據(jù)

?下面使用Python讀?。?/p>

導入包:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt 

plt.rcParams ['font.sans-serif'] ='SimHei'               #顯示中文
plt.rcParams ['axes.unicode_minus']=False                #顯示負號

讀取數(shù)據(jù),將前兩列——年份和月份解析為時間,然后對時間索引進行排序,畫折線圖:

土壤濕度=pd.read_csv('土壤濕度.csv',parse_dates={'時間':[0,1]})
土壤濕度=土壤濕度.set_index('時間').sort_index()
土壤濕度.plot(figsize=(10,4))

Python數(shù)據(jù)分析案例11——灰色預測法預測時間序列數(shù)據(jù)

?這就是初始數(shù)據(jù),從2012.01-2022.03的土壤濕度的月度數(shù)據(jù),需要預測2022.04-2023.12的土壤濕度數(shù)據(jù)。


灰色預測

定義灰色預測函數(shù):

def GM11(x0): #自定義灰色預測函數(shù)
    x1 = x0.cumsum() #1-AGO序列
    z1 = (x1[:len(x1)-1] + x1[1:])/2.0 #緊鄰均值(MEAN)生成序列
    z1 = z1.reshape((len(z1),1))
    B = np.append(-z1, np.ones_like(z1), axis = 1)
    Yn = x0[1:].reshape((len(x0)-1, 1))
    [[a],[b]] = np.dot(np.dot(np.linalg.inv(np.dot(B.T, B)), B.T), Yn) #計算參數(shù)
    f = lambda k: (x0[0]-b/a)*np.exp(-a*(k-1))-(x0[0]-b/a)*np.exp(-a*(k-2)) #還原值
    delta = np.abs(x0 - np.array([f(i) for i in range(1,len(x0)+1)]))
    C = delta.std()/x0.std()
    P = 1.0*(np.abs(delta - delta.mean()) < 0.6745*x0.std()).sum()/len(x0)
    return f, a, b, x0[0], C, P #返回灰色預測函數(shù)、a、b、首項、方差比、小殘差概率

其實不理解原理也沒什么,就按照我下面的流程用就行。

準備數(shù)據(jù)的值和時間索引:

new_reg_data = 土壤濕度.iloc[:,-4:]    #取最后4列,即自己需要預測的四個變量
new_reg_data.index = pd.to_datetime(土壤濕度.index)  #將原始數(shù)據(jù)的索引變?yōu)闀r間類型

?查看現(xiàn)在的數(shù)據(jù):

new_reg_data

?Python數(shù)據(jù)分析案例11——灰色預測法預測時間序列數(shù)據(jù)

?可以看到時間,現(xiàn)在是123條。

由于需要預測2022.04-2023.12期間的四個變量,我們先要定義一個時間索引,一個月份一個月份的去預測。然后對每個變量進行循環(huán),即每個變量都去擬合一個新的灰色預測函數(shù)。在每個月度預測完了后就給這一行賦值。這樣能保證上一個預測值可以加入下一輪的預測里面。

index=pd.Series(pd.date_range('2022-04','2024-1',freq='M')).astype('datetime64[M]')

for i,ind in enumerate(index):
    pred=[]
    for c in new_reg_data.columns:
        f = GM11(new_reg_data.loc[:,c].values)[0]
        pred.append(f(1+len(new_reg_data)))
        
    new_reg_data.loc[ind,:] = np.array(pred)

查看結(jié)果:

new_reg_data

Python數(shù)據(jù)分析案例11——灰色預測法預測時間序列數(shù)據(jù)

?可以看到時間,現(xiàn)在是144條。

畫圖看擬合效果:

new_reg_data.plot(figsize=(10,4),title='預測的土壤濕度')
#plt.savefig('第二問的預測結(jié)果.jpg',dpi=128)

Python數(shù)據(jù)分析案例11——灰色預測法預測時間序列數(shù)據(jù)

?emmmm,效果一般般,雖然預測出來的不是常數(shù),但是預測的值也比較平滑。這也是灰色預測的一個特點。

當然建模比賽不會只用這么簡單的模型....那肯定是神經(jīng)網(wǎng)絡什么的都往上整了,不過由于這個題目的數(shù)據(jù)量小,神經(jīng)網(wǎng)絡不太合適?;疑A測適合小數(shù)據(jù)集,該案例算是提供一個新的時間序列預測的思路吧


創(chuàng)作不易,看官覺得寫得還不錯的話點個關注和贊吧,本人會持續(xù)更新python數(shù)據(jù)分析領域的代碼文章~(需要定制代碼可私信)文章來源地址http://www.zghlxwxcb.cn/news/detail-460755.html

到了這里,關于Python數(shù)據(jù)分析案例11——灰色預測法預測時間序列數(shù)據(jù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 【視頻】Python用LSTM長短期記憶神經(jīng)網(wǎng)絡對不穩(wěn)定降雨量時間序列進行預測分析|數(shù)據(jù)分享...

    【視頻】Python用LSTM長短期記憶神經(jīng)網(wǎng)絡對不穩(wěn)定降雨量時間序列進行預測分析|數(shù)據(jù)分享...

    在本文中,長短期記憶網(wǎng)絡——通常稱為“LSTM”——是一種特殊的RNN遞歸神經(jīng)網(wǎng)絡,能夠?qū)W習長期依賴關系 ( 點擊文末“閱讀原文”獲取完整 代碼數(shù)據(jù) ) 。 視頻:LSTM 神經(jīng)網(wǎng)絡架構(gòu)和工作原理及其在Python中的預測應用 什么是依賴關系? 假設您在觀看視頻時記得前一個場

    2024年02月11日
    瀏覽(24)
  • 數(shù)據(jù)分析實戰(zhàn)│時間序列預測

    數(shù)據(jù)分析實戰(zhàn)│時間序列預測

    時間序列預測問題是一類常見的數(shù)據(jù)分析問題。數(shù)據(jù)中往往包含時間標簽,這類問題往往根據(jù)過去一段時間的數(shù)據(jù),建立能夠比較精確地反映序列中所包含的動態(tài)依存關系的數(shù)學模型,并對未來的數(shù)據(jù)進行預測。 本案例給出二戰(zhàn)時期的某氣象站溫度記錄值,通過分析之前的天

    2024年02月11日
    瀏覽(29)
  • Python數(shù)據(jù)分析案例36——基于神經(jīng)網(wǎng)絡的AQI多步預測(空氣質(zhì)量預測)

    Python數(shù)據(jù)分析案例36——基于神經(jīng)網(wǎng)絡的AQI多步預測(空氣質(zhì)量預測)

    不知道大家發(fā)現(xiàn)了沒,現(xiàn)在的神經(jīng)網(wǎng)絡做時間序列的預測都是單步預測,即(需要使用X的t-n期到X的t-1期的數(shù)據(jù)去預測X的t期的數(shù)據(jù)),這種預測只能預測一個點,我需要預測X的t+1期的數(shù)據(jù)就沒辦法了,有的同學說可以把預測的結(jié)果X的t+1拿進來作為新的x去預測。。。我只能說這

    2024年01月19日
    瀏覽(24)
  • Python數(shù)據(jù)分析案例25——海上風力發(fā)電預測(多變量循環(huán)神經(jīng)網(wǎng)絡)

    Python數(shù)據(jù)分析案例25——海上風力發(fā)電預測(多變量循環(huán)神經(jīng)網(wǎng)絡)

    ?本案例適合理工科。 承接上一篇的硬核案例:Python數(shù)據(jù)分析案例24——基于深度學習的鋰電池壽命預測 本次案例類似,只是進一步拓展了時間序列預測到多變量的情況。上一個案例的時間序列都是只有電池容量一個特征變量,現(xiàn)在采用多個變量進行神經(jīng)網(wǎng)絡模型的構(gòu)建。

    2024年02月04日
    瀏覽(18)
  • 計算機競賽 基于大數(shù)據(jù)的時間序列股價預測分析與可視化 - lstm

    計算機競賽 基于大數(shù)據(jù)的時間序列股價預測分析與可視化 - lstm

    ?? 優(yōu)質(zhì)競賽項目系列,今天要分享的是 ?? 畢業(yè)設計 大數(shù)據(jù)時間序列股價預測分析系統(tǒng) 該項目較為新穎,適合作為競賽課題方向,學長非常推薦! ??學長這里給一個題目綜合評分(每項滿分5分) 難度系數(shù):3分 工作量:3分 創(chuàng)新點:3分 ?? 更多資料, 項目分享: https://gite

    2024年02月11日
    瀏覽(31)
  • 互聯(lián)網(wǎng)加競賽 基于大數(shù)據(jù)的時間序列股價預測分析與可視化 - lstm

    互聯(lián)網(wǎng)加競賽 基于大數(shù)據(jù)的時間序列股價預測分析與可視化 - lstm

    ?? 優(yōu)質(zhì)競賽項目系列,今天要分享的是 ?? 畢業(yè)設計 大數(shù)據(jù)時間序列股價預測分析系統(tǒng) 該項目較為新穎,適合作為競賽課題方向,學長非常推薦! ??學長這里給一個題目綜合評分(每項滿分5分) 難度系數(shù):3分 工作量:3分 創(chuàng)新點:3分 ?? 更多資料, 項目分享: https://gite

    2024年01月15日
    瀏覽(28)
  • 【大數(shù)據(jù)基礎】淘寶雙11數(shù)據(jù)分析與預測

    【大數(shù)據(jù)基礎】淘寶雙11數(shù)據(jù)分析與預測

    https://dblab.xmu.edu.cn/post/8116/ 問題1 mysql登錄需要密碼 https://cloud.tencent.com/developer/beta/article/1142525 這個很神奇,我密碼輸1就進去了 為避免出問題,把解決方案放這里: https://blog.csdn.net/qq_34771403/article/details/73927962 問題2 sqoop測試與mysql連接報錯 https://blog.csdn.net/weixin_47580081/artic

    2024年02月07日
    瀏覽(20)
  • 數(shù)據(jù)分析與數(shù)據(jù)挖掘?qū)崙?zhàn)案例本地房價預測(716):

    數(shù)據(jù)分析與數(shù)據(jù)挖掘?qū)崙?zhàn)案例本地房價預測(716):

    2022 年首屆釘釘杯大學生大數(shù)據(jù)挑戰(zhàn)賽練習題目 練習題 A:二手房房價分析與預測 要點: 1、機器學習 2、數(shù)據(jù)挖掘 3、數(shù)據(jù)清洗、分析、pyeahcrs可視化 4、隨機森林回歸預測模型預測房價 1、讀入數(shù)據(jù)、清洗數(shù)據(jù): 2、解決相關問題: (一) 根據(jù)附件中的數(shù)據(jù)集,將二手房數(shù)據(jù)

    2024年02月07日
    瀏覽(30)
  • ARIMA模型時間序列數(shù)據(jù)分析(附python代碼)

    ARIMA模型時間序列數(shù)據(jù)分析(附python代碼)

    ARIMA模型建模流程? 1 )平穩(wěn)性檢驗與差分處理 我們選取原始數(shù)據(jù) bus 中的“ prf_get_person_count ”列,并截取前 32 個站點的數(shù)據(jù)進行平穩(wěn)性檢驗,這里采用的是 ADF 檢驗確定數(shù)據(jù)的平穩(wěn)性,導入 statsmodels 包下的 adfuller 函數(shù),該函數(shù)返回 adf 值與概率 p 值。若原始序列不平穩(wěn),就

    2024年02月01日
    瀏覽(23)
  • 大數(shù)據(jù)分析案例-基于決策樹算法構(gòu)建員工離職預測模型

    大數(shù)據(jù)分析案例-基于決策樹算法構(gòu)建員工離職預測模型

    ???♂? 個人主頁:@艾派森的個人主頁 ???作者簡介:Python學習者 ?? 希望大家多多支持,我們一起進步!?? 如果文章對你有幫助的話, 歡迎評論 ??點贊???? 收藏 ??加關注+ 目錄 1.項目背景 2.項目簡介 2.1項目說明

    2024年01月24日
    瀏覽(28)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包