class ARIMA extends Error
The ARIMA
class provides basic time series analysis capabilities for Auto-
Regressive 'AR' Integrated 'I' Moving-Average 'MA' models. In an
'ARIMA(p, d, q)' model, 'p' and 'q' refer to the order of the Auto-Regressive
and Moving-Average components of the model; 'd' refers to the order of
differencing. ARIMA
models are often used for forecasting.
Given time series data stored in vector 'y', its next value 'y_t = y(t)'
may be predicted based on prior values of 'y' and its noise:
y_t = c + Σ(φ_i y_t-i) + Σ(θ_i e_t-i) + e_t
where 'c' is a constant, 'φ' is the autoregressive coefficient vector, 'θ' is the moving-average coefficient vector, and 'e' is the noise vector. If 'd' > 0, then the time series must be differenced first before applying the above model. ------------------------------------------------------------------------------
- Alphabetic
- By Inheritance
- ARIMA
- Error
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
ARIMA(y: VectoD, t: VectoD, d: Int = 0)
- y
the input vector (time series data)
- t
the time vector
- d
the order of Integration
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- val acf: VectorD
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
difference(): VectorD
Difference the time series.
-
def
durbinLevinson: MatriD
Apply the Durbin-Levinson Algorithm to iteratively compute the 'psi' matrix.
Apply the Durbin-Levinson Algorithm to iteratively compute the 'psi' matrix. The last row of the matrix gives 'AR' coefficients.
- See also
www.stat.tamu.edu/~suhasini/teaching673/time_series.pdf
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
est_ar(p_: Int = 1): VectoD
Estimate the coefficient vector 'φ' for a 'p'th order Auto-Regressive 'AR(p)' model.
Estimate the coefficient vector 'φ' for a 'p'th order Auto-Regressive 'AR(p)' model.
x_t = φ_0 * x_t-1 + ... + φ_p-1 * x_t-p + e_t
Uses the Durbin-Levinson Algorithm to determine the coefficients. The 'φ' vector is 'p'th row of 'psi' matrix (ignoring the first (0th) column).
- p_
the order of the AR model
-
def
est_arma(p_: Int = 1, q_: Int = 1): (VectoD, VectoD)
Estimate the coefficient vectors φ and θ for a ('p'th, 'q'th) order Auto-Regressive Moving-Average 'ARIMA(p, q)' model.
Estimate the coefficient vectors φ and θ for a ('p'th, 'q'th) order Auto-Regressive Moving-Average 'ARIMA(p, q)' model.
x_t = φ_0 * x_t-1 + ... + φ_p-1 * x_t-p + θ_0 * e_t-1 + ... + θ_q-1 * e_t-q + e_t
- p_
the order of the AR part of the model
- q_
the order of the MA part of the model
- See also
www.math.kth.se/matstat/gru/sf2943/tsform.pdf
-
def
est_ma(q_: Int = 1): VectoD
Estimate the coefficient vector 'θ' for a 'q'th order a Moving-Average 'MA(q)' model.
Estimate the coefficient vector 'θ' for a 'q'th order a Moving-Average 'MA(q)' model.
x_t = θ_0 * e_t-1 + ... + θ_q-1 * e_t-q + e_t
- q_
the order of the AR model
-
def
eval(yy: VectoD = y): Unit
Compute the error and useful diagnostics.
Compute the error and useful diagnostics.
- yy
the response vector
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
flaw(method: String, message: String): Unit
- Definition Classes
- Error
-
def
forecast_ar(steps: Int = 1): VectoD
Produce the multi-step forecast for AR models.
-
def
forecast_arma(steps: Int = 1): VectoD
Produce the one-step forecast for ARMA models
Produce the one-step forecast for ARMA models
- steps
the number of steps to forecast, must be at least one.
- See also
ams.sunysb.edu/~zhu/ams586/Forecasting.pdf
-
def
forecast_ma(steps: Int = 1): VectoD
Produce the one-step forecast for MA models
Produce the one-step forecast for MA models
- steps
the number of steps to forecast, must be at least one.
- See also
ams.sunysb.edu/~zhu/ams586/Forecasting.pdf
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hannanRissanen(): VectoD
Apply the Hannan-Rissanen Algorithm to estimate the 'ARMA(p, q)' coefficients.
Apply the Hannan-Rissanen Algorithm to estimate the 'ARMA(p, q)' coefficients.
- See also
halweb.uc3m.es/esp/Personal/personas/amalonso/esp/TSAtema9.pdf
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
methodOfInnovations(): VectoD
Apply the Method of Innovation to estimate coefficients for MA(q) model.
Apply the Method of Innovation to estimate coefficients for MA(q) model.
- See also
www.math.kth.se/matstat/gru/sf2943/tsform.pdf
www.stat.berkeley.edu/~bartlett/courses/153-fall2010/lectures/10.pdf
- val mu: Double
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
obj_f(φθ: VectoD): Double
Compute the objective function for MLE optimization.
Compute the objective function for MLE optimization. FIX
- φθ
a single vector of AR and MA coefficients
- See also
halweb.uc3m.es/esp/Personal/personas/amalonso/esp/TSAtema9.pdf
-
def
optimize_MLE(): VectoD
Apply the Hannan-Rissanen Algorithm first to estimate the 'ARIMA(p, q)' coefficients, then optimize the parameters using MLE.
Apply the Hannan-Rissanen Algorithm first to estimate the 'ARIMA(p, q)' coefficients, then optimize the parameters using MLE. FIX
- See also
halweb.uc3m.es/esp/Personal/personas/amalonso/esp/TSAtema9.pdf
- var pacf: VectoD
-
def
plotFunc(fVec: VectoD, name: String): Unit
Plot a function, e.g., Auto-Correlation Function 'ACF', Partial Auto-Correlation Function 'PACF'.
Plot a function, e.g., Auto-Correlation Function 'ACF', Partial Auto-Correlation Function 'PACF'.
- fVec
the vector given function values
- name
the name of the function
-
def
predict(t: VectoD): Double
For the last time points in vector 't', predict the value of 'y = f(t)'.
For the last time points in vector 't', predict the value of 'y = f(t)'.
- t
the time-vector indicating time points to forecast
-
def
predictAll: VectoD
For all the time points, predict all the values of 'y = f(t)'.
-
def
predict_ar(transBack: Boolean = true): VectoD
Return a vector that is the predictions of a 'p'th order Auto-Regressive 'AR(p)' model.
Return a vector that is the predictions of a 'p'th order Auto-Regressive 'AR(p)' model.
- transBack
flag that determines whether to return the predicted values in the original scale
-
def
predict_arma(transBack: Boolean = true): VectoD
Return a vector that is the predictions of a ('p'th, 'q'th) order Auto-Regressive Moving-Average 'ARMA(p, q)' model.
Return a vector that is the predictions of a ('p'th, 'q'th) order Auto-Regressive Moving-Average 'ARMA(p, q)' model.
- transBack
flag that determines whether to return the predicted values in the original scale
-
def
predict_ma(transBack: Boolean = true): VectoD
Return a vector of predictions of an MA model and update the residuals
Return a vector of predictions of an MA model and update the residuals
- transBack
flag that determines whether to return the predicted values in the original scale
-
def
setPQ(p_: Int, q_: Int): Unit
Set values for 'p' and 'q'.
Set values for 'p' and 'q'.
- p_
the order of the AR part of the model
- q_
the order of the MA part of the model
-
def
smooth(l: Int): VectoD
Smooth the 'y' vector by taking the 'l'th order moving average.
Smooth the 'y' vector by taking the 'l'th order moving average.
- l
the number of points to average
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
train(yy: VectoD = y): ARIMA
Train/fit an
ARIMA
model to times the series data.Train/fit an
ARIMA
model to times the series data. Must call setPQ first.- yy
the response vector to work with
-
def
transformBack(xp: VectoD): VectoD
Transform the predictions/fitted values of a differenced time series back to the original scale.
Transform the predictions/fitted values of a differenced time series back to the original scale.
- xp
the vector of predictions/fitted values of a differenced time series
- See also
stats.stackexchange.com/questions/32634/difference-time-series-before-arima-or-within-arima
-
def
transformBack_f(xf: VectoD): VectoD
Transform the forecasted values of a differenced time series back to the original scale.
Transform the forecasted values of a differenced time series back to the original scale.
- xf
the vector of forecasted values of a differenced time series
- See also
stats.stackexchange.com/questions/32634/difference-time-series-before-arima-or-within-arima
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )