またはオブジェクトに対してローリング計算を実行できるzoo
関数に精通しており、パラメーターを使用してローリング増分を指定できます。私は特に毎月関数を適用することに興味がありますが、計算には過去の毎日のデータをすべて使用します。たとえば、私のデータセットは次のようになります。rollapply
zoo
xts
by
dte, val
1/01/2001, 10
1/02/2001, 11
...
1/31/2001, 2
2/01/2001, 54
2/02/2001, 34
...
2/30/2001, 29
apply
月末と日次データをすべて使用する機能を選択したいと思います。rollapply
議論は時々30、他の29か月などになるので、これはうまくいかないようですby
。私の現在の考えは次のとおりです。
f <- function(xts_obj) { coef(lm(a ~ b, data=as.data.frame(xts_obj)))[1] }
month_end <- endpoints(my_xts, on="months", k=1)
rslt <- apply(month_end, 1, function(idx) { my_xts[paste0("/",idx)] })
確かに、これを行うためのより良い方法がありますか?明確にするために:私は重複する期間を使用したいのですが、ローリングは毎月行われるべきです。