Alteryxで特定のセットを買った人の割合を計算したい

2018.07.02

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

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

このシリーズでは、Alteryxを触り始めた際に出てくる「こうしたいけどやり方が分からない」「どのツールを使えばいいか分からない」といった疑問を切り口として、Alteryxの機能をご紹介していきます。

前回は「割合を表示したい」というテーマでしたが、今回も前回に続いて割合についてご紹介いたします。

特定のセットを買った人の割合を計算したい

上の表では、ハンバーガーまたはチーズバーガーとアイスティーまたはコーヒーを買った人を表示しています。この表から、ハンバーガーとコーヒーのセットを買った人の割合を計算します。

ワークフローの概要

上の図は、今回作成するワークフローです。Input Dataツールでデータを読み込んだのち、

  1. 対象のセットを買った人数を集計
    1. Formulaツールで対象のセットを買った人をチェック
    2. Summarizeツールで対象のセットを買った人を集計
    3. Sortツールで並べ替え
  2. 全体の数を集計
    • Summarizeツールで全体の数を集計
  3. Joinツールでデータの結合
  4. Formulaツールで割合を算出

という処理を行います。

ワークフローの詳細

ここからは処理の内容を見ていきます。

[Preparation]->[Formura]を追加し、「Flag」という列を作成。この列には、ハンバーガーとコーヒーのセットだった場合に1を入力していきます。if文を利用して、以下の条件式を設定します。

  • ハンバーガーとコーヒーのセットの場合には1
  • それ以外の場合には0

また、次の処理で数を合計するため、[Data type]は「Int32」を選択します。

[Transform]->[Summarize]を追加し、「Food」と「Drink」を「Group By」でグループ化、「Flag」を「Sum」で合計します。これにより、「Food」と「Drink」のセットによる4つのグループに分けられました。また、ハンバーガーとコーヒーのセットには合計が入力されています。

[Preparation]->[Sort]を追加します。このあとにデータを結合するため、「Sum_Flag」を「Descending」で並べ替えるよう設定し、ハンバーガーとコーヒーのセットを一番上にします。

ここまでの処理で、「1.対象のセットを買った人数を集計」を行いました。

続いて、「2.全体の数を集計」を準備します。Summarizeツールを追加、「Customer」を「Count」で集計し、全体の数を出力します。

データを準備できました。

データを結合して、計算式を設定していきます。
[Join]->[Join]を追加します。「Join by Record Position」を選択し、位置によってデータを結合することで、ハンバーガーとコーヒーのセットの数と全体の数という2つのデータをまとめます。

Formulaツールを追加します。新しく「%」という列を追加し、割合を出力するための計算式を設定します。

ハンバーガーとコーヒーのセットの割合を出力できました。

最後に

今回は特定のセットを勝った人の割合を計算しました。これからもAlteryxの機能をご紹介していきます。

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

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

alteryx_960x400