データサイエンス100本ノックをAlteryxで。27日目(解答)

問題編 100本ノック

このページは解答編です。

↓ネ

↓タ

↓バ

↓レ

↓防

↓止

答えと解説

設問はこちらでした。

P-027: レシート明細データ(receipt.csv)に対し、店舗コード(store_cd)ごとに売上金額(amount)の平均を計算し、降順でTOP5を表示せよ。

解答ワークフローは以下のようになります。

今回は、店舗コードごとの売上金額の平均を計算後、降順でTop5を取得する、とのことですが、今まで行ってきた内容で十分解ける問題です。基本的には、以下のように解いていきます。

  1. 型を適切に変更する
  2. 店舗コードごとにグループ化して平均を取る
  3. 並べ替える
  4. 5件取得する

まず、型を変更しましょう。基本的にセレクトツールで行います。なお、amountはInt16型になります。ついでに不要なフィールドも削除しておきます。

次に集計ツールを使って、店舗コードごとにグループ化して平均を取りましょう。

次にソートツールで並べ替えます。単純に先ほど取得したamountの平均値(ここでは、「Avg_amount」としています。)に対して、降順でソートします。

最後に、サンプリングツールで先頭から5件取得します。つまり、N=5とします。

もちろん、レコード選択ツールで1-5レコードを取得しても問題ありません。

まとめ

今回は、集計の問題でした。基本的に集計後は並べ替えたり、TopNを取ったりということが多いかと思います。よく使う手法ですので慣れておきましょう。

解答ワークフローダウンロード

コメント

タイトルとURLをコピーしました