Hi there,
I am in the process of designing a DCE to assess the employment/incentive preferences of community health workers in a low-income country in South East Asia. If possible, it would be really helpful to hear feedback from an experienced analyst about our design. We have 5 attributes, 3 with two levels (supervision, training, employment) and 2 with four levels (incentive amount = 25,100,300,500 & recognition format = none, endorsement, award, report). At this stage, we have developed and pilot tested the DCE and used the following code to estimate priors in Nlogit:
NLOGIT
;lhs = choice, cset, altij
;choices = jobA, jobB, neither
;checkdata
;model:
U(jobA) = a + supervis*supervis + training*training + twntyfv*twntyfv + hndrd*hndrd + thrhnd*thrhnd + none*none + endrsmnt*endrsmnt + award*award + employme*employme /
U(jobB) = supervis*supervis + training*training + twntyfv*twntyfv + hndrd*hndrd + thrhnd*thrhnd + none*none + endrsmnt*endrsmnt + award*award + employme*employme
$
This gave the following results:
--------+--------------------------------------------------------------------
| Standard Prob. 95% Confidence
CHOICE| Coefficient Error z |z|>Z* Interval
--------+--------------------------------------------------------------------
A| .34430*** .06816 5.05 .0000 .21072 .47788
SUPERVIS| .14253*** .03766 3.78 .0002 .06872 .21634
TRAINING| .06574* .03731 1.76 .0781 -.00739 .13887
TWNTYFV| .12831 .11417 1.12 .2611 -.09546 .35208
HNDRD| -.16525 .12530 -1.32 .1872 -.41083 .08032
THRHND| .15401 .11974 1.29 .1983 -.08066 .38869
NONE| -.23933** .09448 -2.53 .0113 -.42451 -.05414
ENDRSMNT| .17883** .07767 2.30 .0213 .02660 .33105
AWARD| .07156 .09114 .79 .4323 -.10707 .25018
EMPLOYME| -.08183** .03926 -2.08 .0371 -.15877 -.00490
--------+--------------------------------------------------------------------
***, **, * ==> Significance at 1%, 5%, 10% level.
Using these results, I have written the following code for Ngene:
Design
;alts = jobA, jobB, neither
;rows = 24
;block = 2
;eff = (mnl,d)
;model:
U(jobA) = a + b1.effects[0.11865] * supervis [1, 2] + b2.effects[0.05653]* training [1,2] + b3[-.00554|-.02167|.23177] * incent [25,100,300,500] + b4[-.21712|.16010|.07468] * endrsmnt [1,2,3,4] + b5.effects[-0.06515] *employme [1,2] /
U(jobB) = a + b1*supervis + b2*training + b3*incent + b4* endrsmnt + b5*employme
$
It would be very appreciated to hear if we have any errors or there are improvements to be made.
Many thanks,
Tom
Seeking review of efficient design
Moderators: Andrew Collins, Michiel Bliemer, johnr
-
- Posts: 2055
- Joined: Tue Mar 31, 2009 4:13 pm
Re: Seeking review of efficient design
Hi Tom,
I am not sure what coding you have used in the Nlogit data, but I assume you have used effects coding.
Your Nlogit syntax is missing ASC "a" for jobB.
In Ngene, you need to use b3.effects and b4.effects to indicate effects coding.
I do not know how you have transferred parameter estimates from Nlogit to priors in Ngene, I would expect b1.effects[0.14253] but instead you have b1.effects[0.11865].
You need to include a prior for ASC "a".
You can use Bayesian priors (n,parameterestimate,stderror) and
;eff = (mnl,d,mean)
;bdraws = gauss(2) or ;bdraws = sobol(5000) or something.
Michiel
I am not sure what coding you have used in the Nlogit data, but I assume you have used effects coding.
Your Nlogit syntax is missing ASC "a" for jobB.
In Ngene, you need to use b3.effects and b4.effects to indicate effects coding.
I do not know how you have transferred parameter estimates from Nlogit to priors in Ngene, I would expect b1.effects[0.14253] but instead you have b1.effects[0.11865].
You need to include a prior for ASC "a".
You can use Bayesian priors (n,parameterestimate,stderror) and
;eff = (mnl,d,mean)
;bdraws = gauss(2) or ;bdraws = sobol(5000) or something.
Michiel
-
- Posts: 7
- Joined: Mon Mar 16, 2020 9:10 am
Re: Seeking review of efficient design
Hi Michiel,
Thanks for your helpful reply - I mistakenly posted past Nlogit results hence the confusion around the priors used.
Could I also please ask whether we should evaluate incentive as a continuous or categorical attribute in Nlogit? I note that the priors estimated don't vary much between the two options but my colleague thinks that analysing it categorically may be trying to estimate too many coeffecients from a relatively small sample.
Using Bayesian priors, I have developed the following syntax for Ngene (evaluating incentive categorically):
Design
;alts = jobA*, jobB*, neither
;rows = 24
;block = 2
;eff = (mnl,d,mean)
;bdraws = sobol(5000)
;model:
U(jobA) = a[3.22173] + b1.effects[n,.11865,.03431] * supervis [1, 2] + b2.effects[n,.05653,.03413]* training [1,2] + b3.effects[n,-.00554,.34191|n,-.02167,.34517|n,.23177,.34367] * incent [25,100,300,500] + b4.effects[n,-.21712,.09058|n,.16010,.07247|n,.07468,.08974] * endrsmnt [1,2,3,4] + b5.effects[n,-0.06515,.03558] *employme [1,2] /
U(jobB) = a + b1*supervis + b2*training + b3*incent + b4* endrsmnt + b5*employme
$
Many thanks again for any feedback.
Tom
Thanks for your helpful reply - I mistakenly posted past Nlogit results hence the confusion around the priors used.
Could I also please ask whether we should evaluate incentive as a continuous or categorical attribute in Nlogit? I note that the priors estimated don't vary much between the two options but my colleague thinks that analysing it categorically may be trying to estimate too many coeffecients from a relatively small sample.
Using Bayesian priors, I have developed the following syntax for Ngene (evaluating incentive categorically):
Design
;alts = jobA*, jobB*, neither
;rows = 24
;block = 2
;eff = (mnl,d,mean)
;bdraws = sobol(5000)
;model:
U(jobA) = a[3.22173] + b1.effects[n,.11865,.03431] * supervis [1, 2] + b2.effects[n,.05653,.03413]* training [1,2] + b3.effects[n,-.00554,.34191|n,-.02167,.34517|n,.23177,.34367] * incent [25,100,300,500] + b4.effects[n,-.21712,.09058|n,.16010,.07247|n,.07468,.08974] * endrsmnt [1,2,3,4] + b5.effects[n,-0.06515,.03558] *employme [1,2] /
U(jobB) = a + b1*supervis + b2*training + b3*incent + b4* endrsmnt + b5*employme
$
Many thanks again for any feedback.
Tom
-
- Posts: 2055
- Joined: Tue Mar 31, 2009 4:13 pm
Re: Seeking review of efficient design
Quantitative attributes I would generally assume to be continuous and estimate a single parameter. You can always apply a continuous transformation to your variable in model estimation, e.g. b*log(incentive) or b*incentive^2.
You mixed up Bayesian priors and random parameters. [n,.11865,.03431] is a random parameter, while [(n,.11865,.03431)] is a Bayesian prior. So please add round brackets around all your priors.
Michiel
You mixed up Bayesian priors and random parameters. [n,.11865,.03431] is a random parameter, while [(n,.11865,.03431)] is a Bayesian prior. So please add round brackets around all your priors.
Michiel