Create ARMA objects
ArmaModel.Rd
Create ARMA objects.
Examples
## MA
( ma2a1 <- MaModel(ma = c(0.3, 0.7), sigma2 = 1) )
#> An object of class "MaModel"
#> mean: 0
#> sigmaSq: 1
#>
#> slot "ar":
#> An object of class "BJFilter"
#> order: 0
#> Coefficients:
#> numeric(0)
#>
#> slot "ma":
#> An object of class "SPFilter"
#> order: 2
#> Coefficients:
#> [1] 0.3 0.7
autocorrelations(ma2a1, maxlag = 6)
#> An object of class "Autocorrelations"
#> 0 1 2 3 4 5 6
#> 1.0000000 0.3227848 0.4430380 0.0000000 0.0000000 0.0000000 0.0000000
partialAutocorrelations(ma2a1, maxlag = 6)
#> An object of class "PartialAutocorrelations"
#> Lag_0 Lag_1 Lag_2 Lag_3 Lag_4 Lag_5
#> 1.00000000 0.32278481 0.37825873 -0.27488077 -0.14556210 0.21468510
#> Lag_6
#> 0.03073491
autocovariances(ma2a1, maxlag = 6)
#> An object of class "Autocovariances"
#> Lag_0 Lag_1 Lag_2 Lag_3 Lag_4 Lag_5 Lag_6
#> 1.58 0.51 0.70 0.00 0.00 0.00 0.00
partialVariances(ma2a1, maxlag = 6)
#> An object of class "PartialVariances"
#> 0 1 2 3 4 5 6
#> 1.580000 1.415380 1.212868 1.121224 1.097467 1.046885 1.045896
## sigma2 is set to NA if not specified
## but things that don't depend on it are computed:
( ma2a2 <- MaModel(ma = c(0.3, 0.7)) )
#> An object of class "MaModel"
#> mean: 0
#> sigmaSq: NA
#>
#> slot "ar":
#> An object of class "BJFilter"
#> order: 0
#> Coefficients:
#> numeric(0)
#>
#> slot "ma":
#> An object of class "SPFilter"
#> order: 2
#> Coefficients:
#> [1] 0.3 0.7
autocorrelations(ma2a2, maxlag = 6)
#> An object of class "Autocorrelations"
#> 0 1 2 3 4 5 6
#> 1.0000000 0.3227848 0.4430380 0.0000000 0.0000000 0.0000000 0.0000000
partialAutocorrelations(ma2a2, maxlag = 6)
#> An object of class "PartialAutocorrelations"
#> Lag_0 Lag_1 Lag_2 Lag_3 Lag_4 Lag_5
#> 1.00000000 0.32278481 0.37825873 -0.27488077 -0.14556210 0.21468510
#> Lag_6
#> 0.03073491
## AR
( ar2a1 <- ArModel(ar = c(-0.3, -0.7), sigma2 = 1) )
#> An object of class "ArModel"
#> mean: 0
#> sigmaSq: 1
#>
#> slot "ar":
#> An object of class "BJFilter"
#> order: 2
#> Coefficients:
#> [1] -0.3 -0.7
#>
#> slot "ma":
#> An object of class "SPFilter"
#> order: 0
#> Coefficients:
#> numeric(0)
autocorrelations(ar2a1, maxlag = 6)
#> An object of class "Autocorrelations"
#> 0 1 2 3 4 5 6
#> 1.0000000 -0.1764706 -0.6470588 0.3176471 0.3576471 -0.3296471 -0.1514588
partialAutocorrelations(ar2a1, maxlag = 6)
#> An object of class "PartialAutocorrelations"
#> Lag_0 Lag_1 Lag_2 Lag_3 Lag_4
#> 1.000000e+00 -1.764706e-01 -7.000000e-01 -1.123440e-16 1.123440e-16
#> Lag_5 Lag_6
#> -1.123440e-16 -5.617200e-17
autocovariances(ar2a1, maxlag = 6)
#> An object of class "Autocovariances"
#> Lag_0 Lag_1 Lag_2 Lag_3 Lag_4 Lag_5 Lag_6
#> 2.0238095 -0.3571429 -1.3095238 0.6428571 0.7238095 -0.6671429 -0.3065238
partialVariances(ar2a1, maxlag = 6)
#> An object of class "PartialVariances"
#> 0 1 2 3 4 5 6
#> 2.023810 1.960784 1.000000 1.000000 1.000000 1.000000 1.000000
## ARMA
( arma2a1 <- ArmaModel(ar = 0.5, ma = c(0.3, 0.7), sigma2 = 1) )
#> An object of class "ArmaModel"
#> mean: 0
#> sigmaSq: 1
#>
#> slot "ar":
#> An object of class "BJFilter"
#> order: 1
#> Coefficients:
#> [1] 0.5
#>
#> slot "ma":
#> An object of class "SPFilter"
#> order: 2
#> Coefficients:
#> [1] 0.3 0.7
autocorrelations(arma2a1, maxlag = 6)
#> An object of class "Autocorrelations"
#> 0 1 2 3 4 5 6
#> 1.00000000 0.76434426 0.59733607 0.29866803 0.14933402 0.07466701 0.03733350
partialAutocorrelations(arma2a1, maxlag = 6)
#> An object of class "PartialAutocorrelations"
#> Lag_0 Lag_1 Lag_2 Lag_3 Lag_4 Lag_5
#> 1.00000000 0.76434426 0.03154068 -0.40352478 0.10241517 0.22187563
#> Lag_6
#> -0.13073299
## modelCoef() returns a list with components 'ar' and 'ma'
modelCoef(arma2a1)
#> $ar
#> [1] 0.5
#>
#> $ma
#> [1] 0.3 0.7
#>
modelCoef(ma2a1)
#> $ar
#> numeric(0)
#>
#> $ma
#> [1] 0.3 0.7
#>
modelCoef(ar2a1)
#> $ar
#> [1] -0.3 -0.7
#>
#> $ma
#> numeric(0)
#>
## modelOrder() returns a list with components 'ar' and 'ma'
modelOrder(arma2a1)
#> $ar
#> [1] 1
#>
#> $ma
#> [1] 2
#>
modelOrder(ma2a1)
#> $ar
#> [1] 0
#>
#> $ma
#> [1] 2
#>
modelOrder(ar2a1)
#> $ar
#> [1] 2
#>
#> $ma
#> [1] 0
#>
as(ma2a1, "ArmaModel") # success, as expected
#> An object of class "ArmaModel"
#> mean: 0
#> sigmaSq: 1
#>
#> slot "ar":
#> An object of class "BJFilter"
#> order: 0
#> Coefficients:
#> numeric(0)
#>
#> slot "ma":
#> An object of class "SPFilter"
#> order: 2
#> Coefficients:
#> [1] 0.3 0.7
as(ar2a1, "ArModel") # success, as expected
#> An object of class "ArModel"
#> mean: 0
#> sigmaSq: 1
#>
#> slot "ar":
#> An object of class "BJFilter"
#> order: 2
#> Coefficients:
#> [1] -0.3 -0.7
#>
#> slot "ma":
#> An object of class "SPFilter"
#> order: 0
#> Coefficients:
#> numeric(0)
as(ArmaModel(ar = c(-0.3, -0.7)), "ArModel")
#> An object of class "ArModel"
#> mean: 0
#> sigmaSq: NA
#>
#> slot "ar":
#> An object of class "BJFilter"
#> order: 2
#> Coefficients:
#> [1] -0.3 -0.7
#>
#> slot "ma":
#> An object of class "SPFilter"
#> order: 0
#> Coefficients:
#> numeric(0)
## But these fail:
## as(ma2a1, "ArModel") # fails
## as(arma2a1, "ArModel") # fails
## as(arma2a1, "MaModel") # fails