Slide 1

Slide 1 text

RでPSM分析
 2024/10/19
 Tokyo.R #115
 @bob3bob3


Slide 2

Slide 2 text

高い? 安い?
 ラーメン1杯が1万円!


Slide 3

Slide 3 text

高い? 安い?
 スポーツカーが1万円!


Slide 4

Slide 4 text

高い? 安い?
 どっちも同じ1万円なのに高かったり安かったりする。


Slide 5

Slide 5 text

内的参照価格(グーテンベルグ仮説)
 ● 内的参照価格は価格を判断する基準として用いられる心理的な価格。
 ○ 内的参照価格には幅(区間)がある。 
 ● 消費者は内的参照価格と比較して価格を判断する。
 ○ 販売価格 < 内的参照価格 → 安い! 
 ○ 販売価格 > 内的参照価格 → 高い! 
 ○ 販売価格 = 内的参照価格 → 妥当 
 ● 内的参照価格は過去に観察、経験した様々な価格に基づいて形成される。そのた め、内的参照価格は人によって異なる。観察、経験が追加されることで更新され る。
 ● 商品/サービスを開発するうえで、内的参照価格を把握することはとても大切。


Slide 6

Slide 6 text

どうやって内的参照価格を把握する? ● 個々の消費者の内的参照価格をアンケート調査でうまいこと聞き出したいが、自覚 していない価格の質問は難しい。
 ● いくつかの方法
 ○ モナディック測定 (Monadic Measurement) 
 ■ 回答者をいくつかのグループに分け、異なるグループには同じ商品でも異なる価格を提示し て、グループごとに購入意向の違いがあるかを検出する手法。ABテスト、RCT。 
 ○ 比較測定 (Comparative Measurement) 
 ■ コンジョイント分析のように、価格が違う複数の商品のプロファイルの中から好ましいものを 選ぶ手法。
 ○ 自己申告式測定 (Declarative Measurement) 
 ■ 回答者に価格を直接質問する手法。代表的な調査・分析法が PSM分析。 


Slide 7

Slide 7 text

PSM分析のための質問 ● いくらから「安すぎて品質が疑わしい」と思いますか。
 ○ 非受容最低価格、too cheap 
 ● いくらから「安い」と思いますか。
 ○ 受容最低価格、cheap 
 ● いくらから「高い」と思いますか。
 ○ 受容最高価格、expensive 
 ● いくらぐらいから「高すぎて買えない」と思いますか。
 ○ 非受容最高価格、too expensive 


Slide 8

Slide 8 text

回答データ例 ● 人工データ(ラーメン)
 ○ tch:安すぎ
 ○ ch:安い
 ○ ex:高い
 ○ tex:高すぎ


Slide 9

Slide 9 text

回答の分布を確認

Slide 10

Slide 10 text

PSM分析のやり方 1. 各回答の累積度数を算出。流儀が2つ。
 a. 原論文:「高い」「高すぎ」は安いほうから累積。「安い」「安すぎ」は高い ほうから累積。
 b. 現在の主流:「高い」の反転と「安すぎ」は高いほうから累積。「安い」の 反転と「高すぎ」は安いほうから累積。
 2. 折れ線グラフにして、交点の価格を求める。
 a. Accepted Price Range(受容価格帯) 
 b. Indifference Price Point(妥当価格、妥協価格) 
 c. Optimal Price Point(理想価格、最適価格、浸透価格)


Slide 11

Slide 11 text

RでPSM分析 以前、自分で書いたがtidyverseが出現する前だし関数化もしてない……


Slide 12

Slide 12 text

pricesensitivitymeterパッケージで手軽に実行(1) library(ggplot2) library(pricesensitivitymeter) # 再現性のための乱数種固定 set.seed(1234) # デモ用回答データの生成。ラーメン想定 data_psm_demo <- data.frame( tch = round(rnorm(n = 250, mean = 290, sd = 40), digits = -1), # Too cheap ch = round(rnorm(n = 250, mean = 390, sd = 80), digits = -1), # Cheap/Good Value ex = round(rnorm(n = 250, mean = 1000, sd = 160), digits = -1), # Expensive/High Side tex = round(rnorm(n = 250, mean = 1500, sd = 320), digits = -2) # Too expensive )

Slide 13

Slide 13 text

pricesensitivitymeterパッケージで手軽に実行(2) # PSM分析実行 output_psm_demo1 <- data_psm_demo |> psm_analysis( data = _, toocheap = "tch", cheap = "ch", expensive = "ex", tooexpensive = "tex" ) # 結果サマリー output_psm_demo1 |> summary() Van Westendorp Price Sensitivity Meter Analysis Accepted Price Range: 330 - 1160 Indifference Price Point: 600 Optimal Price Point: 380 --- 200 cases with individual price preferences were analyzed (unweighted data). Total data set consists of 250 cases. Analysis was limited to cases with transitive price preferences. (Removed: n = 50 / 20% of data)

Slide 14

Slide 14 text

pricesensitivitymeterパッケージで手軽に実行(3) # 描画 psm_plot(output_psm_demo1) + labs( x = "Price", y = "Share of Respondents (0-1)", title = "Example Price Sensitivity Meter Plot", caption = "Shaded area: range of acceptable prices\nData: Randomly generated") + scale_x_log10() + theme_minimal()

Slide 15

Slide 15 text

Enjoy!