0

データフレーム オブジェクトから data.table オブジェクトに変換されたデータに auto.arima を適用しようとしています。私の data.table には従属変数と共変量の両方があるため、コードで xreg を使用しています。data.tables を使用することを選択したのは、data.tables を使用するとコードがより高速に実行されると読んだためです。私の時系列も xts オブジェクトです。可能であれば、従属変数と共変量を data.table のインデックス位置で auto.arima に渡したいと思います。これを行う適切な方法は次のとおりだと思いました。私の従属変数「需要」は DATATABLE の列 3 にあり、共変量は列 4:22 にあります。列 3 と 4 はどちらも xts オブジェクトである連続変数で、他の共変量は季節ダミーです。領域は列 2 で、データを 24 の下位区分に分割するために使用されます。

auto.arima を実行して係数を抽出する汎用関数を作成します。

arima.coef <-function(df) auto.arima(df[,3,with=FALSE], xreg=df[,4:22,with=FALSE])$coef

次に、モデル オブジェクト リスト "arima.coef" に対して ddply を使用して、24 レベルの領域変数によって分割されたデータの各サブセットに auto.arima を適用します。

Coef.Region<-ddply(DATATABLE,.(Region),arima.coef)

私が得ているエラーは次のとおりです。

Error in '[.data.frame'(df, ,3,with=FALSE):
unused argument (with=FALSE)

私の質問は次のとおりです。plyrを使用してdata.frameを使用するように、data.tableを使用するコードとロジックを理解するのを手伝ってくれる人はいますか? 変数名を明示的に指定せずに使用できますか? ありがとうございました

4

0 に答える 0