大数跨境
0
0

监测数据时间序列分析的Excel、SPSS实现以及Python自动操作

监测数据时间序列分析的Excel、SPSS实现以及Python自动操作 医学统计数据分析
2025-11-21
2
导读:时间序列模型在公共卫生领域具有极其重大的意义,它们将历史健康数据转化为对未来风险的洞察,



点击上方蓝字,关注我们




时间序列模型在公共卫生领域具有极其重大的意义,它们将历史健康数据转化为对未来风险的洞察,是实现预测性公共卫生的核心工具。

一、疾病监测与预警: 实时监测传染病数据,当实际报告数超过模型预测的置信区间上限时,自动发出预警信号,实现早期探测。

二、疫情预测与资源规划: 准确预测未来几周或数月内的发病人数、住院需求和死亡人数,为政府和管理者提前调配医疗资源(床位、医护人员、疫苗、药品)提供科学依据。

三、政策效果评估: 通过比较政策实施前后的时间序列预测误差,可以定量评估非药物干预措施(如封锁、口罩令)的有效性。

四、病因探索: 通过多变量模型(如LSTM、带有外部变量的ARIMAX),可以分析环境因素(温度、湿度、空气质量)、社会因素(人群聚集)与疾病发生之间的关联。

五、慢性病与死亡率分析: 分析慢性病患病率、死亡率的长期趋势,评估公共卫生项目的长期效果,为制定国家健康战略提供数据支持。

时间序列机器学习模型大致可以分为三类:经典统计模型、传统机器学习模型 和 深度学习模型。







 一、 经典统计模型

这类模型基于序列自身的统计特性(如自相关性、趋势性、季节性)进行建模。

1. 自回归模型

   概念: 用时间序列过去值的线性组合来预测未来值。认为当前值只与自身的历史值有关。

   原理: `Y_t = c + φ₁Y_{t-1} + φ₂Y_{t-2} + ... + φₚY_{t-p} + ε_t`,其中 `p` 是滞后阶数,`φ` 是自回归系数,`ε_t` 是白噪声。

   应用: 适用于平稳序列,或经过差分后平稳的序列。常用于金融、经济学。

   可视化方法: 自相关图、序列本身图。

   公共卫生意义: 可用于预测短期内没有外部干预的传染病发病数,例如基于前几周的流感病例数预测下周的病例数。

2. 移动平均模型

   概念: 用过去预测误差的线性组合来预测未来值。认为当前值受历史随机冲击的影响。

   原理: `Y_t = μ + ε_t + θ₁ε_{t-1} + θ₂ε_{t-2} + ... + θ_qε_{t-q}`,其中 `q` 是移动平均阶数,`θ` 是系数,`ε` 是误差项。

   应用: 主要用于对序列的随机波动进行建模。

   可视化方法: 偏自相关图、序列本身图。

   公共卫生意义: 通常与AR模型结合使用(ARMA/ARIMA),单独使用较少。

3. 自回归综合移动平均模型

   概念: 结合了AR和MA模型,并引入了差分 步骤以使非平稳序列变得平稳。

   原理: 模型表示为ARIMA(p, d, q)。`p`是AR阶数,`d`是差分次数,`q`是MA阶数。先对原序列进行d次差分,然后对差分后的平稳序列建立ARMA(p, q)模型。

   应用: 经典且强大的模型,适用于各种非平稳时间序列预测,如股票价格、销售额、能源需求。

   可视化方法: 序列图(观察趋势和季节性)、ACF/PACF图(确定p, q参数)、差分后的序列图(检验平稳性)。

   公共卫生意义: 广泛应用于传染病(如流感、登革热、COVID-19)的发病率和死亡率的短期预测,为医疗资源调配提供依据。

4. 季节性自回归综合移动平均模型

   概念: ARIMA模型的扩展,专门处理具有强季节性 成分的时间序列。

   原理: 模型表示为SARIMA(p, d, q)(P, D, Q, s)。除了常规的ARIMA参数,还引入了季节性的AR(P)、差分(D)、MA(Q)参数,其中`s`是季节周期(如月数据s=12,周数据s=52)。

   应用: 任何具有明显季节规律的数据,如电力消耗(夏冬高峰)、零售销售(节假日高峰)、旅游数据。

   可视化方法: 季节图、子序列图、年度图,可以清晰地展示季节性模式。

   公共卫生意义: 至关重要。用于预测具有明显季节性的疾病,如流感(冬季高发)、手足口病(春夏季高发)、花粉症。可以帮助卫生部门在流行季到来前做好宣传和物资准备。



时间序列数据的格式、样式与分布:

1. 数据格式

   基本要求: 数据必须包含时间戳 和对应的观测值。

   标准格式:

       长格式: 最常见。两列:一列是时间戳(`datetime`类型),一列是值(`float`/`int`类型)。

       宽格式: 适用于多变量时间序列。每一行是一个时间戳,每一列是一个变量。

