教程 ·
时间序列分析怎么做:ADF、趋势与 ACF/PACF 诊断边界
从时间排序、缺失和频率检查开始,说明 ChatSRS 当前可执行的 ADF、线性趋势、ACF/PACF 输出,以及迁移 SPSS 时间序列任务时不能越过的 ARIMA 与预测边界。
时间序列分析不是把“日期列 + 数值列”丢进一个预测按钮。先确认时间顺序、频率、缺失与重复,再判断任务是描述趋势、诊断依赖结构,还是拟合模型并预测。本文只把当前可核验的产品能力写进承诺。
先分清四类任务
| 任务 | 主要问题 | 常见输出 |
|---|---|---|
| 描述 | 序列整体向上、向下还是没有明显线性趋势 | 样本量、均值、标准差、斜率、R² |
| 平稳性诊断 | 序列是否有单位根证据 | ADF 统计量、p 值、临界值 |
| 依赖结构诊断 | 当前值与过去若干期怎样相关 | ACF、PACF |
| 建模与预测 | 用什么模型、未来值和不确定性如何 | 参数、残差诊断、预测区间、误差评估 |
前三类输出可以帮助研究者形成下一步候选,但不能自动替代第四类任务。尤其不能因为看到了 ACF/PACF,就直接宣称某个 ARIMA 阶数已经成立。
数据进入分析前的五项核对
- 一行是不是一个时间点。 同一时间点若有多条记录,要先明确聚合规则。
- 是否按时间升序排列。 当前分析器按行顺序理解时间,不会替你重建真实时间轴。
- 时间频率是否一致。 月度、季度和不规则随访不能混在同一序列里解释。
- 缺失代表什么。 未观测、停业、零发生量不是同一含义;补值规则必须由研究设计决定。
- 季节周期是否有业务依据。 月度数据可能考虑 12 期周期,但“12”不是所有序列的默认答案。
时间字段本身也要检查重复、时区和日期解析。分析数值列前,先保存原始数据与清洗日志,避免把排序或补值决定埋进不可追溯的结果里。
ChatSRS 当前可执行范围
当前 time_series 分析器可核验的范围是:
- ADF 单位根检验:对有效样本不少于 10 的数值序列输出统计量、p 值和 1%/5%/10% 临界值;
- 线性趋势:按行序号拟合简单线性趋势,输出样本量、均值、标准差、趋势方向、斜率与 R²;
- ACF/PACF:当序列至少有 20 个有效观测时,对第一个数值序列输出最多 10 阶的自相关与偏自相关系数。
当前实现会先对每个数值序列删除缺失值,再把剩余观测按现有行顺序交给趋势、ADF 和 ACF/PACF。删除以后不会保留缺口的真实时间间隔:如果月度序列缺了某个月,缺口两侧的观测会被当作相邻期。分析前必须先补齐时间轴或明确不规则间隔的处理规则,不能让自动删除把“缺月”压缩成连续月份。
当前不执行 ARIMA/SARIMA 模型拟合、自动定阶、Ljung-Box 残差诊断或未来值预测,也不输出 Prophet 对比、预测区间、MAPE、RMSE、MAE。页面可以解释这些后续概念,但不能把它们伪装成当前系统已经生成的结果。
一个与当前能力一致的请求
确认数据已按时间排序后,可以这样描述:
“对月度门诊量做时间序列诊断:报告 ADF、线性趋势和 ACF/PACF。不要拟合 ARIMA,也不要生成未来预测;请标明有效样本和缺失处理提醒。”
这条请求把诊断与预测分开,输出失败时也更容易定位是数据、样本量还是方法边界问题。
ADF 结果怎么读
ADF 的原假设通常是“序列含单位根”。因此:
- p 值较小,只表示在当前检验规格与样本下有证据拒绝单位根原假设;
- ADF 的 p 值较大表示未拒绝单位根原假设,不等于已经证明序列一定非平稳;
- 是否包含截距、趋势项、滞后阶数和结构突变都会影响结论。
当前分析器使用 autolag="AIC",但没有暴露截距或趋势规格选择,也没有自动差分后重跑。看到“未能拒绝”时,应回到图形、研究期间、结构突变和检验规格继续核对,不能机械地把 d=1 写进模型。
线性趋势结果怎么读
当前趋势输出来自“数值对行序号”的简单线性回归:
- 斜率为正且检验显著,可描述当前样本期内存在上升的线性趋势证据;
- R² 表示这条简单直线解释的样本内变异比例;
- 它不处理季节性、自相关、政策断点或非线性,也不是因果效应。
如果数据频率不规则,行序号斜率甚至不能直接解释为“每月变化量”。此时应先建立真实时间间隔,或转到能显式处理时间轴的工具。
ACF/PACF 能说明什么
ACF 描述序列与自身滞后值的相关;PACF 描述控制更短滞后后某一阶的增量关系。它们可以提示依赖结构,但 ACF/PACF 不能单独证明 AR、MA 或 ARIMA 模型正确,更不能证明预测准确。
当前实现还有两个重要限制:
- 只对请求中的第一个有效数值序列输出 ACF/PACF;
- 最多输出 10 阶,不能据此检查月度数据常见的 12 期季节峰。
若研究问题需要季节性、模型比较或预测,应把频率、候选模型、训练/验证切分、残差诊断和误差指标写成独立合同,再使用能真实执行这些步骤的软件。
SPSS 时间序列分析操作的在线替代:先迁移任务,不迁移菜单
搜索“SPSS 时间序列分析操作的在线替代”时,最容易误解成网页工具会一比一复制 SPSS 菜单和输出。更可靠的迁移方式是逐项对照:
| 要核对的对象 | 迁移问题 |
|---|---|
| 数据 | 时间变量、频率、缺失、重复和异常点是否一致 |
| 检验 | ADF 的规格、滞后选择和临界值口径是否一致 |
| 图表/统计 | ACF/PACF 的阶数、置信带和预处理是否一致 |
| 模型 | 是否真的拟合 ARIMA/SARIMA,估计方法和参数是否一致 |
| 预测 | 训练窗口、验证集、预测期、区间与误差指标是否一致 |
ChatSRS 当前可以承接前三项中的部分诊断,不提供 SPSS 界面、语法或文件级结果的一比一兼容,也不能作为完整的 SPSS 时间序列预测在线替代。需要预测时,应保留 SPSS、R、Python 或其他已验证工具的模型与输出作为真源。
什么时候转到其他方法
- 多个平稳序列之间的动态关系,需要转到真实支持 VAR、滞后选择和诊断的工具;
- 金融收益率的条件波动,需要转到真实支持 GARCH、分布设定和残差诊断的工具;
- 只想比较时间前后两次测量,可能应先阅读 独立样本与配对样本 t 检验怎么选,而不是直接做时间序列;
- 同一对象有三个及以上重复时点,应考虑重复测量或纵向模型,而不是把时点当独立组。
方法名称由设计与估计目标决定,不能用“哪个结果更显著”倒推方法。
报告模板
对按时间升序排列的
[变量](有效观测N=[ ])进行描述性时间序列诊断。报告 ADF 统计量、p 值与临界值,并说明当前检验规格;同时报告简单线性趋势的斜率和 R²,以及前[ ]阶 ACF/PACF。以上结果用于诊断,不包含 ARIMA/SARIMA 拟合、残差白噪声检验或未来预测,因此不据此评价模型精度。
把实际数字逐项回填,并保留运行版本、输入数据哈希和缺失处理规则。不要使用示例数字代替真实输出。
开始前的最小清单
- 时间顺序和频率已经核对;
- 重复时间点与缺失的处理有记录;
- 请求只包含当前支持的 ADF、趋势和 ACF/PACF;
- 预测任务已另行选择真实可执行工具;
- 结果不会被写成因果或准确率保证。
确认这些边界后,可进入 ChatSRS 运行时间序列诊断。研究者仍需核对数据、检验规格与最终表述。
相关阅读
本文只描述可由当前实现核验的能力;产品输出必须与原始数据、研究设计和独立复核共同使用。