diseq {GeneticsBase} | R Documentation |
Estimate or compute confidence interval for single-marker disequilibrium.
diseq.ci(object, marker, R = 1000, conf = 0.95, correct = TRUE, na.rm = TRUE, ...) diseq.inner(object, marker, ...)
object |
geneSet object |
marker |
marker names |
R |
Number of bootstrap iterations to use when computing the confidence interval. Defaults to 1000. |
conf |
Confidence level to use when computing the confidence level for D-hat. Defaults to 0.95, should be in (0,1). |
correct |
See details. |
na.rm |
logical. Should missing values be removed? |
... |
optional additional parameters passed |
For a single-gene marker, diseq
computes the Hardy-Weinberg
(dis)equilibrium statistic D, D', r (the correlation coefficient), and
r^2 for each pair of allele values, as well as an overall
summary value for each measure across all alleles. print.diseq
displays the contents of a diseq
object. diseq.ci
computes a bootstrap confidence interval for this estimate.
For consistency, I have applied the standard definitions for D, D', and r from the Linkage Disequilibrium case, replacing all marker probabilities with the appropriate allele probabilities.
Thus, for each allele pair,
D = 1/2 * ( p(ij) + p(ji) ) - p(i)*p(j)
D' = D / Dmax
where, if D > 0:
Dmax = min(p(i)p(j), p(j)p(i)) = p(i)p(j)
or if D < 0:
Dmax = min( p(i) * (1 - p(j)), p(j)( 1 - (1-p(i) ) ) )
r = -D / sqrt( p(i)*(1-p(i)) * p(j)*(1-p(j)) )
where
When there are more than two alleles, the summary values for these statistics are obtained by computing a weighted average of the absolute value of each allele pair, where the weight is determined by the expected frequency. For example:
D.overall = sum |D(ij)| * p(ij)
Bootstrapping is used to generate confidence interval in order to avoid reliance on parametric assumptions, which will not hold for alleles with low frequencies (e.g. D' following a a Chi-square distribution).
See the function {HWE} from "genetics" package for testing Hardy-Weinberg Equilibrium, D=0.
Gregory R. Warnes warnes@bst.rochester.edu and Nitin Jain nitin.jain@pfizer.com