You can use power analysis to work out answers depending on the specifics of your data. The things you need to consider are:
- The power of the test. This is the probability that the test will
fail to reject the null hypothesis even if in truth it is false
(Type II error). If the population is not in equilibrium, what is
the probability that the test will fail to detect this? This will largely depend on the costs of a Type II error. If the experiment is expensive in terms of time/money/animals used etc. you would want to make sure it will give a sold answer at the end.
- The significance level. 0.05 is commonly used. The probability that
the null hypothesis is rejected even though it is true (Type I
error). If the population is in equilibrium, what is the probability
that the test will erroneously say it is in disequilibrium.
- The degrees of freedom. The number of alleles.
- The effect size. This is how far away from equilibrium you expect
your samples to be. The largest effect size would be extinction of
one allele. However, if two alleles are in a ratio of 100:101 across
the full population, this is a small effect size.
For the Pearson's Chi-squared test we can use (in R)
library(pwr)
pwr.chisq.test(w = 0.3, N = 40, df = 4, sig.level = 0.05 )
A rough guide for effect size (w
) is 0.1, 0.3, and 0.5 for small, medium, and large effect sizes. There is more detail here. N
is the total number of data points, df
is the number of alleles. This function will give us a value for 1 minus the power of our test. A value of 0.9 means there is a 10% chance of failing to detect an effect that truly exists.
If we want to work out a suitable number of data points to collect we must decide what power we want. Say we decide that a 0.01 chance of doing the test, but failing to detect disequilibrium if it exists is acceptable.
pwr.chisq.test(w = 0.3, df = 4, sig.level = 0.05, power=0.99 )
tells us that 280 data points are needed.
Without estimates of effect size or a number of genotypes it is hard to give a straight answer to your question, but 5 per genotype seems very small.
If you have only two genotypes, you might choose to use the Fisher Exact Test in which case you can use power.fisher.test()
in the statmod
package. The definitions of effect size and degrees of freedom are slightly different but the idea is the same.