Answers:
您应该意识到,不建议使用周期图来估计功率谱,实际上,自1896年以来,它就一直是不好的做法。对于少于数百万个数据样本(甚至是……)的数据,这是一个不一致的估计器,通常有偏见。完全相同的事情适用于使用自相关的标准估计(即Bartlett),因为它们是傅立叶变换对。如果您使用一致的估算器,则可以使用一些选项。
其中最好的是功率谱的多窗口(或锥度)估计。在这种情况下,通过使用每个窗口在感兴趣频率处的系数,可以针对白噪声的零假设来计算谐波F统计量。这是检测噪声中线路成分的出色工具,强烈建议使用。在平稳性假设下,它是信号处理社区中用于检测噪声周期性的默认选择。
您可以通过multitaper
R中的程序包(可通过CRAN获得)访问频谱估计的多变量方法和相关的F检验。软件包随附的文档应该足以帮助您入门。F检验是函数调用中的一个简单选项spec.mtm
。
定义这两种技术并为其提供算法的原始参考书是《频谱估计和谐波分析》,DJ Thomson,《 IEEE议事录》,第1卷。70页。1055-1096,1982。
这是将包含的数据集与multitaper
包一起使用的示例。
require(multitaper);
data(willamette);
resSpec <- spec.mtm(willamette, k=10, nw=5.0, nFFT = "default",
centreWithSlepians = TRUE, Ftest = TRUE,
jackknife = FALSE, maxAdaptiveIterations = 100,
plot = TRUE, na.action = na.fail)
您应该注意的参数是k和nw:这些是窗口数(以上设置为10)和时间带宽乘积(以上设置为5.0)。对于大多数应用程序,您可以轻松地将其保留为这些准默认值。所述centreWithSlepians命令删除平均使用投影到的Slepian窗口时间序列中的鲁棒估计-这还建议,作为离去平均值在低频产生大量的电能。
我还建议以对数刻度绘制“ spec.mtm”的频谱输出,因为它可以大幅度地清除东西。如果您需要更多信息,只需发布,我们很乐意提供。
multitaper
软件包似乎采用了更先进的技术来逐渐缩小和计算置信区间。但是我认为想法是一样的,根据大卫·斯托弗(David Stoffer)的说法。这是我唯一想到的是,现在讲授香草百里达goram仍然有意义。
bootspecdens
可能会有所帮助。