Prophetを使って時系列予測をするときに、カテゴリー型のデータを外部予測変数に使いたいときがあります。
例えば、以下は1行が1ヶ月の売上を表すようなデータです。

このビジネスでは、月によって実施しているキャンペーンが異なっています。

このようなビジネスにおいて、実施しているキャンペーンの情報を外部予測変数に追加したいことがあります。
しかし、現在のところProphetにおいては、カテゴリー型の列を外部変数に投入した際、カテゴリー型のデータは集計値としてのみ、外部予測変数として利用が可能となっています。

そこで、こちらのノートではカテゴリー型のデータを外部予測変数として使う方法を紹介します。
今回のケースにおいては、どのキャンペーンを行っているかを表す、キャンペーンごとのフラグの列を持つデータに変換することで対応が可能です。

この操作は「ワンホットエンコーディング」というデータ加工のメニューを利用することで対応が可能です。
ワンホットエンコーディングを実施するときには、ステップのメニューから「ステップの追加」のメニューをクリックして、「その他」のメニューのサブメニューから「ワンホットエンコーディング」を選択します。

ワンホットエンコーディングを選択をすると、列として展開をする列の情報を指定するためのダイアログが表示されます。
今回はキャンペーン名の値を列に展開して、キャンペーンを実施しているときには1、キャンペーンを実施してないときには0といった形のデータにしたいので、列には「キャンペーン名」を選択をして実行します。

するとキャンペーンAを実行しているときには、キャンペーンAの実行タイミングで1の値が入り、キャンペーンBを実行している時にはキャンペーンBで1が付きます。また、キャンペーンCの時には同じようにキャンペーンCを実施しているときだけに1のフラグが立つようになります。

これらの列を使うと、アナリティクスのProphetを実行するときに、それぞれの列をProphetの外部予測変数として利用が可能となります。
ぜひお試しください。