spec.pgram
位于 stats
包(package)。 说明
spec.pgram
使用快速傅里叶变换计算周期图,并可选择使用一系列修改的 Daniell 平滑器(移动平均值为最终值赋予一半权重)来平滑结果。
用法
spec.pgram(x, spans = NULL, kernel, taper = 0.1,
pad = 0, fast = TRUE, demean = FALSE, detrend = TRUE,
plot = TRUE, na.action = na.fail, ...)
参数
x |
单变量或多变量时间序列。 |
spans |
奇整数向量,给出用于平滑周期图的修改丹尼尔平滑器的宽度。 |
kernel |
或者,类 |
taper |
指定要逐渐减少的数据比例。在系列开始和结束时,对这部分数据应用分割余弦钟形锥度。 |
pad |
填充数据的比例。在序列末尾添加零,以按比例 |
fast |
逻辑性;如果是 |
demean |
合乎逻辑的。如果 |
detrend |
合乎逻辑的。如果是 |
plot |
绘制周期图? |
na.action |
|
... |
传递给 |
细节
原始周期图不是谱密度的一致估计量,但相邻值是渐近独立的。因此,假设谱密度是平滑的,可以通过平滑原始周期图来导出一致的估计量。
该序列将自动用零填充,直到序列长度是一个高度复合数,以帮助快速傅里叶变换。这是由 fast
而不是 pad
参数控制的。
零处的周期图理论上为零,因为系列的均值被删除(但这可能会受到锥化的影响):它在平滑过程中被相邻值的插值所取代,并且不会返回该频率的值。
值
类 "spec"
的列表对象(请参阅 spectrum
),具有以下附加组件:
kernel |
|
df |
谱密度估计的分布可以通过具有 |
bandwidth |
Bloomfield(1976 年,第 201 页)定义的内核平滑器的等效带宽。 |
taper |
|
pad |
|
detrend |
|
demean |
|
如果 plot
为 true,则结果会以不可见的方式返回。
例子
require(graphics)
## Examples from Venables & Ripley
spectrum(ldeaths)
spectrum(ldeaths, spans = c(3,5))
spectrum(ldeaths, spans = c(5,7))
spectrum(mdeaths, spans = c(3,3))
spectrum(fdeaths, spans = c(3,3))
## bivariate example
mfdeaths.spc <- spec.pgram(ts.union(mdeaths, fdeaths), spans = c(3,3))
# plots marginal spectra: now plot coherency and phase
plot(mfdeaths.spc, plot.type = "coherency")
plot(mfdeaths.spc, plot.type = "phase")
## now impose a lack of alignment
mfdeaths.spc <- spec.pgram(ts.intersect(mdeaths, lag(fdeaths, 4)),
spans = c(3,3), plot = FALSE)
plot(mfdeaths.spc, plot.type = "coherency")
plot(mfdeaths.spc, plot.type = "phase")
stocks.spc <- spectrum(EuStockMarkets, kernel("daniell", c(30,50)),
plot = FALSE)
plot(stocks.spc, plot.type = "marginal") # the default type
plot(stocks.spc, plot.type = "coherency")
plot(stocks.spc, plot.type = "phase")
sales.spc <- spectrum(ts.union(BJsales, BJsales.lead),
kernel("modified.daniell", c(5,7)))
plot(sales.spc, plot.type = "coherency")
plot(sales.spc, plot.type = "phase")
作者
Originally Martyn Plummer; kernel smoothing by Adrian Trapletti, synthesis by B.D. Ripley
参考
Bloomfield, P. (1976) Fourier Analysis of Time Series: An Introduction. Wiley.
Brockwell, P.J. and Davis, R.A. (1991) Time Series: Theory and Methods. Second edition. Springer.
Venables, W.N. and Ripley, B.D. (2002) Modern Applied Statistics with S. Fourth edition. Springer. (Especially pp. 392-7.)
也可以看看
spectrum
, spec.taper
, plot.spec
, fft
相关用法
- R spec.taper 通过余弦钟锥化时间序列
- R spec.ar 通过 AR Fit 估计时间序列的频谱密度
- R spectrum 谱密度估计
- R splinefun 插值样条曲线
- R stlmethods STL 对象的方法
- R summary.nls 总结非线性最小二乘模型拟合
- R summary.manova 多元方差分析的汇总方法
- R summary.lm 总结线性模型拟合
- R smooth Tukey 的(运行中值)平滑
- R screeplot 屏幕图
- R sortedXyData 创建一个sortedXyData对象
- R sigma 提取残余标准差“Sigma”
- R setNames 设置对象中的名称
- R stat.anova GLM 方差分析统计
- R scatter.smooth 黄土拟合的平滑曲线散点图
- R summary.princomp 主成分分析的汇总方法
- R symnum 符号数字编码
- R se.contrast 模型术语对比的标准误差
- R summary.aov 方差模型分析总结
- R stepfun Step Functions - 创建和类
- R shapiro.test 夏皮罗-威尔克正态性检验
- R selfStart 构建自启动非线性模型
- R smooth.spline 拟合平滑样条曲线
- R supsmu 弗里德曼的超级平滑
- R stl Loess 时间序列的季节分解
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Estimate Spectral Density of a Time Series by a Smoothed Periodogram。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。