View source: R/ARMA.studentt.ff.R
ARMA.studentt.ff | R Documentation |
For an ARMA model, estimates a 3–parameter
Student-t
distribution characterizing the errors
plus the ARMA coefficients by MLE usign Fisher
scoring. Central Student–t handled currently.
ARMA.studentt.ff(order = c(1, 0),
zero = c("scale", "df"),
cov.Reg = FALSE,
llocation = "identitylink",
lscale = "loglink",
ldf = "logloglink",
ilocation = NULL,
iscale = NULL,
idf = NULL)
order |
Two–entries vector, non–negative. The order $u$ and $v$ of the ARMA model. |
zero |
Same as |
cov.Reg |
Logical. If covariates are entered, Should these be
included in the ARMA model as a |
llocation, lscale, ldf, ilocation,
iscale, idf |
Same as |
The normality assumption for time series analysis is relaxed to handle
heavy–tailed data, giving place to the ARMA model with shift-scaled
Student-t
errors, another subclass of VGLTSMs.
For a univariate time series, say y_t
,
the model described by this VGLTSM family function is
\theta(B)y_t = \phi(B) \varepsilon_t,
where \varepsilon_t
are distributed as
a shift-scaled Student–t
with \nu
degrees of freedom, i.e.,
\varepsilon_t \sim t(\nu_t, \mu_t, \sigma_t)
.
This family functions estimates the location (\mu_t
),
scale (\sigma_t
) and degrees of freedom (\nu_t
)
parameters, plus the ARMA coefficients by MLE.
Currently only centered Student–t distributions are handled. Hence, the non–centrality parameter is set to zero.
The linear/additive predictors are
\boldsymbol{\eta} = (\mu, \log \sigma, \log \log \nu)^T,
where \log \sigma
and \nu
are intercept–only
by default.
An object of class "vglmff"
(see vglmff-class
)
to be used by VGLM/VGAM modelling functions, e.g.,
vglm
or vgam
.
If order = 0
, then AR.studentt.ff
fits a usual 3–parameter Student–t
, as with
studentt3
.
If covariates are incorporated in the analysis,
these are embedded in the location–parameter model.
Modify this through zero
.
See CommonVGAMffArguments
for details on zero
.
Victor Miranda
ARIMAXff
,
studentt
,
vglm
.
### Estimate the parameters of the errors distribution for an
## AR(1) model. Sample size = 50
set.seed(20180218)
nn <- 250
y <- numeric(nn)
ncp <- 0 # Non--centrality parameter
nu <- 3.5 # Degrees of freedom.
theta <- 0.45 # AR coefficient
res <- numeric(250) # Vector of residuals.
y[1] <- rt(1, df = nu, ncp = ncp)
for (ii in 2:nn) {
res[ii] <- rt(1, df = nu, ncp = ncp)
y[ii] <- theta * y[ii - 1] + res[ii]
}
# Remove warm up values.
y <- y[-c(1:200)]
res <- res[-c(1:200)]
### Fitting an ARMA(1, 0) with Student-t errors.
AR.stut.er.fit <- vglm(y ~ 1, ARMA.studentt.ff(order = c(1, 0)),
data = data.frame(y = y), trace = TRUE)
summary(AR.stut.er.fit)
Coef(AR.stut.er.fit)
plot(ts(y), col = "red", lty = 1, ylim = c(-6, 6), main = "Plot of series Y with Student-t errors")
lines(ts(fitted.values(AR.stut.er.fit)), col = "blue", lty = 2)
abline( h = 0, lty = 2)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.