ITパスポート 2014年 秋期 問28
問題文
顧客の購買行動を分析するバスケット分析の事例として、適切なものはどれか。
選択肢
ア:コンビニエンスストアで商品ごとの販売促進費と売上高の関係を分析する。
イ:コンビニエンスストアに来店する客が、一緒に購買する商品を分析する。(正解)
ウ:スーパーマーケットで販売する商品カテゴリごとの収益率を分析する。
エ:スーパーマーケットに来店する客の来店頻度や購入金額を分析する。
🔒 解説は解答すると表示されます
顧客の購買行動を分析するバスケット分析の事例【ITパスポート 解説】
正解の理由
選択肢イが正解です。
バスケット分析(Market Basket Analysis:買い物かご分析)は、顧客が同じ「購買(バスケット)」で一緒に買う商品同士の関係を見つける手法です。つまり「Aを買う人はBも買う傾向がある」といった商品間の関連性を明らかにします。選択肢イは「一緒に購買する商品を分析する」とあり、バスケット分析の目的に合致します。
バスケット分析(Market Basket Analysis:買い物かご分析)は、顧客が同じ「購買(バスケット)」で一緒に買う商品同士の関係を見つける手法です。つまり「Aを買う人はBも買う傾向がある」といった商品間の関連性を明らかにします。選択肢イは「一緒に購買する商品を分析する」とあり、バスケット分析の目的に合致します。
解法ステップ
バスケット分析を問題文から判断する基本手順を示します(試験での解法の流れ):
-
用語の確認
- 「バスケット分析=買い物かごに入る複数商品間の関連を見る分析」だと確認します。
-
選択肢の照合
- 各選択肢が「商品間の同時購買(同じ取引内)」を扱っているかをチェックします。
-
当てはまるものを選択
- 「一緒に購買する商品」を扱う選択肢を選びます → イ。
実務的な分析の流れ(参考):
- 取引データ収集(取引IDごとに購入商品を記録)
- 頻出組合せの抽出(サポートの計算)
- 関連ルール生成(confidence、liftの評価)
- 結果の活用(クロスセル、陳列配置、レコメンド)
選択肢別の誤答解説
-
ア: 「商品ごとの販売促進費と売上高の関係を分析する」
→ これは費用対効果やプロモーション効果分析(売上と販促費の相関や回帰分析)であり、商品同士の「一緒に買われる関係」を見るバスケット分析ではありません。 -
イ: 「コンビニエンスストアに来店する客が、一緒に購買する商品を分析する」
→ 取引内の同時購買関係を直接扱うのでバスケット分析の典型例です。 -
ウ: 「商品カテゴリごとの収益率を分析する」
→ これは収益性分析や商品別損益分析で、カテゴリ別の利益率を見るもので、商品間の関連性を求めるバスケット分析ではありません。 -
エ: 「来店頻度や購入金額を分析する」
→ これは顧客の行動量(頻度)や金額(購買力)を分析する「顧客分析」や「RFM分析(Recency, Frequency, Monetary:最新購買・頻度・金額)」に該当し、商品同士の関連を扱うものではありません。
よくある誤解
-
「バスケット分析は誰が来店したか(顧客の属性)を見る分析だ」
- 誤りです。バスケット分析は取引(買い物かご)内の商品組合せを主に扱います。顧客属性を使う場合は別の分析(顧客セグメンテーション)と組み合わせます。
-
「頻度分析(来店頻度や購入金額)=バスケット分析」
- 来店頻度や購入金額は顧客の行動量の分析であり、商品同士の関係を見るバスケット分析とは目的が異なります。
-
「バスケット分析は単に同時に買われた回数を並べるだけで良い」
- 単なる頻度だけでなく、支持度(support)、確信度(confidence)、リフト(lift)などで関連の強さや有用性を評価する必要があります。単純な回数だけだと偶然の同時発生を見誤ることがあります。
補足コラム
基本指標(概念を平易に):
-
サポート(support)
ある組合せが全取引の中でどれくらいの割合で現れるか。例えば「パンと牛乳が一緒に買われる割合」がサポートです。
数式: -
コンフィデンス(confidence)
Aを買った顧客のうち、どの割合がBも買ったか。条件付き確率です。
数式: -
リフト(lift)
Aを買ったときにBが買われる確率が、Bの通常の購入確率と比べてどれだけ高いかを示します。1より大きければ正の関連。
数式:
実務での使い方例:
- レジ横に関連商品を並べる(陳列最適化)
- レコメンド(「一緒に買われる商品」を提示)
- セット販売の企画(クロスセル施策)
簡単な技術メモ:
- 小規模ならExcelのピボットやフィルタで可視化可能。
- 大量データならPython(mlxtend)、R(arules)などのライブラリが便利。
コード例(Python:mlxtendで簡単にアプリオリを実行)
from mlxtend.frequent_patterns import apriori, association_rules
import pandas as pd
# トランザクションを0/1のデータフレームにした例
df = pd.DataFrame({
'bread':[1,0,1,1],
'milk':[1,1,1,0],
'butter':[0,1,1,0]
})
freq_itemsets = apriori(df, min_support=0.5, use_colnames=True)
rules = association_rules(freq_itemsets, metric="confidence", min_threshold=0.6)
print(rules[['antecedents','consequents','support','confidence','lift']])
※ ライブラリのインストールが必要です(例: pip install mlxtend)。
FAQ
Q1: バスケット分析はどれくらいのデータ量が必要ですか?
A1: 一概には言えませんが、頻度の低い組合せは統計的に信頼できないため、ある程度の取引数が必要です。小規模店舗なら数千〜数万件、ネット販売など大量データがあればより安定します。
A1: 一概には言えませんが、頻度の低い組合せは統計的に信頼できないため、ある程度の取引数が必要です。小規模店舗なら数千〜数万件、ネット販売など大量データがあればより安定します。
Q2: サポートやコンフィデンスの目安はありますか?
A2: 業種や目的で変わります。小売ではサポート0.01(1%)以下は雑多になりやすい一方、重要なニッチ組合せは低サポートでも意味を持つことがあります。コンフィデンスは高いほど強い関連ですが、リフトも確認して偶然性を排除しましょう。
A2: 業種や目的で変わります。小売ではサポート0.01(1%)以下は雑多になりやすい一方、重要なニッチ組合せは低サポートでも意味を持つことがあります。コンフィデンスは高いほど強い関連ですが、リフトも確認して偶然性を排除しましょう。
Q3: バスケット分析で顧客個人を特定できますか?
A3: 基本は取引単位の匿名データで行います。顧客IDが紐づく場合は顧客分析と組み合わせ可能ですが、個人情報保護に注意が必要です。
A3: 基本は取引単位の匿名データで行います。顧客IDが紐づく場合は顧客分析と組み合わせ可能ですが、個人情報保護に注意が必要です。
関連キーワード: バスケット分析、アソシエーションルール、サポート、コンフィデンス、リフト、クロスセル、レコメンド、アプリオリ、取引データ、陳列最適化

\ せっかくなら /
ITパスポートを
クイズ形式で学習しませんか?
クイズ画面へ遷移する→
すぐに利用可能!

