SPSS 命令: SPSS SEASON

季节分解与季节调整

季节分解把序列拆成重复出现的季节模式、平滑的趋势循环和剩余部分。

免费 · 无需注册 · 文件留在本机 · 更新于 2026年10月18日

能告诉你什么

Crosstabs 采用 SPSS SEASON 的经典移动平均比率法(乘法或加法),给出季节因子,并可把 SAS、SAF、STC 和 ERR 序列下载为 CSV。

  • 每个月或季度通常比趋势高或低多少:季节因子 108% 表示高出 8%。
  • 季节调整序列(SAS),便于在剔除日历效应后比较相邻各期。
  • 噪声之下的趋势循环(STC),以及二者都无法解释的不规则成分(ERR)。

适用场景

适合使用

  • 月度追踪数据每年 12 月都会上升,你想知道今年 12 月是否比往年更好。
  • 报告或后续建模需要季节调整后的数值。
  • 想判断季节波动是恒定的(加法)还是随水平增大的(乘法)。

改用其他方法

  • 没有明确的周期性,或数据不足两个完整周期。
  • 需要预测:使用含季节成分的指数平滑或季节性 ARIMA 模型。
  • 需要 X-13ARIMA-SEATS 那样含交易日和节假日效应的调整;SEASON 是更简单的经典方法。

在 Crosstabs 中如何操作

  1. 01

    打开季节性分解

    在“统计”模式下,从“预测”组中选择“季节性分解”(SEASON)。

  2. 02

    定义时间轴并设置周期性

    将“周期性”设为 2 或以上,例如“每月(12)”或“季度(4)”。序列不能有缺口,如有空缺期,请勾选“用线性插值填补缺失的时间点”。

  3. 03

    选择序列和模型

    选择“序列”,并将“模型”设为“乘法”(默认)或“加法”。

  4. 04

    选择移动平均权重

    周期性为偶数时,可选“端点按 0.5 加权”(中心化 2 × p 移动平均,SPSS 默认)或“所有点相等”。周期性为奇数时始终等权。

  5. 05

    运行并下载

    点击“运行”,查看“季节因子”表和图表,然后用“下载 ERR、SAS、SAF 和 STC (CSV)”保存新序列。

计算示例

以下结果由 Crosstabs 引擎在构建本页时根据模拟数据实际计算得出,并非手工填写。

数据

48 个模拟月度数据(2022 年 1 月至 2025 年 12 月),为某品牌追踪指标的百分比:起点 40,每月上升 0.25 个百分点,叠加 12 月最高、7 月最低的固定季节模式,以及由固定随机种子生成的正态噪声(标准差 1.1),每次构建得到相同序列。

季节因子
周期季节因子(%)
1(1 月)102.949
2(2 月)102.613
3(3 月)101.495
4(4 月)99.632
5(5 月)93.675
6(6 月)94.819
7(7 月)93.951
8(8 月)97.230
9(9 月)97.116
10(10 月)103.551
11(11 月)103.973
12(12 月)108.996

乘法模型;跨度为 12 的移动平均,端点按 0.5 加权。周期 1 对应 2022 年 1 月。

最后六个月:原始、SAS 与 STC
时间点原始季节调整(SAS)趋势循环(STC)
2025-0748.251.3050.12
2025-0845.646.9049.95
2025-0950.952.4150.76
2025-1052.550.7051.32
2025-1155.253.0951.88
2025-1256.551.8452.16

这些列来自面板中 ERR、SAS、SAF 和 STC 的 CSV 下载。

结果解读

第 12 月的水平为趋势的 109.0%,第 5 月为 93.7%。用这些因子相除即得季节调整序列:2025 年 12 月原始值为 56.5,调整后为 51.84,其趋势循环值为 52.16。

输出表格说明

季节因子
周期内每个位置一个因子。乘法因子为平均为 100 的百分比(对移动平均比率取中位平均);加法因子为以 0 为中心的差值。周期 1 对应第一个时间点在周期中的位置。
原始序列、季节调整序列和趋势循环序列
原始序列、SAS 和 STC 的图表。CSV 下载还包含 SAF(各时间点的季节因子)和 ERR(不规则成分)。

前提假设与注意事项

  • 文件所覆盖的各年份季节模式稳定;季节因子是所有周期的平均。
  • 乘法模型要求数值为正;可能为零或负的序列请用加法模型。
  • 序列在观测区间内没有缺失值。

结果如何验证

中心化权重的加法模型与 statsmodels seasonal_decompose(季节成分和趋势成分)对照,误差在 1e-11 以内。乘法模型、等权移动平均和奇数周期则与按 SPSS 手册公式独立编写的 numpy 实现对照,季节因子、SAS、STC 和 ERR 的误差均在 1e-11 以内。 验证证据(英文)

常见问题

选乘法还是加法?

如果无论水平高低,12 月总比趋势高约 10%,用乘法;如果总是高约 4 个点,用加法。画出序列通常就能看清。

SAS、SAF、STC 和 ERR 分别代表什么?

SAS 是季节调整序列,SAF 是各时间点的季节调整因子,STC 是平滑后的趋势循环,ERR 是不规则剩余成分。名称沿用 SPSS 生成变量的前缀。

新序列会加入我的数据集吗?

不会。SPSS SEASON 会创建新变量;这里四个序列以 CSV 形式提供下载,打开的文件不会被修改。

需要多少年的数据?

至少两个完整周期,最好四个或以上:移动平均在两端各损失半个周期,而每个季节因子只能对剩下的周期取平均。

用你自己的数据运行季节分解

打开 .sav、CSV 或 Excel 文件。所有计算都在浏览器中完成,文件不会离开你的设备。

打开分析工作区

SPSS 是 IBM Corp. 的商标。Crosstabs 与 IBM 无关联,也未获得 IBM 认可。