2. 数据样式

   趋势: 数据长期表现的上升或下降的方向。

   季节性: 在固定周期内(如一天、一周、一年)出现的重复性、规律性的波动。

   周期性: 非固定频率的波动,通常由经济等因素引起,波动周期不固定(如经济周期)。

   随机噪声: 无法由模型解释的随机波动。

 3. 数据分布与特性

   平稳性: 这是大多数经典模型(如ARIMA)的核心假设。一个平稳序列的均值和方差不随时间变化,协方差只与时间间隔有关,与具体时间点无关。非平稳数据通常需要通过差分、变换等方法使其平稳。

   自相关性: 时间序列与其自身滞后值之间的相关性。ACF图用于检验。

   偏自相关性: 在消除了中间滞后项的影响后,序列与某个滞后项之间的相关性。PACF图用于检验。


时间序列数据的可视化方法:

1.  线图: 最基础、最核心的可视化。横轴为时间,纵轴为观测值。用于直观展示趋势、季节性、异常值。

2.  自相关图和偏自相关图:

       ACF: 展示时间序列与其自身各阶滞后之间的相关性。用于识别MA模型的阶数`q`和序列的周期性。

       PACF: 展示在控制中间滞后项后,序列与某阶滞后项之间的纯粹相关性。用于识别AR模型的阶数`p`。

3.  季节图: 将多年的数据按季节周期(如月、周)叠加在一张图上,用于清晰地观察季节性模式以及模式是否随时间变化。

4.  子序列图: 将时间序列分解为多个子序列(如每年的数据),并绘制在同一张图中,便于比较不同周期的模式。

5.  箱线图: 按时间周期(如月份、星期几)对数据进行分组并绘制箱线图,用于观察数据在不同周期内的分布情况(中位数、四分位数、异常值)。

6.  热力图: 常用于展示一天内不同小时、一周内不同天的模式(如网站流量、电力负荷)。

7.  分解图: 将时间序列分解为趋势、季节性 和残差 三个部分,分别进行可视化,帮助我们理解数据的构成。

8.  预测结果对比图: 将历史数据、真实值和模型的预测值绘制在同一张图上,是评估模型性能最直观的方式。





那么Excel和SPSS分别都能做哪些时间序列分析?具体操作步骤有哪些?



 一、Excel:轻量工具,聚焦基础趋势与预测

Excel主要通过移动平均、指数平滑和预测工作表实现时间序列分析,适用于数据量小、趋势简单的场景。

 1. 移动平均法(平滑短期波动,凸显趋势)

原理:通过计算连续n期数据的平均值消除随机波动,n值越大曲线越平滑,但可能掩盖细节。  

操作步骤:  

1.1 加载分析工具库(首次使用):  

   - 文件→选项→加载项→勾选“分析工具库”→确定。 

 



1.2 执行移动平均:  

   - 数据→数据分析→选择“移动平均”→输入区域(如B2:B17)→间隔(n值,如3)→输出区域→勾选“图表输出”→确定。  

   - 示例:n=3时,C3单元格公式为`=AVERAGE(B1:B3)`,下拉填充得到移动平均值。



 2. 指数平滑法(动态加权,适用于趋势数据)

原理:对近期数据赋予更高权重(平滑系数α,0<α<1),阻尼系数=1-α。  

操作步骤:  

2.1数据→数据分析→选择“指数平滑”→输入区域→阻尼系数(如0.1,即α=0.9)→输出区域→勾选“图表输出”→确定。  

2.2 预测延伸:下拉公式即可生成未来值,如`=α实际值+(1-α)上一期预测值`。  

   - 注意:数据趋势平缓时选小阻尼系数(如0.1),波动大时选大阻尼系数(如0.9)。

 



3. 预测工作表(一键生成未来趋势)

原理:自动结合移动平均和指数平滑,支持自定义预测周期。  

操作步骤:  

1. 选中含时间和数据的区域→数据→预测工作表→设置“预测结束日期”→选择图表类型(折线图/柱状图)→创建。  

2. 选项设置:可调整置信区间(默认95%)、预测起始日期,适合快速生成月度/季度预测。









二、SPSS:专业工具,支持复杂模型与统计检验

SPSS提供时间序列分解、ARIMA、指数平滑等高级方法,可处理趋势、季节和循环成分,适合学术研究或企业级预测。

 1. 数据准备与时间定义

前提:数据需包含时间变量(如年/月),且按时间排序。  

操作步骤:  

1.1 导入数据:文件→打开→数据→选择.csv或.xls文件。  

1.2 定义时间格式:数据→定义日期和时间→选择时间单位(如“年,月”)→输入起始时间→确定。SPSS会生成YEAR_、DATE_等时间变量。



 2. 时间序列分解(提取趋势、季节和误差成分)

原理:将序列分解为长期趋势(T)、季节变动(S)、循环变动(C)和不规则变动(I),支持加法模型(Y=T+S+C+I)或乘法模型(Y=T×S×C×I)。  

操作步骤:  

2.1分析→时间序列预测→季节性分解→选择因变量→模型类型(加法/乘法)→确定。  

2.2 结果:生成4个新变量:误差序列(ERR)、季节调整序列(SAS)、趋势循环序列(STC)、季节因子(SAF)。  

   - 选择依据:波动幅度恒定用加法,随趋势增大用乘法。




 3. ARIMA模型(自回归移动平均,适用于非平稳数据)

