Hardy-Weinberg equlibrium test for a multiallelic marker
Hardy-Weinberg equilibrium test
hwe(data, data.type="allele", yates.correct=FALSE, miss.val=0)
data |
A rectangular data containing the genotype, or an array of genotype counts |
data.type |
An option taking values "allele", "genotype", "count" if data is alleles, genotype or genotype count |
yates.correct |
A flag indicating if Yates' correction is used for Pearson chi-squared statistic |
miss.val |
A list of missing values |
This function obtains Hardy-Weinberg equilibrium test statistics. It can handle data coded as allele numbers (default), genotype identifiers (by setting data.type="genotype") and counts corresponding to individual genotypes (by setting data.type="count") which requires that genotype counts for all n(n+1) possible genotypes, with n being the number of alleles.
For highly polymorphic markers when asymptotic results do not hold, please resort to hwe.hardy.
The returned value is a list containing:
allele.freq |
Frequencies of alleles |
x2 |
Pearson chi-square |
p.x2 |
p value for chi-square |
lrt |
Log-likelihood ratio test statistic |
p.lrt |
p value for lrt |
df |
Degree(s) of freedom |
rho |
sqrt{chi-square/N} the contingency table coefficient |
Jing Hua Zhao
## Not run:
a <- c(3,2,2)
a.out <- hwe(a,data.type="genotype")
a.out
a.out <- hwe(a,data.type="count")
a.out
require(haplo.stats)
data(hla)
hla.DQR <- hwe(hla[,3:4])
summary(hla.DQR)
# multiple markers
s <- vector()
for(i in seq(3,8,2))
{
hwe_i <- hwe(hla[,i:(i+1)])
s <- rbind(s,hwe_i)
}
s
## End(Not run)Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.