ひとりマーケティングのためのデータ分析

TOOLS / BASKET ANALYSIS

「よく一緒に買われる商品」を見つけ出す。
Excelとネットワーク図で体験するバスケット分析。

ピボットテーブルでクロス集計し、リフト値で真の相関をあぶり出す。

2026/5/19

晴花

HARUKA

「ワインを買う人は生ハムも買う」…ただの勘じゃなくて、データで証明できるんだね!

バスケット分析とは

「商品Aを買った人は商品Bも買っている」というような、一緒に買われやすい商品の組み合わせ(アソシエーションルール)を見つけ出す分析手法です。ECサイトの「この商品を買った人はこんな商品も買っています」というレコメンド機能や、スーパーの陳列の最適化などに使われます。

3つの指標
「支持度(全取引に占める同時購入の割合)」「確信度(Aを買ったときにBも買う確率)」「リフト値(偶然ではなく必然か)」でルールの強さを測ります。
リフト値 > 1.0
ここが一番重要です。リフト値が1.0を超えている組み合わせは、「単独で売れる確率」よりも「セットで売れる相乗効果」が高いことを示します。

このページでは、イタリアンレストランの架空のオーダーデータ(100件)を使って、Excelでの指標計算と、ネットワーク図による直感的な可視化を体験します。

01

サンプルデータの準備

今回は、とあるイタリアンレストランの1ヶ月分のレシートデータ(100件)を用意しました。まずはこのデータをダウンロード(またはコピー)してExcelに貼り付けるところからスタートします。

データは「取引ID」と「商品名」が縦に並んだシンプルなリスト形式です。

サンプルデータをコピー
元データ(取引レコード一覧)
02

ピボットテーブルで「買い物かご」をマトリックス化する

いきなり数式を書くのではなく、まずは「どのレシートで何が買われたか」を視覚的にわかりやすくします。データ領域を選択し、挿入 タブから ピボットテーブル を作成します。

ピボットテーブルの挿入

フィールドリストを以下のように設定します。

  • 行: 取引ID
  • 列: 商品名
  • 値: 商品名(「データの個数」で集計)

これで、行が「1枚のレシート」、列が「各メニュー」となり、買われた場所に「1」が立つマトリックス表(クロス集計表)が完成します。

ピボットテーブルのフィールド
取引ID:行、商品名:列、値:個数/商品名
集計後
ピボットテーブルで集計
03

指標の計算(まずは1ペアだけで理論を体験)

ピボットテーブルの横の空きスペース(例:O列)を使って、「赤ワイン」と「生ハム」が何回同時に買われたかを COUNTIFS 関数で計算してみます。

例えば「赤ワイン(I列)」と「生ハム(H列)」の同時購入数を出すには、以下の式を使います(「1」の数を数えます)。

  • O3=COUNTIFS(I5:I104,1,H5:H104,1)
見出しの作成
N3:同時購入数, N4:支持度, N5:確信度, N6:リフト値
同時購入数の計算
同時購入数:20

つづいて、割り算で3つの指標を求めます。

  • 支持度: 同時購入数 ÷ 全体の取引数(レシートの枚数)
  • 確信度: 同時購入数 ÷ 赤ワインの購入数
  • リフト値: 確信度 ÷ (生ハムの購入数 ÷ 全体の取引数)
  • O4=O3/100
  • O5=O3/GETPIVOTDATA("商品名",$A$3,"商品名","赤ワイン")
  • O6=O5/(GETPIVOTDATA("商品名",$A$3,"商品名","生ハム")/100)

計算の結果、赤ワインと生ハムの組み合わせはリフト値が「1.0」を大きく超える値になるはずです。これは偶然ではなく、強い相関(絆)がある証拠です。

支持度:0.2, 確信度:0.8, リフト値:2.96
綾子

AYAKO

できた!リフト値がすごく高いから、この2つはセットでアピールすれば売れそうだね!

晴花

HARUKA

正解。でも綾っち、今回の商品は8種類。全組み合わせは「28通り」あるね。これを全部手入力でCOUNTIFSの参照先を変えて計算するの?

綾子

AYAKO

えっ……。それは苦行すぎるよ、指が折れちゃう!

04

計算と可視化はツールに任せる(ネットワーク図化)

実務において、全商品の組み合わせを手作業でExcelに入力するのは非効率の極みです。Excelはあくまで「なぜリフト値が出るのか」というブラックボックスを紐解くためのステップと割り切りが必要です。

ここから先の「全組み合わせの一括計算」と「結果の可視化」は、専用のツールにバトンタッチします。以下のシミュレーターの入力欄に、ステップ1でダウンロードしたCSVデータ(取引IDと商品名の2列)をそのままコピーして貼り付けてみてください。

面倒な計算が一瞬で終わり、すべての結果が「相関ネットワーク図」として変換されます。スライダーを動かして「本当に意味のある太い線(リフト値1.5以上など)」だけを残すことで、マーケティングのヒントが直感的に浮かび上がります。

ステップ1でコピーしたデータを貼り付けてください。CSV・TSV形式どちらにも対応しています。

【コラム】分析用のサンプルデータ、AIに作ってもらうと練習が捗ります!

綾子

AYAKO

今回使った都合のいいイタリアンのデータ、実はAIにお願いして「隠しルール」を仕込んでもらった架空のデータなんです。

分析の練習をする際、完全にランダムなデータを使うと、すべての商品のリフト値が1.0付近になり、面白い結果が出ません。そこで生成AI(GeminiやChatGPTなど)に以下のようなプロンプト(指示)を与え、意図的な相関を持たせたデータを作成させることができます。

プロンプト例
あなたはイタリアンレストランのデータアナリストです。
バスケット分析のチュートリアルで使用する、架空のレシートデータを作成してください。

【出力要件】
・総取引(レシート)数:100件分
・フォーマット:CSV形式(カラム名は「取引ID」「商品名」)
・1つの取引IDにつき、1〜4個の商品が購入されるようにしてください。

【重要な条件:隠しルール(相関)】
分析した時に面白い結果が出るように、以下の「購買傾向の偏り」を意図的に組み込んでください。
1. 「赤ワイン」を買う人は、高い確率(約80%)で「生ハム」も一緒に買う。
2. 「ティラミス」を買う人は、高い確率(約90%)で「コーヒー」も一緒に買う。
3. 「ビール」を買う人は、そこそこの確率(約50%)で「マルゲリータ」も一緒に買う。

このプロンプトの「隠しルール」を自分のお店や興味のある業種に書き換えれば、様々なパターンのダミーデータを作って分析の練習ができます。

バスケット分析・データマイニングについて役に立つ資料

本ページで解説しているアソシエーションルールの理論や、実際のPOSデータを活用したマーケティング事例についてより深く学びたい方向けの参考資料です。

晴花