Alteryxで年月別集計表の作成をしてみましょう
売上データから年、月別の集計表を作る
今回は簡単な売り上げデータから、商品事に年、月別に集計する方法を説明します。
手法説明の為、データは簡略化し、「日付」「商品」「販売個数」の単純な物を用います。他のデータが増えたとしても基本の方法は変わりません。
1.データを確認し、必要な作業を検討する。
最初に入力データを確認し、最終Outputの形式にするための工程として何が必要なのかを検討します。最終の表を確認すると「年ごと」「商品ごと」「月ごと」「集計されている」事が分かります。このように最終アウトプットの形式から現状のデータをどの様に加工を行えば、目的が達成できるかを検討します。
検討の結果このデータから必要になる工程は
①日付から「年」「月」を抽出する
②「年、月、商品」で集計する
③表形式で表記する
④レポート形式にする
が必要になることが分かります。
2.データを加工する
①日付から「年」「月」を抽出する。
日付から「年」「月」を抽出する方法はいくつか存在します。しかしいずれの方法も第一工程として、Alteryxに取り込んでいる日付のデータ形式の確認が必要となります。取り込むデータフォーマットにより「Date」として取り込まれているか「String」として取り込まれているかで、加工工程が異なるからです。
Stringの場合
Stingの場合は「列分割ツール」を使うと簡単です。日付のフォーマットに従い分割を行えばOKです。
Dataの場合
Detaとして取り込まれてる場合は「フォーミュラツール」の関数や、「日時ツール」を使います。今回は「日時ツール」の方法を用います。「月」を取得する場合はカスタムで「MM」を指定し、「年」を取得したい場合は「yyyy」を指定します。
②集計する
集計するには「集計ツール」を使います。他には「クロスタブツール」を用いて、表形式にすると同時に集計をする方法もありますが、この方法は後程表形式にするの項目で説明します。
③表形式で表記する
ここまでの加工でデータは集計してあるのでこれを「クロスタブツール」でデータの縦横を変更します。
お気づきかもしれませんが、クロスタブも縦横並び替え時に集計することができます。この機能を用いれば前項②の作業を行わなくても問題ありません。では②の意味は?実は今回の表を作成するだけなら不要です。しかし表に加えグラフなども作りたいなどの場合はデータの集計が発生します。
この時点でデータは以下の様になっています。ここで項目名が01、02・・・・12の表記なので1月、2月・・・・12月と変更していきましょう。
項目名を変更するには「セレクトツール」で手動で変更することもできますが、スマートではありません。そこで今回は「動的リネームツール」の機能を用いて変更してみます。「右入力(R)データの行からフィールド名を取得」を使用します。
ここで「クロスタブツールで変換する前に項目名を整理したほうがいいのではないか?」という疑問もでると思います。確かに今回のデータではそれでも問題ありません。ですがここでクロスタブツールで変換する場合、「項目の並び順は自動ソートされる」「特殊文字は_に変換される」という2つの性質に注意しなければなりません。これに該当しないデータであれば「クロスタブツール」のみで行っても問題ありません。
④レポート形式にする
「テーブルツール」を使ってテーブル化します。この時年でグループ化することで、それぞれの「年」でtableを作成できます。
ここまででほぼ表形式としては問題ありません。後はレイアウトを変更し実際に必要なレポート形式にします。今回は単純に「年」を「レポートテキストツール」を用いてテキスト化し、レイアウトツールで表の横に表示させます。
3. 全体像
最後に今回作成したWFの全体像です
サンプルワークフローダウンロード
※Alteryx Designer 2020.4.5.12471時点の情報となります