Page 1 of 1

Sample size estimation

PostPosted: Thu Jul 18, 2024 8:24 pm
by CMA
I am planning a preference survey using the code.
I have not done a pilot study and we know the order of preference of all but b6 (the lower the number, the greater the preference).
The minimum number of rows is 15, so I plan to double it to 30 questions.
In this case, what is the required sample size?
S estimate is over 10,000, so I need at least 10,000?
Code: Select all
Design
;alts = alt1*, alt2*
;rows = 30
;eff = (mnl, d)
;alg = mfederov(stop=total(1000000 iterations))
;model:
U(alt1) = b1.dummy[-0.01]       * A[1,0]
        + b2.dummy[-0.01|-0.02] * B[1,2,0]
        + b3.dummy[-0.01|-0.02] * C[1,2,0]
        + b4.dummy[-0.01|-0.02] * D[1,2,0]
        + b5.dummy[-0.01]       * E[1,0]
        + b6.dummy[0|0|0]       * F[1,2,3,0]
        /
U(alt2) = b1                * A
        + b2                * B
        + b3                * C
        + b4                * D
        + b5                * E
        + b6                * F
$
Regards.

Re: Sample size estimation

PostPosted: Fri Jul 19, 2024 9:01 am
by Michiel Bliemer
To compute sample size estimates you will need reliable prior values, if you set near-zero values then your sample size estimates are meaningless since you are dividing by near-zero and hence the sample size estimates will become very large (since you cannot estimate an effect if it does not effect choice). So you need to ignore the S-estimate of 10,000. Without conducting a pilot study it will be difficult to 'guess' the parameter values and obtain meaningful sample size estimates.

Michiel

Re: Sample size estimation

PostPosted: Fri Jul 19, 2024 11:16 am
by CMA
Thank you for reply.
I learned about setting the sample size.
I would like to ask about your experience, what is the minimum sample size required for a code experiment plan?
Code: Select all
Design
;alts = alt1*, alt2*
;rows = 36
;eff = (mnl, d)
;alg = mfederov(stop=total(1000000 iterations))
;block = 2
;model:
U(alt1) = b1.dummy[-0.01]       * A[1,0]
        + b2.dummy[-0.01|-0.02] * B[1,2,0]
        + b3.dummy[-0.01|-0.02] * C[1,2,0]
        + b4.dummy[-0.01|-0.02] * D[1,2,0]
        + b5.dummy[-0.01]       * E[1,0]
        + b6.dummy[0|0|0]       * F[1,2,3,0]
        /
U(alt2) = b1                * A
        + b2                * B
        + b3                * C
        + b4                * D
        + b5                * E
        + b6                * F
$

Re: Sample size estimation

PostPosted: Tue Jul 23, 2024 7:56 am
by Michiel Bliemer
You will be able to estimate the model with a very small number of respondents, e.g. 5, but parameter estimates will only become statistically significant with more respondents. For attributes that have a strong influence on choice, e.g. price, their parameters usually become statistically significant with less than 100 respondents, whereas attributes that are less important in making a choice may need thousands of respondents to become statistically significant. So it really depends on the attributes that you consider and how strongly you believe they influence choice. Priors indicate such importance, but without reliable priors it is impossible for me to say how important each attribute is in decision-making.

Michiel