決定木分析(第1回) 売れる理由 売れない理由

決定木分析(第1回) 売れる理由 売れない理由

意思決定要因

優先順位

 麺類が好物で、なかでも「うどん」が大好物です。「麺」が太くてもちもちしている、いりこのパンチが効いた「出汁」が好きです。
 ですからうどん屋を選ぶ基準は「麺」と「出汁」が優先されて、値段は数百円の違いであればほぼ無視されます。

 では、「麺」と「出汁」ではどちらを優先するのかとなると、どちらかといえば「麺」でしょうか。

 このように何が意思決定の要因になっているのか、それは人それぞれによって違います。
 意思決定の要因を数学的手法で発見して、その過程に優先順位をつけることが決定木の役割です。

意思決定のみえる化

といえます。

 「われわれを支配してきた決定要因が無意識的動機から計算可能な客観化された領域に引き下ろせるようになる」(カール・マンハイム:イデオロギーとユートピア)

売れる理由

 どうすれば売上高がさらにアップするのか?商売人なら誰でもいつでも考えています。

 具体的対策のために「売れない理由」を見つける、または、「売れる理由」を見つける、これら二つのアプローチ方法があります。実践的には、売れているのだから「売れる理由」を見つける必要は少なく、「売れない理由」を見つけて改善する方に重点がおかれているようです。

 それでも「売れている理由」を分析する必要がある場面に遭遇することがあります。
・商品の値上げをせざるを得ない場合
・サービスを縮小せざるを得ない場合

 価格が購入動機の最大要因であれば値上げは致命傷になるし、ポイントを貯めているといったサービスが購入動機の最大要因であればサービス縮小が致命傷になります。実際の小売業では100円ごとに1ポイントが200円ごとに1ポイントに、300円ごとに1ポイントのような店舗もでてきています。価格競争だけでなく、ポイントサービス競争も中小は大手に押されて苦しいです。

 決定木分析は「売れない理由」「売れている理由」どちらも表現できるところがいいですね。計算的には「売れない理由」の反対が「売れている理由」という単純なものですが。

決定木分析

サンプルデータ
選択かけうどん価格エビ天価格
食べる300120
食べる300140
食べる300160
食べる350120
食べる350120
食べる350140
食べない350160
食べない350160
食べない400140
食べない400140

 10人のアンケートデータです。
・本体の「かけうどん価格」
・トッピングの「エビ天価格」を要因にして、うどんを「食べる」のか「食べない」のかを決定しています。

Rコマンド
#データを読み込みます
udon0<-read.csv("C:/ディレクトリ/ファイル名.csv",header=T)
#必要な関数 パッケージがないときはインストールしてください
library(rpart)
library(rattle)
library(partykit)
#計算します
rp0<rpart(選択~.,data=udon0,method="class",minsplit = 3)
#結果をプロットします、左図
fancyRpartPlot(rp0)

#ここから右側の図を作成
#関数へ上記計算結果を代入します
res0<-as.party(rp0)
#右図を作成します
plot(res0)
#棒グラフの色を指定します
bc<- c("gray60","gray95")
#結果をプロットします
plot(res0, terminal_panel =node_barplot(res0,fill=bc, beside =TRUE))


*コピペしてRへ張り付けるときは「”」「<」などが文字化けしていることがありますので、ご注意ください。

結果の解説

結果図
R decision-tree 決定木分析結果

 左図はRコマンドの前段。右図はRコマンドの後段で描いています。内容はどちらも同じで、表現方法が違うということです。

第一段階

食べる・食べないは「かけうどん価格」で決定します。

 「かけうどん価格」が375円以上になると食べません。
 つまり「かけうどん価格」は370円が上限価格になります。375円以上に設定すると10人のうち2人(以上)、20%の顧客を失います。

第二段階

食べる・食べないは「エビ天価格」で決定します。

 「かけうどん価格」が375円未満であっても「エビ天価格」が150円以上だと厳しくなります。

 「エビ天価格」を150円以上に設定すると第一段階で残った8人のうち25%の顧客を失います。

第三段階

食べる・食べないは「かけうどん価格」で決定します。

 「エビ天価格」を150円以上に設定しても「かけうどん価格」が325円未満であれば食べることがあります。

 第二段階で失った顧客の33%が復活します。

適正設定価格

「かけうどん価格」=350円~370円
「エビ天価格」=140円
もちろんこれ以下もOKです。

合計価格で再計算

サンプルデータ2
選択かけうどん価格エビ天価格合計価格
食べる300120420
食べる300140440
食べる300160460
食べる350120470
食べる350120470
食べる350140490
食べない350160510
食べない350160510
食べない400140540
食べない400140540

 データはすべて同じです。「かけうどん価格」「エビ天価格」の「合計価格」を加えました。

結果2
R decision-tree 決定木分析結果

 算出される結果はこれだけです。
 つまり「かけうどん価格」「エビ天価格」の「合計価格」が500円以上になると食べません。

・はじめの分析結果
「かけうどん価格」=350円~370円(370円がNG)
「エビ天価格」=140円

「かけうどん価格」を370円に設定すると厳しくなります。ですから細かい話ですが、
「かけうどん価格」=350円
「エビ天価格」=140円

または、
「かけうどん価格」=360円
「エビ天価格」=130円

このように合計価格を500円未満に設定する必要があります。

>決定木分析(第2回) テキストマイニング編