第100+9步 ChatGPT文献复现:ARIMA预测百日咳

基于WIN10的64位系统演示

一、写在前面

我们来继续换一篇文章来学习学习:

《BMC Public Health》杂志的2022年一篇题目为《ARIMA and ARIMA-ERNN models for prediction of pertussis incidence in mainland China from 2004 to 2021》文章的模拟数据做案例。

这文章做的是用:使用单纯ARIMA模型和ARIMA-ERNN组合模型预测中国大陆百日咳发病率。

文章是用单纯的ARIMA模型作为对照,更新了ARIMA-ERNN模型。本期,我们先来尝试ARIMA模型。

数据不是原始数据哈,是我使用GPT-4根据文章的散点图提取出来近似数据,只弄到了2004-2017年的。

二、闲聊和复现:

1 数据基本描述

没啥好说的,就是最最基本的描述统计。

要是有原始数据,直接可以让GPT-4帮分析。

(2)季节拆分

之前介绍过了哈,使用SPSS也可以实现,文章使用的是R语言:

①首先,使用GPT-4生成:

咒语:

直接输出结果:

注意哈,我的数据是模拟数据,且只到2017年12月,所以乍一看跟文章的略有偏差。

GPT给出的代码(Python)供参考:

python 复制代码
import pandas as pd
from statsmodels.tsa.seasonal import STL
import matplotlib.pyplot as plt

# Load the data from the CSV file
data = pd.read_csv('/mnt/data/数据.csv')

# Convert the 'time' column to datetime to facilitate resampling by year
data['time'] = pd.to_datetime(data['time'], format='%b-%y')

# Set the time column as index and set frequency to month start
data.set_index('time', inplace=True)
data.index.freq = 'MS'

# Prepare the data for STL decomposition by ensuring it has a frequency (monthly data)
# Apply STL decomposition with a seasonal period of 13 (adjusted as needed)
stl = STL(data['incidence'], seasonal=13)
result = stl.fit()

# Plotting the results of the STL decomposition
plt.figure(figsize=(12, 8))

# Original data plot
plt.subplot(4, 1, 1)
plt.plot(result.observed)
plt.title('Original Data')

# Seasonal component plot
plt.subplot(4, 1, 2)
plt.plot(result.seasonal)
plt.title('Seasonal Component')

# Trend component plot
plt.subplot(4, 1, 3)
plt.plot(result.trend)
plt.title('Trend Component')

# Residual plot
plt.subplot(4, 1, 4)
plt.plot(result.resid)
plt.title('Residual')

# Adjust layout and save the figure to a file
plt.tight_layout()
plt.savefig('/mnt/data/STL_Decomposition_Corrected.png')

plt.show()

②首先,使用SPSS生成:

步骤我在简单过一下,大家巩固记忆:

看结果:

(2)构建ARIMA模型

文章使用的是SAS建模,那我就用JMP展示(传送门):

看到季节性和总体上升趋势,直接无脑d和D取1,然后p、q、P、Q取值0、1、2、3即可:

结果最优模型如下:

ARIMA(3,1,3)(3,1,2)12:拟合的MAPE为27%,预测的MAPE为18%,比文章的高一些,不过基本处于一个数量级水平。

不用纠结为啥ARIMA参数不同,实验条件都不一样。

三、 后话

到目前为止,大家应该熟练掌握单纯ARIMA模型了吧。

四、 数据

不提供,自行根据下图提取吧****。****

实在没有GPT-4,那就这个:

https://apps.automeris.io/wpd/index.zh_CN.html

相关推荐
算AI42 分钟前
人工智能+牙科:临床应用中的几个问题
人工智能·算法
凯子坚持 c2 小时前
基于飞桨框架3.0本地DeepSeek-R1蒸馏版部署实战
人工智能·paddlepaddle
你觉得2052 小时前
哈尔滨工业大学DeepSeek公开课:探索大模型原理、技术与应用从GPT到DeepSeek|附视频与讲义下载方法
大数据·人工智能·python·gpt·学习·机器学习·aigc
8K超高清2 小时前
中国8K摄像机:科技赋能文化传承新图景
大数据·人工智能·科技·物联网·智能硬件
hyshhhh3 小时前
【算法岗面试题】深度学习中如何防止过拟合?
网络·人工智能·深度学习·神经网络·算法·计算机视觉
薛定谔的猫-菜鸟程序员3 小时前
零基础玩转深度神经网络大模型:从Hello World到AI炼金术-详解版(含:Conda 全面使用指南)
人工智能·神经网络·dnn
币之互联万物3 小时前
2025 AI智能数字农业研讨会在苏州启幕,科技助农与数据兴业成焦点
人工智能·科技
云卓SKYDROID3 小时前
科技赋能消防:无人机“挂弹灭火“构筑森林防火墙!
人工智能·科技·无人机·科普·云卓科技
gaoshengdainzi3 小时前
镜片防雾性能测试仪在自动驾驶与无人机领域的创新应用
人工智能·自动驾驶·无人机·镜片防雾性能测试仪
Listennnn3 小时前
优雅的理解神经网络中的“分段线性单元”,解剖前向和反向传播
人工智能·深度学习·神经网络