## Sample size estimation

This forum is for posts that specifically focus on Ngene.

Moderators: Andrew Collins, Michiel Bliemer, johnr

### Sample size estimation

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.
CMA

Posts: 26
Joined: Mon Jun 14, 2021 3:42 pm

### Re: Sample size estimation

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
Michiel Bliemer

Posts: 1815
Joined: Tue Mar 31, 2009 4:13 pm

### Re: Sample size estimation

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\$`
CMA

Posts: 26
Joined: Mon Jun 14, 2021 3:42 pm

### Re: Sample size estimation

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
Michiel Bliemer

Posts: 1815
Joined: Tue Mar 31, 2009 4:13 pm