spectrum {ts} | R Documentation |
Spectral Density Estimation
Description
The spectrum
function estimates the spectral density of a
time series. This is a wrapper function which calls the methods
spec.pgram
and spec.ar
.
The generic function plot
has a method for spec
objects:
for multivariate time series it plots the marginal spectra of the
series or pairs plots of the coherency and phase of the cross-spectra.
Usage
spectrum(x, method = c("pgram","ar"), plot = TRUE, ...)
plot.spec(spec.obj, add=FALSE, ci=0.95,
log = c("yes", "dB", "no"), ci.col = "blue", ci.lty = 3,
plot.type = c("marginal", "coherency", "phase"), ...)
Arguments
x |
A univariate or multivariate time series. |
method |
String specifying the method used to estimate the spectral density. Allowed methods are "pgram" (the default) and "ar". |
plot |
logical. If |
... |
Further arguments to specific spec methods or
|
spec.obj |
An object of class |
add |
logical. If |
ci |
Coverage probability for confidence interval. Plotting of the
confidence bar is omitted unless |
log |
If |
ci.col , ci.lty |
Colour for plotting confidence bar, colour and line type for confidence intervals for coherency and phase. |
plot.type |
For multivariate time series, the type of plot required. Only the first character is needed. |
... |
Further graphical parameters. |
Details
The spectrum here is defined with scaling 1/frequency(x)
,
following S-PLUS. This makes the spectral density a density over the
range (-frequency(x)/2, +frequency(x)/2]
, whereas a more
common scaling is 2\pi
and range (-0.5, 0.5]
(e.g. Bloomfield) or 1 and range (-\pi, \pi]
.
If available, a confidence interval will be plotted by
plot.spec
: this is asymmetric, and the width of the centre
mark indicates the equivalent bandwidth.
Value
An object of class spec
, which is a list containing at
least the following elements:
freq |
vector of frequencies at which the spectral density is estimated. (Possibly approximate Fourier frequencies.) |
spec |
Vector (for univariate series) or matrix (for multivariate
series) of estimates of the spectral density at frequencies
corresponding to |
coh |
|
phase |
|
series |
The name of the time series. |
snames |
For multivariate input, the names of the component series. |
method |
The method used to calculate the spectrum. |
The result is returned invisibly if plot
is true.
Note
The default plot for spec
objects is quite complex, including an
error bar and default title, subtitle and axis labels. The defaults can
all be overridden by supplying the appropriate graphical parameters.
Author(s)
Martyn Plummer, B.D. Ripley
References
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. (1997) Modern Applied Statistics with S-PLUS. Second edition. Springer. (Especially pp. 437–442.)
See Also
spec.pgram
Examples
## Examples from Venables & Ripley
## spec.pgram
par(mfrow=c(2,2))
data(lh)
spectrum(lh)
spectrum(lh, spans=3)
spectrum(lh, spans=c(3,3))
spectrum(lh, spans=c(3,5))
data(UKLungDeaths)
spectrum(ldeaths)
spectrum(ldeaths, spans=c(3,3))
spectrum(ldeaths, spans=c(3,5))
spectrum(ldeaths, spans=c(5,7))
spectrum(ldeaths, spans=c(5,7), log="dB", ci=0.8)
# for multivariate examples see the help for spec.pgram
## spec.ar
spectrum(lh, method="ar")
spectrum(ldeaths, method="ar")