2018年3月11日日曜日

ベーグルの新商品開発「コンジョイント分析」編

今回は、

  「ある程度の情報があり方向性が固まっている」
  「いよいよレシピ開発を進めていく」

という時点で「素材」「価格」「見た目」などいくつかの候補を決めて
具体的に決定していく手法をご紹介します。


今回、使う手法は…
「コンジョイント分析」

お客様が購入するときに、どんな項目が重視されるのか?

コンジョイント分析は商品開発を進める中で、
商品の素材や味覚・食感、見た目、価格などの最適な組み合わせ
を見つけるのに適しています。


では、本題へ・・・

「チョコレートベーグルの品揃えを増やそう!」

現在、チョコレートベーグルはベーシックな「チョコベーグル220円」が1つ。
現在20品中3位と最近、人気商品に育ってきています。

市場トレンドを調べてみると…

・ベルギーチョコやクーベルチュールチョコなど素材・産地などにこだわったものが多い
・カカオが多めのチョコレート菓子が「ヒット番付」にランクイン
・健康ニーズが高まっていてチョコ、ベーグルも人気みたい
・素材へのこだわり、健康ニーズのものは多少高価格帯でも支持されやすいらしい
・さらに「インスタ映え」「萌え断」など見た目に特徴があると注目されそう

などなど、チョコに関する有益な情報が出てきました。

また、常連さんからも「いろんなチョコベーグルを試してみたい」という声が出ています。
調べていくと、他にもお客様からいろいろな声を集めることができました。



「チョコレートベーグルを作る要素って?」

簡単なリサーチではありますが、その結果から以下のような要素を考えました。

  チョコレート 
  トレンド上昇中の3つを候補
   ・ベルギーチョコ
   ・クーベルチュールチョコ
   ・濃厚カカオチョコ

  見た目・形状 
  現在お店で扱っている3タイプを候補
   ・編み込み丸型タイプ
   ・包餡型タイプ(あんパンのような中身を包んだもの)
   ・スティック型タイプ

  価格 
  現在の中心価格帯は240円、最も高いのは「ビーフシチュー」で350円
  原材料にこだわるため、最低でも260円以上の価格設定を検討
   ・280円
   ・300円
   ・320円

ここでは「チョコレートの種類」「見た目・形状」「価格」は、”属性”と呼びます。
また、それぞれの種類は”水準”と呼びます。



「コンジョイント分析の準備」

コンジョイント分析のメリットは、最低の選択肢から最適な水準の組み合わせを
明らかにできることです。

すべての組み合わせを考えると…

  「チョコレートの種類」3水準
      ×
  「見た目・形状」3水準
      ×
  「価格」3水準

  =3×3×3となり、27種類もの組み合わせになります。

27種類もの比較をするのは手間も掛かりますし、アンケートに答えてくれる人も
どれくらいいるでしょうか…

では、「R」を使って分析の準備を進めます。
統計的な解説は抜きにして手順と結果の見方を説明してきます。


(1)パッケージのインストールと実行
-----------------------------------------------------------------
###conjointパッケージのインストール(最初だけ)
install.packages("conjoint")

###パッケージ読み込み
library(conjoint) #コンジョイントパッケージを使用する
-----------------------------------------------------------------
インストールは最初の1回だけです。

ここで一度、スクリプトを任意のフォルダに保存します。
名前は自由につけてください。


(2)属性と水準の設定

-----------------------------------------------------------------
#属性名と水準名を準備する
setting <-
  expand.grid(
  チョコタイプ =c("ベルギーチョコ","クーベルチュール","濃厚カカオ"),
  見た目=c("編み込み型","包餡型","スティック型"),
  価格=c("280円","300円","320円")
  )
-----------------------------------------------------------------

「属性」と「水準」を上のように入力します。

「属性」と「水準」は、自由に追加や増減ができます。

属性名と水準名以外は半角になるので注意です。また、最後の「」を
付け忘れたりすると正しく実行できないので属性を増やすときは注意です。

つぎに「水準」を縦に並べたCVSファイルを作成します。

2行目から、チョコタイプ、見た目、価格のそれぞれの水準を上のように入力。
「水準.csv」と名前を付けて、スクリプトと同じフォルダへ保存しておきます。




(3)アンケートで使用する組み合わせの作成

----------------------------------------------------------------
plan <-caFactorialDesign(data=setting,type="orthogonal")#組み合わせをつくる
plan #表示する
----------------------------------------------------------------
今回はすべての組み合わせは27種類ですが、これを実行すると…

         チョコタイプ       見た目  価格
 3     濃厚カカオ   編み込み型 280円
 4     ベルギーチョコ       包餡型 280円
 8   クーベルチュール スティック型 280円
 11  クーベルチュール   編み込み型 300円
 15       濃厚カカオ       包餡型 300円
 16    ベルギーチョコ スティック型 300円
 19    ベルギーチョコ   編み込み型 320円
 23  クーベルチュール       包餡型 320円

 27       濃厚カカオ スティック型 320円

