SPSS 命令: SPSS SPECTRA

谱分析:周期图与谱密度

谱分析把序列分解为正弦波和余弦波,显示方差在各频率上的分布,任何长度的周期都会表现为峰值。

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

能告诉你什么

Crosstabs 运行单变量的 SPSS SPECTRA:给出傅里叶频率上的周期图,以及用 Tukey-Hamming、Tukey、Parzen、Bartlett 或 Daniell 窗口平滑后的谱密度。

  • 哪些周期长度承载的方差最多,周期 = 1 / 频率。
  • 某个预期的周期(如 12 个月或 4 周的调研节奏)是否真的比相邻频率突出。
  • 每个周期图值背后的傅里叶余弦和正弦系数。

适用场景

适合使用

  • 怀疑存在周期但不知道长度,或想在建立季节模型前确认周期性。
  • 较长的日度或周度序列中可能叠加了多种节律。
  • 希望用频域视角补充 ACF 的结果。

改用其他方法

  • 序列有强趋势:低频成分会掩盖周期,应先差分或去趋势(例如用“创建时间序列”)。
  • 需要两个序列之间的相干或相位:尚不支持双变量 SPECTRA。
  • 序列很短或有缺口:SPECTRA 需要完整序列,而点数少时频率分辨率很粗。

在 Crosstabs 中如何操作

  1. 01

    打开频谱分析

    在“统计”模式下,从“预测”组中选择“频谱分析”(SPECTRA)。

  2. 02

    定义时间轴

    把行映射为等间隔的时间点;由于不允许缺口,空缺期请用线性插值填补。

  3. 03

    选择序列和谱窗口

    选择“序列”和“谱窗口”:Tukey-Hamming(默认)、Tukey (Hanning)、Parzen、Bartlett、Daniell(单位)或无。

  4. 04

    设置跨度

    设置窗口“跨度”(默认 5,奇数,最大 51)。跨度越宽平滑越强,但会模糊相近的峰。可选勾选“中心化变量(减去平均值)”。

  5. 05

    运行

    点击“运行”,查看周期图与谱密度图表以及“单变量统计”表。

计算示例

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

数据

48 个无趋势的模拟月度数据:水平 45,叠加与其他示例相同的 12 月高峰季节模式,以及由固定随机种子生成的正态噪声(标准差 1.1)。

单变量统计(频率 1/48 至 8/48)
频率周期周期图谱密度估算
0.020848.0002.3631.732
0.041724.0000.65240.797
0.062516.0000.91441.137
0.083312.000200.32741.804
0.10429.6000.13541.988
0.12508.0004.41144.000
0.14586.8572.8594.894
0.16676.00015.0205.150

窗口:Tukey-Hamming,跨度 5。共 24 个傅里叶频率,此处列出前八个。

结果解读

周期图只有一个突出的尖峰:频率 0.0833 处为 200.33,即每 12.00 个月一个周期——年度季节性。跨度为 5 的 Tukey-Hamming 窗口把这个尖峰摊到相邻频率上,那里的谱密度在 40.80 到 44.00 之间;跨度越窄,峰值越尖锐,但估计越不稳定。

输出表格说明

单变量统计
每个傅里叶频率 k/N 的频率、周期、余弦与正弦系数、周期图 I(k) = (a² + b²)·N/2 以及谱密度估算值。
按频率的周期图和谱密度
两条曲线的折线图;摘要句会指出周期图最大尖峰所在的频率。

前提假设与注意事项

  • 序列平稳;趋势或变化的方差会扭曲低频部分。
  • 时间点等间隔且完整。
  • 只在傅里叶频率 k/N 上计算,若周期长度不能整除序列长度,其能量会分散到相邻频率。

结果如何验证

在偶数和奇数长度的参考序列上,傅里叶余弦、正弦系数和周期图与 numpy FFT 的误差在 1e-10 以内,与 scipy.signal.periodogram 在 1e-9 以内(已考虑 scipy 对奈奎斯特频率项减半)。五种窗口在跨度 5 下、以及 Tukey-Hamming 在跨度 9 下的平滑谱密度,与按 SPSS 窗口公式独立编写的 Python 实现对照,误差在 1e-10 以内。 验证证据(英文)

常见问题

如何把频率换算成周期长度?

周期 = 1 / 频率,单位是时间点。月度数据在 0.0833 处的峰值对应 12 个月周期;周度数据在 0.25 处的峰值对应 4 周周期。

应选哪种窗口和跨度?

Tukey-Hamming 加跨度 5 是 SPSS 默认设置,适合作为起点。跨度窄有助于分开相近的峰,跨度宽则估计更平滑稳定。选择“无”即显示原始周期图。

为什么最大的峰在最低频率处?

趋势看起来就像一个非常长的周期。应先对序列差分或去除趋势,否则它会掩盖较短的周期。

为什么谱密度的峰值偏离了周期图的尖峰?

平滑会把一个尖锐的峰摊到跨度内的相邻频率上,因此谱密度可能变得平坦,甚至在一两个频率之外略高。请查看周期图列,或减小跨度。

用你自己的数据运行谱分析

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

打开分析工作区

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