Inference concerning equilibrium and random mating in autopolyploids. Methods are available to test for equilibrium and random mating at any even ploidy level (>2) in the presence of double reduction at biallelic loci. For autopolyploid populations in equilibrium, methods are available to estimate the degree of double reduction. We also provide functions to calculate genotype frequencies at equilibrium, or after one or several rounds of random mating, given rates of double reduction. For details of these methods, see Gerard (2021).
The main functions for inference are:
hwefit()
: Fit either
hwelike()
,rmlike()
, hweustat()
,
hwenodr()
, or hweboot()
across many loci.
Parallelization is supported through the future
package.
hwelike()
: Likelihood inference for equilibrium.
This function estimates the rate of double reduction given equilibrium,
and tests for at most small deviations from equilibrium.
rmlike()
: Likelihood inference for random mating in
polyploids. This function tests for random mating and estimates gametic
frequencies given random mating. This function does not assume a model
for meiosis.
hweustat()
: U-statistic approach for equilibrium and
double reduction. This function tests for equilibrium given double
reduction rates and estimates these rates given equilibrium.
hwenodr()
: Implements a likelihood ratio test that
tests for Hardy-Weinberg equilibrium in autopolyploids given no double
reduction.
hweboot()
: Implements a bootstrap approach to test
for equilibrium which is more appropriate for small samples and
uncertain genotypes.
Functions are provided for calculating genotype frequencies for individuals and gametes:
gsegmat()
: Produces the segregation probabilities
for gamete dosages given parental dosages and the double reduction
rate.
gsegmat_symb()
: Provides a symbolic representation
of the output of gsegmat()
.
zsegarray()
: Obtains offspring genotype
probabilities given parental probabilities, the ploidy of the species,
and the overdispersion parameter, for all possible parental
genotypes.
freqnext()
: Updates the genotype frequencies after
one generation of random mating.
hwefreq()
: Calculate genotype frequencies at
equilibrium.
The bounds on the double reduction rate under the complete equational
segregation model are provided by drbounds()
.
Functions for evaluating the uniformity of p-values are provided in
ts_bands()
and qqpvalue()
.
You can install the released version of hwep from CRAN with:
install.packages("hwep")
You can install the development version from GitHub with:
# install.packages("devtools")
::install_github("dcgerard/hwep") devtools
To cite hwep in publications use:
Gerard D (2021). “Double reduction estimation and equilibrium tests in natural autopolyploid populations.” bioRxiv. doi:10.1101/2021.09.24.461731.
A BibTeX entry for LaTeX users is
@Article{,
title = {Double reduction estimation and equilibrium tests in natural autopolyploid populations},
author = {David Gerard},
journal = {bioRxiv},
year = {2021},
doi = {10.1101/2021.09.24.461731} }
This material is based upon work supported by the National Science Foundation under Grant No. 2132247. The opinions, findings, and conclusions or recommendations expressed are those of the author and do not necessarily reflect the views of the National Science Foundation.
Please note that the hwep project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms.