Prophetで外部予測変数を使うと将来の値が予測できない時の対処法

Prophetで外部予測変数を使用したモデルをつくった場合は、将来の予測をするには、その将来の期間の外部予測変数の値が必要となります。将来の期間の外部予測変数がデータ中にない場合は、モデルは作成されますが、予測はされません。

将来の予測をしたい場合には、外部予測変数は、そもそも予測がしやすい値であるか、将来の予定が決まっているような値である必要があることになります。(予測に利用するのではなく過去のデータ間の関連性を見る目的であれば、もちろんそうでなくても問題はありません。)

もし、どうしても将来の期間がない外部予測変数を使って予測をしたいといった場合には、外部予測変数の方をProphetで事前に予測をするといった方法もございます。

一方で、予測した結果をもとにさらに予測をすることになり、精度が悪くなる可能性があります。

下記は外部予測変数側も予測をしたユーザー様の発表事例となります。

外部予測変数側で予測をした結果をメインのデータフレームにくっつけたい場合には、アナリティクスの結果をデータフレームとして保存をした後に結合することで可能です。

アナリティクスの結果をデータフレームに保存する方法: Exploratory アワー #284 - アナリティクスの結果をデータフレームとして保存したい

その後に、メインで使用したいデータフレームに対して列結合を行います。

結合の方法: 他のデータフレームの列を結合する方法

その際に、メインのデータフレームの方では2024/09までしかないが、外部変数側を予測したデータフレームでは2025/03まであるという場合であれば、結合の方法を右外部結合、または完全外部結合を行うと良いかと思います。

理由としては、デフォルトの左側外部結合ではメインのデータフレームをベースとするので結合先に2024/10以降のデータがあったとしても結合されないからです。

結合タイプの違いについては、以下のノートにて紹介しております。