Page 1 of 1

Message Framing in Choice Experiments

PostPosted: Wed Sep 23, 2020 6:49 pm
by FWW
Dear All

Does anyone have experience in applying message frames in choice experiments?

I am carrying out a choice experiment with a d-efficient design. I will be evaluating the acceptance of different suboptimalities of food products. In each choice task the consumer will have the possibility to chose between a product as it can be found in the supermarket (alt:ganz) and the same product with a suboptimality (alt: kaputt).

Apart from that I want to figure out under which incentives it is more likely that the participants will accept a food product with a suboptimality. Which is why I will be applying message frames. I will divide my sample into three groups (two treatment and one control group). Before entering the the choice task session they will be randomly assigned to one group and read a corresponding message (no frame, gain frame and normative frame).

I am about to start my pre-test, but I am not sure if and how I should account for the different treatment groups when estimating the parameters. Ideally, in the end I would like to draw conclusions about which treatment group is more likely to accept what type of suboptimality of which product. Below you can find my design. I would be very grateful for you comments.

Thank you in advance
Best regards
Eli

;alts = ganz, kaputt
;rows = 36
;eff = (mnl,d)

;block=6

;cond:
if(kaputt.produkt = [1], kaputt.mangel <> 5),
if(kaputt.produkt = [3], kaputt.mangel <> 5),
if(kaputt.produkt = [4], kaputt.mangel <> 2),
if(kaputt.produkt = [4], kaputt.mangel <> 3),
if(kaputt.produkt = [5], kaputt.mangel <> 5),
if(kaputt.produkt = [6], kaputt.mangel <> 2),
if(kaputt.produkt = [6], kaputt.mangel <> 3),
if(kaputt.produkt = [6], kaputt.mangel <> 5),
if(kaputt.produkt = [7], kaputt.mangel <> 5),
if(kaputt.produkt = [8], kaputt.mangel <> 2),
if(kaputt.produkt = [8], kaputt.mangel <> 3),
if(kaputt.produkt = [8], kaputt.mangel <> 5),
if(kaputt.mhd > 1 ,kaputt.mangel = 1),
if(kaputt.mhd < 1 ,kaputt.mangel <> 1)

;model:
U(ganz) = 0


/
U(kaputt) = b_prod.d[0|0|0|0|0|0] * produkt[1,3,4,5,6,7,8] +
b_mangel.d[-0.01|-0.01|-0.01] * mangel[1,2,3,5] +
b_mhd[-0.0000001] * mhd[0,0.001,0.01,25,50] +
b_p[0.0000001] * preis[0,10,20,30,40]

$

Re: Message Framing in Choice Experiments

PostPosted: Thu Sep 24, 2020 12:38 pm
by Michiel Bliemer
I am not sure what a "message frame" is, do you mean a framing of the context using text above the choice task, also referred to as a scenario?
If so, you can use scenario variables in your utility function in order to determine whether the scenario is significantly influencing choice.

But maybe I do not understand correctly what you mean?

Michiel

Re: Message Framing in Choice Experiments

PostPosted: Fri Oct 02, 2020 6:01 pm
by FWW
Dear Professor Bliemer

Thank you very much for your reply. Yes, exactly, I am referring to using text before the choice tasks. But in my case, there is a slight difference to the situation you have described.
A participant should be shown only one (out of three) scenario, also it will be displayed only before entering the choice task section, not above every choice task. For example, a participant will be informed that by buying suboptimal food products he/ she can contribute to the reduction of food waste and therefore do something which is socially desirable and good for the environment.

I had tried using scenario variables and included them in every single choice task by framing an attribute (product information) according to the scenario. But as it is highly likely that a participant who had been presented with a normative scenario would make a biased choice in the following task(s), I have refrained from carrying on with this option.

Maybe in this case the only way would be to use the scenarios as explanators?
Best,
Eli

Re: Message Framing in Choice Experiments

PostPosted: Tue Oct 06, 2020 11:34 am
by Michiel Bliemer
You can add the scenario variable as a main effect in kaputt and/or as an interaction effect with one or more attributes.

For example:

Code: Select all
U(kaputt) = b_prod.d[0|0|0|0|0|0]             * produkt[1,3,4,5,6,7,8]
          + b_mangel.dummy[-0.01|-0.01|-0.01] * mangel[1,2,3,5]
          + b_mhd[-0.0000001]                 * mhd[0,0.001,0.01,25,50]
          + b_p[0.0000001]                    * preis[0,10,20,30,40]
          + b_sce.dummy[0|0]                  * scenario[1,2,3]
          + i_mangel_sce11                    * mangel.dummy[1] * scenario.dummy[1]
          + i_mangel_sce21                    * mangel.dummy[2] * scenario.dummy[1]
          + i_mangel_sce31                    * mangel.dummy[3] * scenario.dummy[1]
          + i_mangel_sce12                    * mangel.dummy[1] * scenario.dummy[2]
          + i_mangel_sce22                    * mangel.dummy[2] * scenario.dummy[2]
          + i_mangel_sce32                    * mangel.dummy[3] * scenario.dummy[2]
          + i_mhd_sce1                        * mhd * scenario.dummy[1]
          + i_mhd_sce2                        * mhd * scenario.dummy[2]


Suppose that you have 3 scenarios as in the syntax above. Then you generate a design with 36 rows, including the scenario variable, and instead of blocking the design according to a blocking column, you use the scenario variable to block the design such that you have a set of 12 choice tasks with scenario 1, 12 choice tasks with scenario 2, and 12 choice tasks with scenario 3. You can then give separate scenarios to each respondent, but when you estimate your model, you pool all the data such that you can estimate interactions with the scenario variable.

Michiel