choice modelling - an example
DESCRIPTION
Choice modelling - an example. Background. Bonlac changing processed cheese and natural cheddar offering from Bega to Perfect Cheese Previous research has: Explored an appropriate positioning for Perfect Cheese Identified the optimal pack design Further research is required to: - PowerPoint PPT PresentationTRANSCRIPT
Choice modelling - an Choice modelling - an exampleexample
Background
Bonlac changing processed cheese and natural cheddar offering from Bega to Perfect Cheese
Previous research has: Explored an appropriate positioning for
Perfect Cheese Identified the optimal pack design
Further research is required to: Understand market response to the new range of Perfect
Cheese in terms of: Price sensitivity Market share potential Cannibalisation effects
In addition, feedback on sensory performance of Perfect Cheese products relative to competitors, in order to support positioning platform ( not discussed today)
Pricing Objectives To understand the impact of launching of Perfect in the
Processed Cheese and Light Cheddar Block markets
Understanding initial impact (pre-trial)
Understand longer term impact (post-trial)
Understand the price sensitivity of each user group
Sensory Objectives To evaluate the Perfect cheese slice and block products
relative to competitive offerings in terms of: Acceptability (unbranded vs branded) Sensory profiles Relative to consumer ideals Purchase intentions Ability to support brand positioning expectations
Method Central location test at Takapuna
Pre-trialPre-trialDiscrete Choice ModellingDiscrete Choice Modelling
Pre-trialPre-trialDiscrete Choice ModellingDiscrete Choice Modelling
Sensory EvaluationSensory Evaluation1. All products unbranded1. All products unbranded
2. Perfect Cheese product branded2. Perfect Cheese product branded
Sensory EvaluationSensory Evaluation1. All products unbranded1. All products unbranded
2. Perfect Cheese product branded2. Perfect Cheese product branded
Post-trialPost-trialDiscrete Choice ModellingDiscrete Choice Modelling
Post-trialPost-trialDiscrete Choice ModellingDiscrete Choice Modelling
Sample Population N=30 each of:
Light Slice users Super Light Slice users Cheddar Slice users Reduced Fat Cheddar Block users
Sample population: Females MHS, 20-65 years Mix of household types (mainly families with kids)
Pricing Methodology 15 shelves - pre/post presented to each of 30 people in
4 user groups Light Slices Super Light Slices Cheddar Slices Light Cheddar Block
In each shelf range of prices consumers get to choose only one
Imitates shopping experience Idealised situations (100% awareness of Perfect) House-brands included
Introduction…CHEDDAR CHEESE SLICES
PERFECT
CHESDALE MAINLAND
FIRST CHOICE PAMS
$2.29
$2.29 $2.29
$1.99 $1.99
CHEDDAR CHEESE SLICESPrice Scenario 1
Please tick yourfirst preference only
PERFECT
CHESDALE MAINLAND
FIRST CHOICE PAMS
V W
X Y Z
$2.59
$1.99 $2.59
$1.99 $1.99
CHEDDAR CHEESE SLICESPrice Scenario 2
Please tick yourfirst preference only
PERFECT
CHESDALE MAINLAND
FIRST CHOICE PAMS
V W
X Y Z
$1.99
$2.59 $2.59
$1.99 $1.99
CHEDDAR CHEESE SLICESPrice Scenario 3
Please tick yourfirst preference only
PERFECT
CHESDALE MAINLAND
FIRST CHOICE PAMS
V W
X Y Z
$1.99
$1.99 $1.99
$1.99 $1.99
CHEDDAR CHEESE SLICESPrice Scenario 4
Please tick yourfirst preference only
PERFECT
CHESDALE MAINLAND
FIRST CHOICE PAMS
V W
X Y Z
( 4 of the 15 scenarios)
Whoa there! - How did we get to this conclusion? 3 brands of interest – Mainland/Chesdale and Perfect
The other 2, Pams and First Choice area at fixed, lower prices, prices
Decided to go with 3 price (low $1.99/medium $2.29 /high $2.59) points/brand
Why?
Therefore we have 33 =27 possible combinations Decided to choose a sample of 15 to reduce respondent
fatigue and to ensure we could measure all 2 order interaction effects
eg: does a high price of Chesdale result in different pricing response for Perfect than if it were a low price
This phenomenon is quite common so needs to be taken into account
The design
Design A B C1 M M M2 L H H3 H H L4 L L L5 H L H6 M M L7 M H M8 L M M9 M M H
10 M L M11 H M M12 H L L13 L L H14 L H L15 H H H
Discuss:
The data - rawID PRE1 PRE2 PRE3 PRE4 PRE5 PRE6 PRE7 PRE8 PRE9 PRE10 PRE11 PRE12 PRE13 PRE14 PRE15 POST1 POST2 POST361 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 162 1 1 3 1 2 3 1 1 1 2 2 2 1 1 4 1 1 363 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 164 4 4 4 1 4 4 4 4 4 4 4 4 4 1 4 3 4 365 2 1 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 266 2 1 4 2 2 4 4 2 4 2 4 2 2 1 4 5 1 567 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 168 4 1 3 1 2 3 4 1 4 2 4 2 1 1 4 4 1 469 4 1 3 2 2 3 4 1 4 2 4 2 2 1 4 2 1 470 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 371 4 1 3 2 2 3 4 1 4 2 4 2 2 3 4 4 1 372 2 1 2 2 2 2 2 1 2 2 2 2 2 1 2 3 1 373 3 1 3 3 2 3 3 3 1 2 3 3 2 3 3 3 1 374 2 1 4 2 2 4 1 1 2 2 4 2 2 1 4 2 1 375 2 2 5 5 2 2 5 1 2 4 4 2 2 5 5 3 5 376 4 1 4 1 4 4 4 4 4 4 4 4 4 1 4 4 1 477 4 1 3 2 2 3 1 1 2 2 3 3 2 3 4 2 1 478 2 1 3 3 2 3 3 2 3 2 3 3 2 3 5 2 2 379 1 1 3 3 2 1 1 1 1 2 5 2 1 1 5 1 1 380 5 1 5 1 2 5 5 1 5 2 5 1 1 1 5 5 1 581 4 1 4 2 2 4 4 1 4 2 4 2 1 1 4 4 1 382 4 1 2 1 2 3 4 1 4 4 4 2 4 1 4 4 2 383 5 1 3 1 2 3 5 1 5 2 5 2 1 1 5 5 1 584 1 1 3 1 2 3 1 1 1 2 2 2 1 1 1 2 1 385 4 1 4 1 4 4 4 1 4 2 4 2 1 1 4 3 1 386 4 1 3 2 2 3 5 1 4 4 5 2 1 1 4 4 1 387 4 1 3 2 2 3 4 1 4 2 4 2 2 1 1 4 1 388 1 1 3 3 3 3 3 1 1 3 3 3 1 3 3 3 1 389 4 1 3 2 2 3 4 1 4 2 4 2 2 3 4 3 1 390 2 1 3 2 2 2 4 1 2 2 2 2 2 1 2 2 1 3
The data - how it’s needed for proc Phreg in SAS
POST OBS SET T FREQ CSD MLD PRF FC PAM PR_CSD PR_MLD PR_PRF PR_FC PR_PAM CSD_MLD CSD_PRF0 1 1 1 8 1 0 0 0 0 2.29 0 0 0 0 0 00 2 1 2 22 1 0 0 0 0 2.29 0 0 0 0 0 00 3 1 1 7 0 1 0 0 0 0 2.29 0 0 0 2.29 00 4 1 2 23 0 1 0 0 0 0 2.29 0 0 0 2.29 00 5 1 1 1 0 0 1 0 0 0 0 2.29 0 0 0 2.290 6 1 2 29 0 0 1 0 0 0 0 2.29 0 0 0 2.290 7 1 1 12 0 0 0 1 0 0 0 0 1.99 0 0 00 8 1 2 18 0 0 0 1 0 0 0 0 1.99 0 0 00 9 1 1 2 0 0 0 0 1 0 0 0 0 1.99 0 00 10 1 2 28 0 0 0 0 1 0 0 0 0 1.99 0 00 1 2 1 28 1 0 0 0 0 1.99 0 0 0 0 0 00 2 2 2 2 1 0 0 0 0 1.99 0 0 0 0 0 00 3 2 1 1 0 1 0 0 0 0 2.59 0 0 0 1.99 00 4 2 2 29 0 1 0 0 0 0 2.59 0 0 0 1.99 00 5 2 1 0 0 0 1 0 0 0 0 2.59 0 0 0 1.990 6 2 2 30 0 0 1 0 0 0 0 2.59 0 0 0 1.990 7 2 1 1 0 0 0 1 0 0 0 0 1.99 0 0 00 8 2 2 29 0 0 0 1 0 0 0 0 1.99 0 0 00 9 2 1 0 0 0 0 0 1 0 0 0 0 1.99 0 00 10 2 2 30 0 0 0 0 1 0 0 0 0 1.99 0 00 1 3 1 4 1 0 0 0 0 2.59 0 0 0 0 0 00 2 3 2 26 1 0 0 0 0 2.59 0 0 0 0 0 00 3 3 1 3 0 1 0 0 0 0 2.59 0 0 0 2.59 00 4 3 2 27 0 1 0 0 0 0 2.59 0 0 0 2.59 00 5 3 1 15 0 0 1 0 0 0 0 1.99 0 0 0 2.590 6 3 2 15 0 0 1 0 0 0 0 1.99 0 0 0 2.590 7 3 1 6 0 0 0 1 0 0 0 0 1.99 0 0 00 8 3 2 24 0 0 0 1 0 0 0 0 1.99 0 0 00 9 3 1 2 0 0 0 0 1 0 0 0 0 1.99 0 00 10 3 2 28 0 0 0 0 1 0 0 0 0 1.99 0 00 1 4 1 13 1 0 0 0 0 1.99 0 0 0 0 0 00 2 4 2 17 1 0 0 0 0 1.99 0 0 0 0 0 00 3 4 1 12 0 1 0 0 0 0 1.99 0 0 0 1.99 00 4 4 2 18 0 1 0 0 0 0 1.99 0 0 0 1.99 0
Some points Note that we have decided to mode/post data together Not how the data is agrregated now
Compare this to what we have: Preprice 1
Cumulative Cumulative
PRE1 Frequency Percent Frequency Percent
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
1 8 26.67 8 26.67
2 7 23.33 15 50.00
3 1 3.33 16 53.33
4 12 40.00 28 93.33
5 2 6.67 30 100.00
Preprice 2
Cumulative Cumulative
PRE2 Frequency Percent Frequency Percent
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
1 28 93.33 28 93.33
2 1 3.33 29 96.67
4 1 3.33 30 100.00
Preprice 3
Cumulative Cumulative
PRE3 Frequency Percent Frequency Percent
ƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒƒ
1 4 13.33 4 13.33
2 3 10.00 7 23.33
3 15 50.00 22 73.33
4 6 20.00 28 93.33
5 2 6.67 30 100.00
Some Points … The variable T denote 1= choice, 2 = no choice
The resulting ‘doubling up” of all rows The variable SET represents the appropriate scenario For each scenario there are 10 =5*2 rows
Variables like CSD_MLD represents Chesdale’s effect on Mainland and so is in the relevant rows for Mainland but is Chesdale’s price
Remind me to give you a Splus function called SAS.DCM.FORMAT that helps format the appropriate design matrix for this data
Some more codedata temp;
set hold.cslmodel;
PR_Mld2 = PR_Mld**2;
PR_Prf2 = PR_Prf**2;
PR_Anc2 = PR_Anc**2;
PR_FC2 = PR_FC**2;
PR_Pam2 = PR_Pam**2;
DMld = POST*Mld;
DPrf = POST*Prf;
DAnc = POST*Anc;
Dpam = POST*pam;
Dfc = POST*FC;
DPR_Mld = POST*PR_Mld;
DPR_Prf = POST*PR_Prf;
DPR_Anc = POST*PR_Anc;
DPR_Pam = POST*PR_Pam;
DPR_FC = POST*PR_FC;
.
.
.
DPam_Prf =POST*Pam_Prf; Note: coding up the pre/post effects
DPam_Anc =POST*Pam_Anc; and quadratic price effectsDPam_FC =POST*Pam_FC ;
run;
Analysing the dataSaving this data:
data hold.cslmodel;
set temp;
run;
Now we are ready to start finding the correct model:
** trial and error to obtain the ‘correct’ model
proc phreg data =hold.cslmodel outest =betas nosummary;
strata set;
model t*t(2) =
CsD Mld Prf FC Pam
PR_CsD PR_Mld PR_Prf PR_FC PR_pam
PR_CsD2 PR_Mld2 PR_FC2 PR_pam2
DCsD DMld DPrf Dpam Dfc
DPR_CsD DPR_Mld DPR_Prf DPR_FC DPR_Pam
DPR_CsD2 DPR_Mld2 DPR_Prf2 DPR_FC2 DPR_pam2
DCsD_Mld DCsD_Prf DCsD_FC DCsD_Pam
DMld_CsD DMld_Prf DMld_FC DMld_Pam
DPrf_CsD DPrf_Mld DPrf_FC DPrf_Pam
DFC_CsD DFC_Mld DFC_Prf DFC_Pam
DPam_CsD DPam_Mld DPam_Prf DPam_FC
/ties =breslow;
freq freq;
run;
Analysing the data… The final model:proc phreg data =hold.cslmodel outest =betas nosummary;
strata set;
model t*t(2) =
CsD Mld Prf FC Pam
PR_CsD PR_Mld PR_Prf PR_FC PR_pam
PR_CsD2 PR_Mld2 PR_FC2 PR_pam2
DPrf
DCsD_Prf
/ties =breslow;
freq freq;
run;
Analysing the data… Output:
Analysis of Maximum Likelihood Estimates
Parameter Standard Hazard
Variable DF Estimate Error Chi-Square Pr > ChiSq Ratio
CSD 1 62.03446 10.46407 35.1451 <.0001 8.734E26
MLD 1 53.51747 11.68024 20.9936 <.0001 1.747E23
PRF 1 12.41570 1.09299 129.0359 <.0001 246643.1
FC 1 1.15688 0.16214 50.9094 <.0001 3.180
PAM 0 0 . . . .
PR_CSD 1 -48.72340 9.27818 27.5772 <.0001 0.000
PR_MLD 1 -41.00351 10.42944 15.4568 <.0001 0.000
PR_PRF 1 -5.23230 0.49984 109.5801 <.0001 0.005
PR_FC 0 0 . . . .
PR_PAM 0 0 . . . .
PR_CSD2 1 9.65004 2.03784 22.4241 <.0001 15522.40
PR_MLD2 1 7.85671 2.30708 11.5972 0.0007 2583.017
PR_FC2 0 0 . . . .
PR_PAM2 0 0 . . . .
DPRF 1 2.78607 1.13648 6.0098 0.0142 16.217
DCSD_PRF 1 -0.88705 0.48077 3.4042 0.0650 0.412
Turning this into something meaningfull
Cheddar Cheese Slices
ChesdaleMainlandPerfect First ChoicePams2.29 2.29 1.99 1.99 1.99
Pre-Trial
CSD MLD PRF FC PAM PR_CSDPR_MLDPR_PRFPR_FC PR_PAM PR_CSD2PR_MLD2PR_FC2 PR_PAM2DPRF DCSD_PRF62.03 53.52 12.42 1.157 0 -48.7 -41 -5.2323 0 0 9.65004 7.8567 0 0 2.7861 -0.887
exT
2.897 2.272 7.414 3.18 1
Market Share
MainlandPerfect Anchor First ChoicePams
17.28 13.56 44.23 18.97 5.97
Post-TrialexT
2.897 2.272 15.77 3.18 1Market ShareMainlandPerfect Anchor11.53 9.05 62.78 12.66 3.98
Post Pre
Chesdale11.53 17.28
Mainland 9.05 13.56
Perfect 62.78 44.23
First Choice12.66 18.97Pams 3.98 5.97
Presenting the dataCheddar Cheese Slices
PriceFirst Choice & Pams Low ($1.99)
Chesdale
Mainland
Perfect
Medium ($2.29)
Medium ($2.29)
High ($2.59)
29
23
7
32
10
30
23
3
33
10
0 20 40 60 80 100
Chesdale
Mainland
Perfect
First Choice
Pams
Pre
Post
Presenting the dataSensitivity - Pre-Trial
(all others at $2.29)
020406080
100
1.99
2.09
2.19
2.29
2.39
2.49
2.59
Price
Sh
are Chesdale
Mainland
Perfect
Sensitivity-Post Trial(all others at $2.29)
0
20
40
60
80
1.99
2.09
2.19
2.29
2.39
2.49
2.59
Price
Sh
are Chesdale
Mainland
Perfect