Time series estimation in R vs. Mathematica -
i'm fitting ima(1,1) [or arima(0,1,1)] model time series. tried using arima
function in r, , estimatedprocess
function in mathematica (ver. 10), , got different results. why? making different assumptions, valid in different situations? have advice on 1 should use?
example. first, in r.
> series <- c(-1.42377, 0.578605, -0.534659, -3.07486, -2.4468, -0.508346, -0.216464, -2.7485, -1.93354, -1.07292, -1.48064, -1.13934, -1.24597, 1.419, -1.22549, -2.44651, 1.54611, 1.80892, -0.863338, 1.21636) > arima(series, order=c(0,1,1)) call: arima(x = series, order = c(0, 1, 1)) coefficients: ma1 -0.7807 s.e. 0.1548 sigma^2 estimated 2.227: log likelihood = -35.03, aic = 74.07
now, in mathematica:
series = {-1.42377, 0.578605, -0.534659, -3.07486, -2.4468, -0.508346, -0.216464, -2.7485, -1.93354, -1.07292, -1.48064, -1.13934, -1.24597, 1.419, -1.22549, -2.44651, 1.54611, 1.80892, -0.863338, 1.21636}; estimatedprocess[series, arimaprocess[{}, 1, {ma1}, s2]]
which yields:
arimaprocess[{}, 1, {-0.252596}, 3.30217]
as can see, both estimated ma1 coefficients (-0.7807 in r, -0.2526 in mathematica) , variances (2.227, 3.302) rather different.
thanks lot insight or advice, mark
ok, i've figured out. default, mathematica functions estimatedprocess
, findprocessparameters
use method of moments. r function arima
, on other hand, uses maximum likelihood. if tell mathematica use maximum likelihood, so
series = {-1.42377, 0.578605, -0.534659, -3.07486, -2.4468, -0.508346, -0.216464, -2.7485, -1.93354, -1.07292, -1.48064, -1.13934, -1.24597, 1.419, -1.22549, -2.44651, 1.54611, 1.80892, -0.863338, 1.21636}; estimatedprocess[series, arimaprocess[{}, 1, {ma1}, s2], processestimator -> "maximumlikelihood"]
you exact same answer r:
arimaprocess[{}, 1, {-0.780677}, 2.22661]
Comments
Post a Comment