このページは解答編です。
↓ネ
↓タ
↓バ
↓レ
↓防
↓止
答えと解説
設問はこちらでした。
P-022: レシート明細データ(receipt.csv)の顧客ID(customer_id)に対し、ユニーク件数をカウントせよ。
解答ワークフローは以下のようになります。
重複を除いてカウントする場合、ユニークツールで重複を取り除いてからカウントする方法と、集計ツールで一発で重複を除いてカウントする方法があります。
- ユニークツールとレコードカウントツール
- 集計ツール
1. ユニークツールとレコードカウントツール
正直、重複を取り除いてカウントする場合は、集計ツールで一発でできますが、どうせならユニークツールを使ってみましょう。
ユニークツールは、選択したフィールドの重複がなくなるような結果を出力します(基本的には、重複するレコードがあった場合、一番最初のレコードが採用されます)。
今回の設定であれば、customer_idでユニークになるようにするため、以下のようになります。
こののち、レコードカウントツールでカウントを取っています。
ワークフローは以下のような形になります。
2. 集計ツール
「集計」ツールは一発で重複を除いてカウントを取得することが可能です。
設定は以下のようになります。今回は、customer_idで重複を除いてカウントしたいため、「customer_id」を選択、真ん中の追加ボタンをクリックし、ドロップダウンメニューから「重複を除いてカウント」を選ぶことで下側に追加されます。
最終的なワークフローとしては以下の通りです。
まとめ
単純にカウントを取得するのではなく、重複を除いてカウントする、という方法を学びました。集計ツールで一発で行う方法と、ユニークツールを使ってあらかじめ重複を除く方法を紹介しました。
コメント