mixing_weights: Calculate mixing weights of GMAR, StMAR or G-StMAR model

Description Usage Arguments Details Value References Examples

View source: R/loglikelihood.R

Description

mixing_weights calculates the mixing weights of the specified GMAR, StMAR or G-StMAR model and returns them as a matrix.

Usage

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
mixing_weights(
  data,
  p,
  M,
  params,
  model = c("GMAR", "StMAR", "G-StMAR"),
  restricted = FALSE,
  constraints = NULL,
  parametrization = c("intercept", "mean")
)

Arguments

data

a numeric vector or class 'ts' object containing the data. NA values are not supported.

p

a positive integer specifying the autoregressive order of the model.

M
For GMAR and StMAR models:

a positive integer specifying the number of mixture components.

For G-StMAR models:

a size (2x1) integer vector specifying the number of GMAR type components M1 in the first element and StMAR type components M2 in the second element. The total number of mixture components is M=M1+M2.

params

a real valued parameter vector specifying the model.

For non-restricted models:

Size (M(p+3)+M-M1-1x1) vector θ=(υ_{1},...,υ_{M}, α_{1},...,α_{M-1},ν) where

  • υ_{m}=(φ_{m,0},φ_{m},σ_{m}^2)

  • φ_{m}=(φ_{m,1},...,φ_{m,p}), m=1,...,M

  • ν=(ν_{M1+1},...,ν_{M})

  • M1 is the number of GMAR type regimes.

In the GMAR model, M1=M and the parameter ν dropped. In the StMAR model, M1=0.

If the model imposes linear constraints on the autoregressive parameters: Replace the vectors φ_{m} with the vectors ψ_{m} that satisfy φ_{m}=C_{m}ψ_{m} (see the argument constraints).

For restricted models:

Size (3M+M-M1+p-1x1) vector θ=(φ_{1,0},...,φ_{M,0},φ, σ_{1}^2,...,σ_{M}^2,α_{1},...,α_{M-1},ν), where φ=(φ_{1},...,φ_{p}) contains the AR coefficients, which are common for all regimes.

If the model imposes linear constraints on the autoregressive parameters: Replace the vector φ with the vector ψ that satisfies φ= (see the argument constraints).

Symbol φ denotes an AR coefficient, σ^2 a variance, α a mixing weight, and ν a degrees of freedom parameter. If parametrization=="mean", just replace each intercept term φ_{m,0} with the regimewise mean μ_m = φ_{m,0}/(1-∑φ_{i,m}). In the G-StMAR model, the first M1 components are GMAR type and the rest M2 components are StMAR type. Note that in the case M=1, the mixing weight parameters α are dropped, and in the case of StMAR or G-StMAR model, the degrees of freedom parameters ν have to be larger than 2.

model

is "GMAR", "StMAR", or "G-StMAR" model considered? In the G-StMAR model, the first M1 components are GMAR type and the rest M2 components are StMAR type.

restricted

a logical argument stating whether the AR coefficients φ_{m,1},...,φ_{m,p} are restricted to be the same for all regimes.

constraints

specifies linear constraints imposed to each regime's autoregressive parameters separately.

For non-restricted models:

a list of size (pxq_{m}) constraint matrices C_{m} of full column rank satisfying φ_{m}=C_{m}ψ_{m} for all m=1,...,M, where φ_{m}=(φ_{m,1},...,φ_{m,p}) and ψ_{m}=(ψ_{m,1},...,ψ_{m,q_{m}}).

For restricted models:

a size (pxq) constraint matrix C of full column rank satisfying φ=, where φ=(φ_{1},...,φ_{p}) and ψ=ψ_{1},...,ψ_{q}.

The symbol φ denotes an AR coefficient. Note that regardless of any constraints, the autoregressive order is always p for all regimes. Ignore or set to NULL if applying linear constraints is not desired.

parametrization

is the model parametrized with the "intercepts" φ_{m,0} or "means" μ_{m} = φ_{m,0}/(1-∑φ_{i,m})?

Details

The first p observations are taken to be the initial values.

Value

If to_return=="mw":

a size ((n_obs-p)xM) matrix containing the mixing weights: for m:th component in m:th column.

If to_return=="mw_tplus1":

a size ((n_obs-p+1)xM) matrix containing the mixing weights: for m:th component in m:th column. The last row is for α_{m,T+1}

.

References

Examples

1
2
3
4
5
6
7
8
# GMAR model
params12 <- c(1.70, 0.85, 0.30, 4.12, 0.73, 1.98, 0.63)
mixing_weights(simudata, p=1, M=2, params=params12, model="GMAR")

# G-StMAR-model
params42gs <- c(0.04, 1.34, -0.59, 0.54, -0.36, 0.01, 0.06, 1.28, -0.36,
                0.2, -0.15, 0.04, 0.19, 9.75)
mixing_weights(M10Y1Y, p=4, M=c(1, 1), params=params42gs, model="G-StMAR")

uGMAR documentation built on Jan. 24, 2022, 5:10 p.m.