R: Estimate spectral density at zero

spectrum0 {coda} | R Documentation

## Estimate spectral density at zero

### Description

The spectral density at frequency zero is estimated by fitting a glm to the low-frequency end of the periodogram. `spectrum0(x)/length(x)` estimates the variance of `mean(x)`.

### Usage

    spectrum0(x, max.freq = 0.5, order = 1, max.length = 200)

### Arguments

`x` | A time series.
`max.freq` | The glm is fitted on the frequency range (0, max.freq]
`order` | Order of the polynomial to fit to the periodogram.
`max.length` | The data `x` is aggregated if necessary by taking batch means so that the length of the series is less than `max.length`. If this is set to `NULL` no aggregation occurs.

### Details

The raw periodogram is calculated for the series `x` and a generalized linear model with family `Gamma` and log link is fitted to the periodogram.

The linear predictor is a polynomial in terms of the frequency. The degree of the polynomial is determined by the parameter `order`.

### Value

A list with the following values

`spec` | The predicted value of the spectral density at frequency zero.

### Theory

Heidelberger and Welch (1991) observed that the usual non-parametric estimator of the spectral density, obtained by smoothing the periodogram, is not appropriate for frequency zero. They proposed an alternative parametric method which consisted of fitting a linear model to the log periodogram of the batched time series. Some technical problems with model fitting in their original proposal can be overcome by using a generalized linear model.

Batching of the data, originally proposed in order to save space, has the side effect of flattening the spectral density and making a polynomial fit more reasonable. Fitting a polynomial of degree zero is equivalent to using the ‘batched means’ method.

### Note

The definition of the spectral density used here differs from that used by `spec.pgram`. We consider the frequency range to be between 0 and 0.5, not between 0 and `frequency(x)/2`.

The model fitting may fail on chains with very high autocorrelation.

### References

Heidelberger, P and Welch, P.D. A spectral method for confidence interval generation and run length control in simulations. Communications of the ACM, Vol 24, pp233-245, 1981.

### See Also

`spectrum`, `spectrum0.ar`, `glm`.

[Package coda version 0.19-1 Index]