Skip to contents

Fit a periodically integrated autoregressive model.

Usage

pclspiar(x, d, p, icoef = NULL, parcoef = NULL, sintercept = FALSE,
         seasonof1st = 1, weights = TRUE, itol = 1e-07, maxniter = 1000)

Arguments

x

time series.

d

period.

p

order of the model, a positive integer, see Details.

icoef

initial values for the periodic integration coefficients. If missing or NULL suitable values are computed.

parcoef

not used currently.

sintercept

if TRUE include seasonal intercepts.

seasonof1st

season of the first observation.

weights

if TRUE, use periodic weights in the nonlinear least squares, see Details.

itol

threshold value for the stopping criterion.

maxniter

maximum number of iterations.

Details

This function fits a periodically integrated autoregressive model using non-linear least squares. The order of integration is one and the order of the periodically correlated part is p - 1. So, p must be greater than or equal to one.

If weights = TRUE the non-linear optimisation is done with weights inversely proportional to the innovation variances for the seasons, otherwise the unweighted sum of squared residuals is minimised.

Value

a list currently containing the following elements:

icoef

coefficients of the periodic integration filter.

parcoef

coefficients of the PAR filter.

sintercept

seasonal intercepts.

sigma2hat

innovation variances.

References

Franses PH (1996). Periodicity and Stochastic Trends In Economic Time Series. Oxford University Press Inc., New York.

Franses PH, Paap R (2004). Periodic Time Series Models. Oxford University Press Inc., New York.

Boshnakov GN, Iqelan BM (2009). “Generation of time series models with given spectral properties.” J. Time Series Anal., 30(3), 349--368. ISSN 0143-9782, doi: 10.1111/j.1467-9892.2009.00617.x .

Author

Georgi N. Boshnakov

See also

Examples

## see also the examples for fitPM()
ts1 <- window(dataFranses1996[ , "CanadaUnemployment"],
              start = c(1960, 1), end = c(1987, 4))
pclspiar(ts1, 4, p = 1, sintercept = TRUE)
#> $icoef
#>    alpha1    alpha2    alpha3    alpha4 
#> 1.0550271 0.9975805 0.9886708 0.9610295 
#> 
#> $parcoef
#>     
#> [1,]
#> [2,]
#> [3,]
#> [4,]
#> 
#> $sintercept
#>   Season1   Season2   Season3   Season4 
#> 116.64694 -83.39428 -46.15717  33.53077 
#> 
#> $sigma2hat
#> [1] 2431.805 4378.808 3043.498 1441.109
#> 
pclspiar(ts1, 4, p = 2, sintercept = TRUE)
#> $icoef
#>    alpha1    alpha2    alpha3    alpha4 
#> 1.0397236 1.0179266 0.9852002 0.9590497 
#> 
#> $parcoef
#>                        [,1]
#> Season1:Lagged_1  0.6319228
#> Season2:Lagged_1 -0.4231896
#> Season3:Lagged_1  0.6888947
#> Season4:Lagged_1  0.2000132
#> 
#> $sintercept
#>   Season1   Season2   Season3   Season4 
#> 102.95274 -43.53839  24.92487  43.56982 
#> 
#> $sigma2hat
#> [1] 1918.2343 4059.6479  901.6721 1318.0657
#>