当前位置 : 主页 > 网络编程 > PHP >

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测

来源:互联网 收集:自由互联 发布时间:2023-09-07
该数据根据世界各国提供的新病例数据提供。 获取时间序列数据 df=pd.read_csv("C://global.csv") 探索数据 此表中的数据以累积的形式呈现,为了找出每天的新病例,我们需要减去这些值 df

该数据根据世界各国提供的新病例数据提供。

获取时间序列数据

df=pd.read_csv("C://global.csv")

探索数据

此表中的数据以累积的形式呈现,为了找出每天的新病例,我们需要减去这些值

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_时间序列

df.head(10)

 

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_02

这些数据是根据国家和地区报告新病例的数据,但我们只想预测国家的新病例,因此我们使用 groupby 根据国家对它们进行分组

 

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_时间序列_03

总结数据

执行 groupby 以根据一个国家的新病例来汇总数据,而不是根据地区

d1=df.groupby(['Country/Region']).sum()

 

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_04

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_05

描述随机选择的国家的累计新病例增长

  1.   
  2.  from numpy.random import seed
  3.   
  4.  plt.plot(F[i], label = RD[i])
  5.  plt.show()

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_时间序列_06

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_07

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_时间序列_08

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_09


1.  # 我们不需要前两列
2. d1=d1.iloc[:,2:]

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_10


1.  # # 检查是否有空值
2.
3. d1.isnull().sum().any()

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_时间序列_11

我们可以对每个国家进行预测,也可以对所有国家进行预测,这次我们对所有国家进行预测

dlycnmdcas.head()

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_12

dalycnfreces.index
dal_cnre_ces.index = pd.to_datetime(dailyonfrmd_as.index)

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_13

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_14

plt.plot(dalnimedases)

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_15


1.  ne_ces = daiy_onme_as.diff().dropna().astype(np.int64)
2. newcaes

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_16

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_17

plt.plot(ne_s[1:])

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_时间序列_18

nw_s.shape
(153,)

将数据拆分为训练和测试数据


1.   
2. ct=0.75
3. trin_aa,tet_aa = train_test_split(ne_ces, pct)
(116,)1. plt.plot(tainta)
2. plt.plot(tesata)

Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_19

数据标准化

scaler = MinMaxScaler()testa.shape(38, 1)

创建序列

    1.   
    2. lentTe = len(ts_data)
    3. for i in range(timmp, lenhTe):
    4. X_st.append(tst_aa[i-tmStap:i])
    5. y_tt.append(tesata[i])
    6.
    7. X_tet=np.array(X_ts)
    8. ytes=np.array(y_tt)
    X_st.shape

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_时间序列_20

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_21

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_22

    Xtrn.shape

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_23


    1.   
    2. # 序列的样本
    3. X_trn[0], yran[0]

     

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_24

    为股票价格预测设计 RNN 模型

    模型:

    1. LSTM
    2. GRU
    model.summary()
    model.summary()

     

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_25

    model.fit(X_trn y_rin, epochs=50, batch_size=200)

     

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_26

     

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_27

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_28


    1.   
    2. yprd = (mod.predict(X_test))
    3. MSE = mean_squared_error(ytue, y_rd)
    4.
    5. plt.figure(figsize=(14,6))

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_29

    1.  meRU= Sqtal([
    2. keras.layers.GRU(
    3.
    4.
    5.
    6.
    7. model_GRU.fit(Xtrn, ytin,epochs=50,batch_size=150)

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_时间序列_30

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_31


    1.  pe_rut = {}
    2.
    3. y_ue = (y_et.reshape(-1,1))
    4. y_prd = (modlGU.predict(X_test))
    5. MSE = mean_squared_error(y_ue, ed)

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_32

    用于预测新病例的机器学习算法

    准备数据

    d__in.shape

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_33

    moel=LinearRegression(nos=-2)

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_34

    ARIMA

    COVID-19 新病例预测的自回归综合移动平均线

     #我们不需要前两列


    1.  df1.head()
    2. daly_nfrd_cses = df1.sum(axis=0)
    3. day_cnir_ase.index = pd.to_datetime(da_onieses.index)
    4. new_cs = dacofmecss.diff().dropna().astype(np.int64)
    5.
    6. tri_ta,tet_ata = trintt_it(nw_es, pct)

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_35


    1.   
    2. ero = men_squred_eror(ts_ar, pricos)

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_36

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_时间序列_37

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_数据_38


    1.  plt.figure(figsize=(12,7))
    2. plt.plot(tanat)

    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_r语言_39


    Python用RNN循环神经网络:LSTM长期记忆、GRU门循环单元、回归和ARIMA对COVID-19新冠疫情新增人数时间序列预测_时间序列_40

    上一篇:KVM创建虚拟机
    下一篇:没有了
    网友评论