Challenge #88: Counting Combinations ~購入した商品の組み合わせの数の出力~ – Alteryx Weekly Challenge

2019.08.17

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは。Alteryxサポートエンジニアとして勉強中のスズです。

Alteryx Communityで公開されているWeekly Challengeに挑戦するシリーズ。今回は購入した商品の組み合わせの数の出力に挑戦します。

動作環境

当エントリの執筆には、以下の環境を利用しています。

  • Windows 10 Pro
  • Alteryx Designer 2019.2.7.63499 英語版

Challenge #88: Counting Combinations

お題

今回挑戦するお題はこちら。

Input側のデータはこちら。「Item_Number」という列にはeggsやbreadといった顧客が購入した商品が出力されています。

Output側のデータはこちら。各「Transaction Number」にある購入した商品の組み合わせの数を出力しています。「Item_Number」列の順番が異なる場合であっても、購入した商品の組み合わせが同じ場合は同じ組み合わせとして扱います。

解答

作成したワークフローはこちら。

Transposeツールで縦持ちに変換します。Key columnsに「Transaction Number」、Data columnsに「Item_Number」列を選択します。

変換したデータは、「Name」列に「Item_Number」、「Value」列に購入した物が出力されています。

この後は購入した商品を1つの列にまとめますが、この時点では「Transaction Number」の順番で出力されています。組み合わせごとに同じ出力になるように、Sortツールで「Value」列を昇順に並べ替えます。

Summarizeツールで「Transaction Number」列でグループ化、「Value」列を「Concat」で出力します。

もう一度Summarizeツールを使用して、今度は「Concat_Value」列を「CountDistinct」で出力します。これで、異なるデータの数(購入した商品の組み合わせの数)を出力することができます。また、出力する列名は「Number of Combinations」とします。

結果を確認して完成です。

最後に

今回はChallenge #88: Counting Combinationsに挑戦しました。

Alteryxの導入なら、クラスメソッドにおまかせください

日本初のAlteryxビジネスパートナーであるクラスメソッドが、Alteryxの導入から活用方法までサポートします。14日間の無料トライアルも実施中ですので、お気軽にご相談ください。

alteryx_960x400