0

「crost {tsintermittent}」と「croston {forecast}」がサンプル内(トレーニング)値を計算する方法の詳細を理解しようとしています。それらは同様の結果をもたらすように見えますが、異なる結果をもたらします。(以下のサンプル コードを参照してください) 2 つの計算が異なるのか、それとも同じ結果を比較していないのかわかりません (各パッケージは異なる用語を使用しています)。

library (tsintermittent)
library (forecast)
# create an intermittent time-series
x = c(5,5,5,5,5,5,6,8,0,8,0,8,0,0,4,0,0,6,7,0,0,0,9,0,11,0,0)
x_crost = crost(x,h=5) # from the tsintermittent package
x_croston=croston(x,h=5) # from the forecast package
x_croston$fitted
y=data.frame(x,x_crost$frc.in,x_croston$fitted)
y # viex_croston results
plot(x_croston)
lines(x_croston$fitted, col="red")
lines(x_crost$frc.in,col="blue")
4

1 に答える 1

1

1 つは最適化されたパラメーターを使用し、もう 1 つは使用しません。 forecast::croston2 つの ETS(A,N,N) モデルをゼロ以外の需要シリーズとゼロ以外の需要の間の時間に当てはめ、共通の平滑化パラメーター (alpha=0.1が既定) を使用し、初期状態を各シリーズの最初の値に設定します。tsintermittent::crostは同じ 2 つのモデルに適合しますが、平滑化パラメーターの値と初期値を最適化します (デフォルトで平均絶対率を使用)。

于 2016-04-11T22:26:24.687 に答える