The spectrum
function estimates the spectral density of a
time series.
spectrum(x, …, method = c("pgram", "ar"))
A univariate or multivariate time series.
String specifying the method used to estimate the
spectral density. Allowed methods are "pgram"
(the default)
and "ar"
. Can be abbreviated.
Further arguments to specific spec methods or
plot.spec
.
An object of class "spec"
, which is a list containing at
least the following components:
vector of frequencies at which the spectral density is estimated. (Possibly approximate Fourier frequencies.) The units are the reciprocal of cycles per unit time (and not per observation spacing): see ‘Details’ below.
Vector (for univariate series) or matrix (for multivariate
series) of estimates of the spectral density at frequencies
corresponding to freq
.
NULL
for univariate series. For multivariate time
series, a matrix containing the squared coherency
between different
series. Column coh
contains the squared coherency between columns x
, where
NULL
for univariate series. For multivariate
time series a matrix containing the cross-spectrum phase between
different series. The format is the same as coh
.
The name of the time series.
For multivariate input, the names of the component series.
The method used to calculate the spectrum.
The result is returned invisibly if plot is true.
spectrum
is a wrapper function which calls the methods
spec.pgram
and spec.ar
.
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
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.
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-PLUS. Fourth edition. Springer. (Especially pages 392--7.)
# NOT RUN {
require(graphics)
## Examples from Venables & Ripley
## spec.pgram
par(mfrow = c(2,2))
spectrum(lh)
spectrum(lh, spans = 3)
spectrum(lh, spans = c(3,3))
spectrum(lh, spans = c(3,5))
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")
# }
Run the code above in your browser using DataLab