データエスノグラフィ入門 #04

データエスノグラフィ環境を構築。

それでは、BigQueryとTableauによるデータエスノグラフィの環境を構築し、会員ランクごとに行動データを観察していきます。なお、BigQueryとTableauの使い方については「BigQueryではじめるSQL」「TableauではじめるBI」を参照してください。

まずは分析用テーブルを作成します。観察したいのは一人ひとりの購買履歴なので、前回とは違い、会員IDではなく購買履歴ごとの行を持つテーブルを作ります。BigQueryのクエリエディタに以下のSQL文を入力し、青い[実行]ボタンをクリックしてみましょう。

すると、以下のスキーマのテーブルが出力結果で表示されるので、それをデータセット「DE」に「sum_orders」という名前で保存します。なお、フィールド名の頭に「Axx」などのアルファベットと数字を付与していますが、これはTableauのビューでデータの内容を確認する際に用いる[データの表示]画面のフィールドの並び順が、フィールド名のアルファベットと数字の順序になるため、スキーマ定義のとおり意図的に並べたい場合はこのように命名しておく必要があるからです。

フィールド名 概要 タイプ
A00_member_id 会員ID 整数
A01_gender 性別 文字列
A02_age 年齢 整数
B00_order_no 購買履歴番号 整数
B01_order_date 購買日 日付
B02_category 商品カテゴリ 文字列
B03_sub_category 商品サブカテゴリ 文字列
B04_price 価格 整数
C00_rank 会員ランク 文字列
C01_frequency 購買頻度(日数) 整数
C02_monetary 累積購買金額 整数

続いて、テーブル「sum_orders」をTableauに取り込んで分析します。Tableau Desktopであれば、スタート画面の[接続]にあるメニュー[Google BigQuery]から選択するだけでシームレスに連携できます。Tableau Publicであれば、GCS(Google Cloud Storage)経由でCSVファイルとしてエクスポートしてから取り込みます。

ワークシート編集画面で「A00_member_id」を[行]、「C01_frequency」「C02_monetary」を[列]、「C00_rank」を[フィルター]と[色]に、それぞれドラッグ&ドロップすると、データエスノグラフィ環境の構築は完了です。

一人ひとりの行動データを観察。

では会員ランクごとに一人ひとりの購買履歴を観察していきましょう。まずはF1会員から見て行きます。右上の「C00_rank」フィルタで「4: F1」を選択し、ビュー内に表示される会員IDをF1会員のみに絞り込みます。その中から無作為に抽出してそれぞれの購買履歴を観察するわけですが、それには各会員の行をクリックした際に表示されるポップアップの右上にある[データを表示]ボタンをクリックします。すると[データを表示」という画面がモーダル表示されるので、画面下の[すべてのデータ]をクリックすると、選択した会員の購買履歴を見ることができます。

選択した会員の購買履歴がこのように表示されます。当たり前ですが、F1会員は初回購買の購買履歴しかありません。

では続けてF2会員を観察します。「C00_rank」フィルタで「3: F2」を選択し、F2会員に絞り込んで無作為に何人かを見て行きます。するとどうでしょうか。初回購買から二回目購買までの期間が何ヶ月も空いている会員が意外と多い印象を受けるのではないでしょうか。

続けてF3会員・優良会員についても観察します。するとやはり、初回購買から二回目購買までの期間が長い会員が多いように思います。さらに、3回目購買から定着化し、比較的コンスタントに購入していることがわかります。

さらに、優良会員は比較的多くの商品カテゴリを購買していることに気づきます。長期間にわたり何度も購買しているため必然的にカテゴリ数が増えているだけかもしれませんし、何でもECサイトで買うタイプが総合ECサイトを継続的に利用しているだけかもしれません。ただ、いずれにせよ相関はありそうです。

ここまでの行動データ観察による発見を通して、二つの仮説が浮かび上がります。

  1. 初回購買後に休眠化した会員についても優良化するポテンシャルがあるのではないか
  2. 新たな商品カテゴリを提案することが優良化につながる可能性があるのではないか

これらの仮説をもとに、データの深掘分析やA/Bテストによる実証実験を行うことで、まだ優良化していな会員を意図的に優良化するためのヒントが得られる可能性があります。一方で、観察した一部の会員だけに見られる特徴である可能性も否定できず、もしそうなら、この仮説の検証に意味はありません。そこで代表性の検証を行います。代表性(Representativeness)とは、調査対象者全体の中から抽出された一部の対象者の調査結果が、調査対象者全体の結果を、偏りなく正確に反映出来ているかどうかのことです。

その発見に代表性はあるか。

代表性検証のための分析テーブルを作成します。BigQueryのクエリエディタに以下のSQL文を入力し、青い[実行]ボタンをクリックしましょう。

このクエリ結果をデータセット「DE」に「sum_members_rep」という名前で保存します。このテーブルから以下の結果が得られます。

  • 休眠会員(初回購買から91日以上購買がない会員):78.6%
  • そのまま離反する会員:64.7%(休眠会員の82.3%)
  • 復帰してF2転換する会員:13.9%(休眠会員の17.7%)
  • 復帰してF3転換する会員:7.7%(休眠会員の9.8%)

初回購買から91日以上購買がない会員を休眠会員とすると、80%近くが休眠会員となるものの、そのうちの20%近くが復帰し、10%近くがF3転換していることになります。逆に休眠会員の80%近くがそのまま離反しており、大きなポテンシャルがあることがわかります。とはいえ下図のとおり休眠期間が長くなるほど優良化率が下がるため、早いタイミングでの復帰促進が望ましいようです。

休眠期間別会員ランク構成比率

さらに下図のとおり、購買商品カテゴリ数と優良化には明らかな相関があることがわかります。

購買商品カテゴリ数別会員ランク構成比率

これらの分析結果は、さきほどの二つの仮説が正しいことを証明するものではありません。ただ、その発見には代表性があり、データの深掘分析や実証実験を行うことに意味があることを示唆しています。

また、購買商品カテゴリ数には優良化との明らかな相関があるため、結果との相関が強いサブセグメントに指定し、8以上に絞って改めて行動データ観察をするのもよいでしょう。

このようにデータエスノグラフィは、一人ひとりの行動データをミクロ視点で観察することで、行動の実態を把握し、意図した結果に導くためのヒントが得られる手法であることを理解してもらえたのではないかと思います。