今回のテーマ
前回(第4回目)は、商品視点の分析として「バスケット分析」を解説しました。
今回は、「バスケット分析」の実践編として、R言語のarulesパッケージ内に格納されている「Groceries」データを使ったバスケット分析をご紹介します。
(本来は、最近分析に関わった、とある生鮮食料品スーパーのPOSデータを用いてバスケット分析をした結果をご紹介する予定でしたが、商品名などデータを加工する必要があるので、次回以降に回します)
使用するデータ
今回使用する「Groceries」データはR言語のarulesパッケージの中に格納されているデータです。
データの中身は、食品や日用品、生活雑貨を取り扱う一般的なスーパーマーケットの1か月間のトランザクションデータです。
商品は「liquor」や「dish cleaner」「white wine」など、169のカテゴリーにまとめられています。
トランザクション数は、9835トランザクション(行)です。
データの中身を見るため、先頭10行を抜粋します。
同時購入された商品が1行ごとに格納されています。
ビジネスへの活用
「Groceries」データを元にバスケット分析を行い、「どの商品とどの商品がセット購入されているのか」や「ある特定の商品とセット購入されやすいのはどの商品か」などを明らかにすることで、購入点数や客単価アップに繋がることが期待できます。
尚、ビジネスへの活用については、第4回目の記事を参照ください。
Rによる実装
#tidyverseの読み込み
library(tidyverse)
#arulesの読み込み
library(arules)
次に、Groceriesのデータをロードします。
data("Groceries")
Groceries
apriori関数でアソシエーションルールを抽出します。
Gr_ap <- apriori(Groceries)
出力結果を以下に示します。
writing ... [0 rule(s)] done [0.00s].
ルールが抽出されませんでしたので、パラメータ(支持度、信頼度)を調整していきます。
Gr_ap <- apriori(Groceries, p = list(support = 0.005, confidence = 0.01))
支持度(Support)を0.005、信頼度(Confidence)を0.01に調整しました。
出力結果を以下に示します。
writing ... [2138 rule(s)] done [0.00s].
2138個のルールが抽出されました。
抽出された2138個のルールをlift値でソートし、上位20個のルールを抽出してみます。
Gr_ap %>% sort(, by = "lift") %>%
head(n = 20) %>%
inspect()
出力結果を以下に示します。
最もlift値が高い組み合わせは、「ham」と「white bread」の組み合わせであることが分かりました。
「ハム」と「パン」の組み合わせですので、サンドイッチでも作るのでしょう。
上位20個の組み合わせを見ると、
[3] {citrus fruit, other vegetables, whole milk} => {root vegetables}
[5] {root vegetables} => {herbs}
[7] {root vegetables, other vegetables} => {onions}
[8] {citrus fruit, pip fruit} => {tropical fruit}
など、野菜同士の組み合わせや、果物同士の組み合わせなどが多いことが分かりました。
組み合わせ自体は「発見」といえるほどの組み合わせではありませんが、多くのお客さんが、野菜や果物を単品ではなく、色々とセット購入するという結果からは、「フルーツバスケット」などの商品を作ると売れるかもという示唆が得られると言えます。
また、少し面白いルールとして
[17] {beef, other vegetables} => {root vegetables}
「牛肉とその他野菜を購入したお客さんは、根菜類を一緒に買う傾向がある」というルールは面白い組み合わせだと感じました。
根菜類ですので、ステーキに付け合せるにんじんなどでしょうか?
ちなみに、ステーキの付け合せににんじんが選ばれる理由には、にんじんに含まれるカロテンが油と一緒に摂取すると吸収が良くなるからという説があるようです。
カロテン(ビタミンA)は、のどや鼻の粘膜を丈夫にし、細菌に対して免疫力を高める効果があるようなので、これからの時期、風邪予防にもなりますね。
こういったトピックを売り場で展開するのも、インストアマーケティングとしては面白いと思いました。
話は少しそれましたが、バスケット分析は、たとえ「発見」といえるような結果が得られなくても、抽出されたルールを見ていくと、販促のヒントが得られることが分かります。
本記事ではここまでとしますが、バスケット分析は前件部などの条件を変えれば、いろいろなルールが抽出できますので、引き続き試してみようと思います。