という結果が表示されるはずです。これが「直交計画」といわれるものです。
9種類の組み合わせができていることがわかります。


簡単に言うと
「この9種類ですべての組み合わせを調査するのと同じ」
になります。


ちなみに左側の3、4~27という数値は27種類の組み合わせのうち、使用した組み合わせを示しています(気にしなくてもよいです)。

また、属性や水準を増やすと「直交計画」自体も多くなってしまいます。
その際は、type="orthogonal"という部分を、type="ca"に書き換えると
減らすことができます。

書き換えた例(ここでは使用しません)
-----------------------------------------------------------------
plan <-caFactorialDesign(data=setting,type="ca")
#水準数の合計ー属性数+1の組み合わせ(少なくなるが相関が多少出る)
-----------------------------------------------------------------

今回の場合は、書き換えてみると7種類の組み合わせがでてきます。
若干精度は下がる方法ですが実際のビジネスでは回答者の負担を下げる
必要がある場合もありますので参考までに。


(4)直交計画のファイルの保存

このファイルは処理には使いませんが、
分析のとき、確認に使えるために書き出します。
---------------------------------------------------------------
write.csv(plan,"組み合わせ.csv")#ファイルに書き出す
----------------------------------------------------------------


(5)分析するための下準備

上記の9種類の組み合わせを分析用に数値化しておきます。

ファイルに書き出しますが、このファイルは分析で使用しますので、
スクリプトと同じフォルダに保存されていることを確認してください。
---------------------------------------------------------------
#分析の下準備
caEncodedDesign(plan) #組み合わせを数値化
数値化<-caEncodedDesign(plan)
write.csv(数値化,"数値化.csv")
----------------------------------------------------------------
実行すると以下のような結果が表示されます。

    チョコタイプ 見た目 価格
 3             3      1    1
 4             1      2    1
 8             2      3    1
 11            2      1    2
 15            3      2    2
 16            1      3    2
 19            1      1    3
 23            2      2    3
 27            3      3    3

続いて、おまじない程度ですが以下を実行しておきます。
---------------------------------------------------------------
#無相関検定
cor(caEncodedDesign(plan))
無相関検定<-cor(caEncodedDesign(plan))
write.csv(無相関検定,"無相関検定.csv")
----------------------------------------------------------------
実行すると以下のような結果がでます。

                チョコタイプ 見た目 価格
  チョコタイプ            1      0    0
  見た目                   0      1    0
  価格                     0      0    1

これは「相関を確認」する作業ですが、
同じ属性のものが「1」、それ以外の組み合わせが「0」になっています。
この計画が「うまく作られている」程度で確認すればOKです。

(ちなみに(3)で、「type="ca"」と書き換えている場合は、
「0」が0~1の間で「0」に近い数値がでます。
若干、精度を犠牲にして組み合わせを減らしていることを示しています。)

ファイルを書き出していますが、分析では使用しません。


ここまでのスクリプト(アンケート実施までの準備)
-----------------------------------------------------------
###:conjointパッケージのインストール(最初だけ)
install.packages("conjoint") 

###パッケージ読み込み
library(conjoint) #コンジョイントパッケージを使用する

#属性名と水準名を準備する
setting <- 
  expand.grid(
    チョコタイプ =c("ベルギーチョコ","クーベルチュール","濃厚カカオ"),
    見た目=c("編み込み型","包餡型","スティック型"),
    価格=c("280円","300円","320円")
  )

#組み合わせをつくる
plan <-caFactorialDesign(data=setting,type="orthogonal")
plan
write.csv(plan,"組み合わせ.csv")

#分析の下準備
caEncodedDesign(plan) #組み合わせを数値化
数値化<-caEncodedDesign(plan)
write.csv(数値化,"数値化.csv")

#無相関検定
cor(caEncodedDesign(plan))
無相関検定<-cor(caEncodedDesign(plan))
write.csv(無相関検定,"無相関検定.csv")
-----------------------------------------------------------



「アンケートの実施」

準備ができたらいよいよアンケートをします。

(1)だれに聞く?

アンケートは誰にきけばよいでしょうか。

詳しくはリサーチ編で書くことにしますが次のようなパターンが考えられます。

たとえば…

 (1)お客様に聞く
 (2)お客様の中でもチョコベーグルの購入者
 (3)または、「甘い菓子系」ベーグルの購入者
 (4)フェイスブックページにいいねをつけているユーザー
 (5)ネットリサーチ会社の有料パネル 

などなどいろいろありそうです。

今回は、

 ・実際に試作品を食べてもらい評価したい
 ・チョコベーグルを買ってくれているお客様に評価してもらいたい
 ・甘い菓子系のベーグルを買っていて、チョコベーグルを試したことが
  ないお客様にも知ってもらいたい

と考えているため、(3)「甘い菓子系」ベーグルの購入者を対象に
アンケートを実施することにします。
今回は、「30名」に協力をお願いすることにします。

(2)どうやって聞く?

では、どうやって聞けばよいでしょうか?

聞き方もいろいろなパターンが考えられます。

