Rで遅れている時系列を作成する方法

他の誰かが、Rに遅れをとって時系列を作り出す方法を私に助言しますか? 私は結果が遅延との違いですが、Delt()関数がありますが、結果はパーセンテージの変更です。それをどうやるかアドバイスしてください。ありがとうございました

getSymbols("^GSPC")
DeltLagGSPC<-Delt(Cl(GSPC),k=1:5)   

更新

私は逐次的な差で計算結果を計算します。 Delt()の出力フォーマットは、私が期待したものと同じですが、結果は遅れているパーセンテージの変化です。私は遅れているとの違いを計算します。 Delt()と同じパラメーターがありますが、差の変化を計算します。

0
あなたは関数「遅れ」を見ましたか?さらに、これはたいていstackoverflowのための質問です...
追加された 著者 Richard,
つまり、 data.table からシフトを実装するか、それを取得します。あなたはいくつかのことをすることができますが、私はそれがここに合わないことに同意します。 StackOverflowでは、それは重複しているので、閉じます。
追加された 著者 Bob Jansen,
私はStackOverflowに属しているので、このトピックをオフトピックとして閉じることに投票しています。ここでは重複しています
追加された 著者 Bob Jansen,

1 答え

関数「lag」を見てください。オブジェクトの時系列構造に依存しないラグ関数が必要な場合は、この関数を使用できます。

shift<-function(x,shift_by){
  stopifnot(is.numeric(shift_by))
  stopifnot(is.numeric(x))

  if (length(shift_by)>1)
    return(sapply(shift_by,shift, x=x))

  out<-NULL
  abs_shift_by=abs(shift_by)
  if (shift_by > 0 )
    out<-c(tail(x,-abs_shift_by),rep(NA,abs_shift_by))
  else if (shift_by < 0 )
    out<-c(rep(NA,abs_shift_by), head(x,-abs_shift_by))
  else
    out<-x
  out
}

私はその間にそれを好む。 ここから取得されました。

1
追加された