0

我试图找出我的数据中是否存在 6 个月的季节性。我想通过频谱分析来做到这一点,我会在特定频率下查看频谱的 Ftest。

如果我根据频率为 12 的时间序列对象进行计算,我正在寻求帮助以了解频谱分析中的 x 轴的含义(即频率的含义)。

这里生成了一些数据。我的数据在 10 年内每月收集一次:

data = ts(1:120, frequency = 12, start = c(1959, 1)) # data that is collected each month over 10 years.
library(multitaper)
resSpec <- spec.mtm(data, nFFT = "default", 
                Ftest = TRUE,
                jackknife = FALSE, maxAdaptiveIterations = 100,
                plot = TRUE, na.action = na.fail) 

多锥输出

如果我正在寻找 6 个月(每年 2 次)周期的频谱功率,我是在寻找频率 1/6 还是 6/12?

4

1 回答 1

0

频率输出是每年的周期,而不是月。您可以这样检查:

curve <- function(i) {
    sin(2*pi/6 * i)
}

data = ts(sapply(1:120, curve), frequency = 12, start = c(1959, 1))

resSpec <- spec.mtm(data, nFFT = "default", 
                Ftest = TRUE,
                jackknife = FALSE, maxAdaptiveIterations = 100,
                plot = TRUE, na.action = na.fail, dtUnits="year", deltat=1/12) 

所以你要找的频率是2(周期/年)

于 2017-02-16T20:31:27.753 回答