たとえば…
 (1)試作品をお渡しして、自宅で試食・評価してもらう
 (2)店舗のイートインコーナーを使って試食・評価してもらう
 (3)事前に募集して、貸しスペースを借りて試食・評価してもらう

などいろいろありそうです。
また、回答用紙やネットなどどんなツールを使うかも決める必要があります。

それほど大がかりなリサーチではないため、(1)か(2)がよさそうです。

今回は、回答後に直接、意見や感想が聞けるため、(2)の方法を採用します。

また、集計が簡単なこと、対象のお客様はおおむねスマートフォンなどを
使用しているので、
店舗にiPadを置いてネットで回答してもらうことにしました。

(3)なにを聞く?

どんなことを聞けばよいでしょうか。

コンジョイント分析で必要な設問のほか、「何が知りたいか」を考えて
設問設計をしていきます。

せっかくアンケートを実施するため聞きたいことはたくさんあると思いますが、
試食にも時間がかかるため、お客様の負担を最小限に抑える必要があります。
今回は、できるだけ必要なことだけを尋ねることにします。


設問設計の例
 (1)食べ比べて順位付けをしてもらう
    「9種類のベーグルを食べて、順位を付けてください」
 (2)それぞれの満足度を5段階や7段階で答えてもらう
    「9種類のベーグルを食べて、それぞれ満足度を5段階で答えてください」


今回は、どちらの方法でも構いません。
店舗のスタッフにプリテスト(実際に回答してもらい問題点を見つける)を
やってみて、答えやすい方を採用するとよいです。

また、「評価した理由」を必ず自由回答でもらうようにしましょう。
テキストから参考になる情報が得られる可能性があります。

その他、必要な項目として
 (3)年齢(年代)
 (4)性別
は最低限聞いておくことにします。

会員カードなどを発行している場合は、「会員番号」などを記載してもらうことで
これらの設問は不要になります。
アンケートを依頼する際に、お店の客層や「甘い菓子系」ベーグルの購入客層を
意識することもポイントです。


余裕があれば聞く項目として、
 ・利用シーン(朝食、会社での昼食、おやつ、家族で食べるなど)
 ・利用頻度
 ・利用動機
 ・当店の推奨意向(他の人に勧めたいと思う度合い)
 ・よく食べるベーグル
 ・今後食べてみたいベーグル

なども考えれます。

これらを考慮し、今回は次のような設問をつくりました。



9種類のベーグルにそれぞれ、
P 、 Q 、 R 、 S 、 T 、 U 、 V 、 W 、 X
と「識別記号」をつけています。

「1~9」、「A~I」で順番が分かりやすい記号にすると
最初に食べたものと最後に食べたもので評価に影響がでる可能性があるからです。

試作品を食べてもらう際、テーブルにバラバラに並べるといった工夫も必要です。
詳しくはリサーチ編でお話ししたいと思います。

また、今回は「Googleフォーム」を使用しており、
設定で選択肢の順番を変えるといったこともできます。


「アンケートの分析」

お客様へのご協力のお願い、事前のポスターでの告知で30名のお客様から
回答をもらうことができました。

今回は「Googleフォーム」を使用しており、スプレッドシートからCSVファイルに落とします。

こちらが今回のアンケートの結果です。



「結果.csv」と名前を付けて、スクリプトと同じフォルダに保存します。

いよいよコンジョイント分析の結果です。
-----------------------------------------------------------------
#アンケート結果の読み込み
結果<-read.csv("結果.csv",header=TRUE)
結果<-結果[,-1];     #列1(会員番号)を読まない
組み合わせ<-read.csv("数値化.csv",header=TRUE); #すべての組み合わせを読み込む
組み合わせ<-組み合わせ[,-1];    #列1を読まない
水準<-read.csv("水準.csv",header=TRUE); #水準コードの割り当て

###アウトプット

#コンジョイント分析とグラフ化
Conjoint(結果,組み合わせ,水準);title(main="重要度");
------------------------------------------------------------------

これを実行すると・・・


という結果がでました。

左上は「属性」の重要度を示しています。
今回、大きな差はないようですが、価格がもっとも重要で
次にチョコタイプ、見た目の順になっています。

「属性」ごとの重要な水準は、

 ・見た目 … 圧倒的に「編み込み型」が人気
 ・チョコタイプ … こちらも「クーベルチュール」が人気
 ・価格 … 「280円」が支持されていますが、「300円」と差は小さい

ということがわかりました。

「クーベルチュールチョコ」を使った「編み込み型」のベーグルと
いうことは決定してよいという結果になりました。

「価格」は「安いほうがよい」に決まっている…と思いますが、
ここではあまり大きな差が見られなかったため、
「300円」というプライシングでも問題ないと判断してよさそうです。


ということで、今回は商品開発のスペックを決定するために、
アンケートとコンジョイント分析を使いました。

実際に発売するには、試作品のテスト販売やネーミング、
近隣のベーグル店で同様の商品がある場合は比較調査なども
検討していくことになります。