毎日、毎週、毎年の周期性を持つ時間ごとの時系列の予測
主な編集:Dave&Nickの対応に感謝します。良い知らせは、ループが機能するようになったことです(原則として、バッチ予測に関するHydnman教授の投稿から借用しました)。未解決のクエリを統合するには: a)auto.arimaの最大反復回数を増やすにはどうすればよいですか。外生変数が多数あるため、auto.arimaは最終モデルに収束する前に最大反復回数に達しているようです。これを誤解している場合は訂正してください。 b)Nickからの1つの回答は、時間間隔の私の予測はそれらの時間間隔のみから導き出され、その日の早い段階での発生に影響されないことを強調しています。このデータを処理することから、本能は、これがしばしば重大な問題を引き起こすべきではないことを教えてくれますが、これをどのように処理するかについての提案を受け入れます。 c)Daveは、予測変数を取り巻くリードタイムとラグタイムを特定するには、より高度なアプローチが必要であることを指摘しました。Rのこれに対するプログラムによるアプローチの経験はありますか?もちろん制限はあると思いますが、できる限りこのプロジェクトを進めたいと思っています。これが他の人にも役立つことは間違いありません。 d)新しいクエリですが、当面のタスクに完全に関連しています-注文を選択するときにauto.arimaはリグレッサを考慮しますか? 来店を予測しようとしています。移動する休日、うるう年、散発的なイベント(本質的には外れ値)を説明する機能が必要です。これに基づいて、私はARIMAXが私の最善の策であると収集し、外因性変数を使用して、複数の季節性と前述の要因を試してモデル化します。 データは1時間ごとに24時間記録されます。これは私のデータにゼロの量があるため、特に訪問数が非常に少ない1日の時間帯に問題があることが判明しています。また、営業時間は比較的不安定です。 また、3年以上の履歴データを持つ1つの完全な時系列として予測する場合、計算時間は膨大です。毎日の時間を別々の時系列として計算することで、それがより速くなると考えました。そして、忙しい時間帯でこれをテストすると、より高い精度が得られるようですが、早朝/後期の時間で問題になることが判明しましたt常に訪問を受ける。auto.arimaを使用するとプロセスにメリットがあると思いますが、最大反復回数に達する前にモデルに収束できないようです(そのため、手動での適合とmaxit句を使用しています)。 訪問数= 0の場合の外生変数を作成して、「欠落」データを処理しようとしました。繰り返しますが、これは、訪問がない唯一の時間である1日の店舗が閉まっているときだけ、忙しい1日の時間帯に最適です。これらの例では、外生変数は前向きに予測するためにこれを正常に処理するようであり、以前に閉じられた日の影響を含みません。ただし、店が開いているが、常に訪問を受けるとは限らない静かな時間を予測することに関して、この原則を使用する方法がわかりません。 Rでのバッチ予測についてのHyndman教授の投稿を利用して、24シリーズを予測するループを設定しようとしていますが、午後1時以降は予測したくなく、その理由を理解できません。「optim(init [mask]、armafn、method = optim.method、hessian = TRUE、:non-finite finite-difference value [1]のエラー」というエラーが表示されますが、すべての系列の長さが等しく、基本的に同じマトリックスですが、なぜこれが起こっているのか理解できません。これは、マトリックスがフルランクではないことを意味しますか?このアプローチでこれを回避するにはどうすればよいですか? https://www.dropbox.com/s/26ov3xp4ayig4ws/Data.zip date() #Read input files INPUT <- read.csv("Input.csv") XREGFDATA <- read.csv("xreg.csv") #Subset time series data from the input file TS <- ts(INPUT[,2:25], f=7) fcast <- matrix(0, nrow=nrow(XREGFDATA),ncol=ncol(TS)) #Create matrix of exogenous …