原理:通过差分(d次)将非平稳序列转为平稳序列,结合自回归(AR(p))和移动平均(MA(q))建模,支持季节性ARIMA(SARIMA)。  

操作步骤:  

3.1 平稳性检验:分析→时间序列预测→序列图→观察趋势;分析→自相关→绘制ACF/PACF图,若拖尾则需差分。  

3.2 创建ARIMA模型:  

   - 分析→时间序列预测→创建传统模型→因变量→方法选择“ARIMA”→条件→设置p(自回归阶数)、d(差分次数)、q(移动平均阶数)→确定。  

   - 示例:ARIMA(2,1,1)表示2阶自回归、1次差分、1阶移动平均。



 4. 指数平滑法(SPSS增强版)

SPSS提供多种指数平滑模型,如:  

- 简单指数平滑:无趋势和季节成分;  

- Holt线性趋势:含线性趋势;  

- Winters模型:含趋势和季节成分(加法/乘法)。  

操作步骤:  

4.1分析→时间序列预测→创建传统模型→因变量→方法选择“指数平滑”→条件→选择模型类型(如Winters乘法模型)→确定。  

4.2结果评估:通过RMSE(均方根误差)和R²判断拟合效果,RMSE越小越好。



日常汇报用Excel快速出趋势图;学术研究或高精度预测用SPSS的ARIMA或季节分解模型。两者结合可兼顾效率与深度。




同样我们也可以使用一些时间序列机器学习模型



1.时间序列自回归综合移动平均模型(ARIMA)

概念:结合自回归和移动平均的模型。

原理:ARMA(p, q)模型:X_t = c + Σ(φ_i  X_{t-i}) + ε_t + Σ(θ_i  ε_{t-i})。

应用:适用于平稳时间序列。

可视化方法:拟合值与真实值的折线图、残差图、ACF和PACF图。

公共卫生意义:结合AR和MA,提高预测精度。




2.时间序列随机森林模型(RF)

概念:基于决策树的集成学习算法,用于回归和分类。

原理:通过构建多棵决策树,并取其输出的平均(回归)或投票(分类)进行预测。

应用:可用于时间序列预测,通常需要将时间序列转换为有监督学习问题。

可视化方法:特征重要性图、拟合值与真实值的折线图。

公共卫生意义:能够捕捉非线性关系,对于复杂疾病与气象因素的关系建模有优势。







医学统计数据分析分享交流SPSS、R语言、Python、ArcGis、Geoda、GraphPad、数据分析图表制作等心得。承接数据分析,论文返修,医学统计,机器学习,生存分析,空间分析,问卷分析业务。若有投稿和数据分析代做需求,可以直接联系我,谢谢!



!!!可加我粉丝群!!!

“医学统计数据分析”公众号右下角;

找到“联系作者”,

可加我微信,邀请入粉丝群!

【医学统计数据分析】工作室“粉丝群”

01

【临床】粉丝群

有临床流行病学数据分析

如(t检验、方差分析、χ2检验、logistic回归)、

(重复测量方差分析与配对T检验、ROC曲线)、

(非参数检验、生存分析、样本含量估计)、

(筛检试验:灵敏度、特异度、约登指数等计算)、

(绘制柱状图、散点图、小提琴图、列线图等)、

机器学习、深度学习、生存分析

等需求的同仁们,加入【临床】粉丝群

02

【公卫】粉丝群

疾控,公卫岗位的同仁,可以加一下【公卫】粉丝群,分享生态学研究、空间分析、时间序列、监测数据分析、时空面板技巧等工作科研自动化内容。

03

【生信】粉丝群

有实验室数据分析需求的同仁们,可以加入【生信】粉丝群,交流NCBI(基因序列)、UniProt(蛋白质)、KEGG(通路)、GEO(公共数据集)等公共数据库、基因组学转录组学蛋白组学代谢组学表型组学等数据分析和可视化内容。



或者可扫码直接加微信进群!!!





精品视频课程-“医学统计数据分析”视频号付费合集

“医学统计数据分析”视频号-付费合集兑换相应课程后,获取课程理论课PPT、代码、基础数据等相关资料,请大家在【医学统计数据分析】公众号右下角,找到“联系作者”,加我微信后打包发送。感谢您的支持!!



【声明】内容源于网络
0
0
医学统计数据分析
分享交流SPSS、R语言、Python、ArcGis、Geoda、GraphPad、数据分析图表制作等心得。承接数据分析,论文返修,医学统计,空间分析,机器学习,生存分析,时间序列,时空面板,深度学习,问卷分析等业务。公众号右下角可联系作者
内容 323
粉丝 0
医学统计数据分析 分享交流SPSS、R语言、Python、ArcGis、Geoda、GraphPad、数据分析图表制作等心得。承接数据分析,论文返修,医学统计,空间分析,机器学习,生存分析,时间序列,时空面板,深度学习,问卷分析等业务。公众号右下角可联系作者
总阅读78
粉丝0
内容323