Chapter 2 Poppr: an R Package For Genetic Analysis of Populations With Clonal, Partially Clonal, and/or Sexual Reproduction
Zhian N. Kamvar, Javier F. Tabima, and Niklaus J. Grünwald
Journal: PeerJ
PO Box 614, Corte Madera, CA 94976, USA
Published 2014-03-04, Issue: 2:e281, DOI: 10.7717/peerj.281
2.1 Abstract
Many microbial, fungal, or oomcyete populations violate assumptions for population genetic analysis because these populations are clonal, admixed, partially clonal, and/or sexual. Furthermore, few tools exist that are specifically designed for analyzing data from clonal populations, making analysis difficult and haphazard. We developed the R package poppr providing unique tools for analysis of data from admixed, clonal, mixed, and/or sexual populations. Currently, poppr can be used for dominant/codominant and haploid/diploid genetic data. Data can be imported from several formats including GenAlEx formatted text files and can be analyzed on a user-defined hierarchy that includes unlimited levels of subpopulation structure and clone censoring. New functions include calculation of Bruvo’s distance for microsatellites, batch-analysis of the index of association with several indices of genotypic diversity, and graphing including dendrograms with bootstrap support and minimum spanning networks. While functions for genotypic diversity and clone censoring are specific for clonal populations, several functions found in poppr are also valuable to analysis of any populations. A manual with documentation and examples is provided. Poppr is open source and major releases are available on CRAN: http://cran.r-project.org/package=poppr. More supporting documentation and tutorials can be found under ‘resources’ at: http://grunwaldlab.cgrb.oregonstate.edu/.
2.2 Introduction
The Wright-Fisher model of populations is one of the oldest models utilized in population genetic theory. Populations in this model are characterized as having non-overlapping generations with a constant size free from any selective pressures (Hartl & Clark, 2007; Nielsen & Slatkin, 2013; Weir & Cockerham, 1996). Conceptually, these populations are represented as pools of alleles that are independently assorting where random mating is approximated by randomly sampling alleles with replacement from one generation to the next. Assumptions of this model, or related models, are implicitly assumed for common population genetic analysis tools. In clonal populations, however, alleles are not independently passed on from one generation to the next, and these assumptions are violated. Classical textbooks on population genetics do not provide much guidance on how to analyze clonal or mixed clonal and sexual populations. In reality, many populations are not strictly clonal or sexual, but can range from completely sexual to completely clonal and this is commonly observed for fungal, oomycete, or microbial populations (Anderson & Kohn, 1995; Milgroom, 1996). Currently, analysis of these populations is not straightforward as we lack the sophisticated tools and methods developed for model populations that are typically either haploid or diploid (Grünwald & Goss, 2011).
Inferring population structure with many commonly used model-based clustering approaches such as the program Structure (Pritchard et al., 2000) is inherently problematic for clonal populations. These approaches cannot be used as clonal populations violate basic assumptions of panmixia and Hardy-Weinberg equilibrium. Thus, model free methods such as those relying on k-means clustering, dendrograms including bootstrap support for clades, or minimum spanning networks are more appropriate (Cooke et al., 2012; Goss et al., 2009; Mascheretti et al., 2008). Furthermore, analysis of mixed or clonal populations traditionally relies on calculation of diversity of genotypes observed and analysis of clone-censored versus non-censored populations (Grünwald & Hoheisel, 2006; McDonald, 1997; Milgroom, 1996). Clone censoring involves reduction of any population sample to a single observation for each multilocus genotype (MLG) in a population thereby approximating panmictic populations and removing the effect of genetic linkage (Milgroom, 1996). Analysis of diversity, in turn, involves calculation of the number of genotypes observed (richness), diversity, and evenness (Grünwald et al., 2003). Typical measures of genotypic diversity are borrowed from ecology and use either the Shannon-Wiener or Stoddart and Taylor index (Grünwald et al., 2003; Shannon, 1948; Stoddart & Taylor, 1988).
A critical aspect of analyzing clonal or mixed populations is testing a null hypothesis of panmixia (Milgroom, 1996). Testing of this hypothesis for potentially clonal populations typically relies on assessment of linkage disequilibrium among loci (Milgroom, 1996). This is achieved via calculation of the index of association or related indices in combination with resampling of the data to obtain a null distribution for the expectation of random mating (Brown et al., 1980; Burt et al., 1996; Milgroom, 1996; Smith et al., 1993). These approaches have, for example, been applied to Pyrenophora teres (Peever & Milgroom, 1994) and Aphanomyces euteiches (Grünwald & Hoheisel, 2006) and are routinely used in the analyses of clonal populations although they are not easily calculated given available software including Multilocus, which is no longer supported, and LIAN, which only works for haploids (Agapow & Burt, 2001; Haubold & Hudson, 2000).
Hierarchical sampling adds another layer of complexity to analysis of clonal populations. With microbial populations, the geographic structure of each population is not entirely clear, and it is often important to sample temporally to see if clones persist over time (Grünwald & Hoheisel, 2006). A common approach when faced with multiple levels of sampling is to create a separate data set for each level or combination of levels and to analyze them separately. However, the number of data sets undergo a factorial increase with each hierarchical level, therefore increasing the chances of human error in data reformatting or analysis. Thus, tools are needed for analysis of population data across hierarchies or subsets of data.
Here, we introduce the R package poppr that is specifically designed for analysis of populations that are clonal, admixed and/or sexual. Poppr complements and builds on previously existing R packages including adegenet and vegan (Jombart, 2008; Jombart & Ahmed, 2011; Oksanen et al., 2013) while implementing tools novel to R significantly facilitating data import, population genetic analyses, and graphing of clonal or partially clonal populations. These tools include among others: analysis across hierarchies of populations, subsetting of populations, clone-censoring, Bruvo’s genetic distance Bruvo et al. (2004), the index of association and related statistics (Brown et al., 1980; Smith et al., 1993), and bootstrap support for trees based on Bruvo’s distance. By providing a centralized suite of tools appropriate for many data types, this package represents a novel and useful resource specifically tailored for analysis of clonal populations.
2.3 Materials and Methods
2.3.1 Data import
Poppr allows import of data in several formats for dominant/codominant, haploid/diploid and geographic data. The R package adegenet, that defines the genind
data structure that poppr utilizes, allows support for importing data natively from Structure, Genetix, Genepop, and Fstat. While these formats are very common and widely supported, these do not allow for import of geographic and/or regional data. Furthermore, adegenet will only handle diploids with this format, though manual import is possible. To aid in importing data, poppr has newly added the function read.genalex()
, to read data from GenAlEx formatted text files into the genind
data object of the package adegenet (Jombart, 2008; Jombart & Ahmed, 2011; Peakall & Smouse, 2006). GenAlEx is a popular add-in for Microsoft Excel that can handle data including codominant/dominant and haploid/diploid markers as well as geographic and regional data. This function further facilitates the import of haploid, geographic, and regional data.
Transferring data to new formats and manipulating data by hand, such as collapsing data into clones or subsetting data into different hierarchical levels, is tedious, creates redundancy, and can result in lost or misrepresented data. Poppr includes tools to automate such repetitive tasks. Many currently available data formats and software implementations allow analysis of only one or two levels of a population hierarchy. With poppr the user can import a single data set with an unlimited number of hierarchical levels. This is achieved by having the user combine the levels using a common delimiter (e.g. “Year_Country_City”). These combined levels are then used as the defining population factor in the input file and can easily be manipulated within R.
2.3.2 Data analysis
Once data is imported into R, the user can dynamically access and manipulate the population hierarchy with the function splitcombine()
, subset the data set by population with popsub()
, and check for cloned multilocus genotypes using mlg()
. For data sets that include clones, the poppr function clonecorrect()
will censor exact clones with respect to any level of a population hierarchy by creating a new data set that includes only unique multilocus genotypes (MLGs) per population. A full list of functions available in poppr is provided in table 2.1.
Function | Description |
---|---|
Import/Export | |
getfile |
Provides a quick GUI to grab files for import |
read.genalex |
Read GenAlEx formatted csv files to a genind object |
genind2genalex |
Converts genind objects to GenAlEx formatted csv files |
Manipulation | |
missingno |
Handles missing data |
clonecorrect |
Clone censors at a specified population hierarchy |
informloci |
Detects and removes phylogenetically uninformative loci. |
popsub |
Subsets genind objects by population |
shufflepop |
Shuffles genotypes at each locus using four different shuffling algorithms (details in table 2.3) |
splitcombine |
Manipulates population hierarchy |
Analysis | |
bruvo.boot |
Produces dendrograms with bootstrap support based on Bruvo’s distance |
bruvo.dist |
Calculates Bruvo’s distance |
diss.dist |
Calculates the percent allelic dissimilarity |
ia |
Calculates the index of association |
mlg |
Calculates the number of multilocus genotypes |
mlg.crosspop |
Finds all multilocus genotypes that cross populations |
mlg.table |
Returns a table of populations by multilocus genotypes |
mlg.vector |
Returns a vector of a numeric multilocus genotype assignment for each individual |
poppr |
Returns a diversity table by population |
poppr.all |
Returns a diversity table by population for all compatible files specified |
Visualization | |
greycurve |
Helper to determine the appropriate parameters for adjusting the grey level for msn functions |
bruvo.msn |
Produces minimum spanning networks based off Bruvo’s distance colored by population |
poppr.msn |
Produces a minimum spanning network for any pairwise distance matrix related to the data |
Typical analyses in poppr start with summary statistics for diversity, rarefaction, evenness, MLG counts, and calculation of distance measures such as Bruvo’s distance, providing a suitable stepwise mutation model appropriate for microsatellite markers (Bruvo et al., 2004). Poppr will define MLGs in your data set, show where they cross populations, and can produce graphs and tables of MLGs by population that can be used for further analysis with the R package vegan Oksanen et al. (2013). Many of the diversity indices calculated by the vegan function diversity()
are useful in analyzing the diversity of partially clonal populations. For this reason, poppr features a quick summary table (Table ??) that incorporates these indices along with the index of association, \(I_A\) (Brown et al., 1980; Smith et al., 1993), and its standardized form, \(\bar{r}_d\), which accounts for the number of loci sampled (Agapow & Burt, 2001). Both measures of association can detect signatures of multilocus linkage and values significantly departing from the null model of no linkage among markers are detected via permutation analysis utilizing one of four algorithms described in table 2.3 (Agapow & Burt, 2001). The user can specify the number of samples taken from the observed data set to obtain the null distribution expected for a randomly mating population. Detailed examples of these analyses can be found in the poppr manual.
Pop | N | MLG | eMLG | SE | H | G | Hexp | E.5 | Ia | p.Ia | rbarD | p.rD |
---|---|---|---|---|---|---|---|---|---|---|---|---|
Athena | 97 | 70 | 65.981 | 1.246 | 4.063 | 42.193 | 0.986 | 0.721 | 2.906 | 0.001 | 0.072 | 0.001 |
Mt. Vernon | 90 | 50 | 50.000 | 0.000 | 3.668 | 28.723 | 0.976 | 0.726 | 13.302 | 0.001 | 0.282 | 0.001 |
Total | 187 | 119 | 68.453 | 2.989 | 4.558 | 68.972 | 0.991 | 0.720 | 14.371 | 0.001 | 0.271 | 0.001 |
Method | Name | Units Sampled | With Replacement | Weight |
---|---|---|---|---|
1 | permutation |
alleles | No | - |
2 | parametric bootstrap |
alleles | Yes | allele frequencies |
3 | non-parametric bootstrap |
alleles | Yes | equal |
4 | multilocus |
genotypes | No | - |
2.3.3 Visualizations
Poppr generates bar charts of MLG counts found within each population of your data set (Fig. 2.1). Histograms with rug plots for \(I_A\) and \(\bar{r}_d\) allow visual assessment of the quality of the distribution derived from resampling to see if a higher number of replications are necessary (Fig. 2.2). Poppr automatically produces custom minimum spanning networks for Bruvo’s or other distances using Prim’s algorithm, as implemented in the package igraph Csardi & Nepusz (2006), with the functions bruvo.msn()
for Bruvo’s distance (Fig. 2.3) and poppr.msn()
for any distance matrix. The combination of data structures from adegenet and igraph allow graphing that is color coded by population with vertices grouped by MLG (Csardi & Nepusz, 2006; Jombart, 2008; Jombart & Ahmed, 2011). Poppr also includes visualization of dendrograms using UPGMA Schliep (2011) and Neighbor-Joining Paradis et al. (2004) algorithms with bootstrap support for Bruvo’s distance using the function bruvo.boot()
(Fig. 2.4). Neither graphing of minimum spanning networks or dendrograms with bootstrap support are currently possible for populations in any other R packages.
2.3.4 Performance
Most of the functions in Poppr were written and optimized for performance in R and are available for inspection and/or download at https://github.com/grunwaldlab/poppr. Algorithms of \(\geq O(n^2)\) complexity were written in the byte-compiled C language to optimize runtime performance.
For comparisons of \(I_A\) and Bruvo’s distance, we utilized the data set ‘nancycats’ (237 diploid individuals genotyped at nine microsatellite loci) from the adegenet package. Calculations were run independently 10 times and then averaged. Bruvo’s distance was calculated on a machine with OSX 10.8.4 and a 2.9 GHz intel processor. The \(I_A\) and \(\bar{r}_d\) calculations were performed on a machine with OSX 10.5.8 and a 2.4 GHz intel processor due to the inability of the software multilocus to work on any later version of OSX.
2.4 Citation of methods implemented in poppr
Several of the methods implemented in poppr are described elsewhere. Users should refer to the original publications for interpretations and citation. See table 2.4 for a full list of citations. As with any R package, users should always cite the R Core Team (R Core Team, 2013).
Method/Index | Citation | Function(s) in poppr |
---|---|---|
Expected MLG (rarefaction) | (Hurlbert, 1971), (Heck et al., 1975) (for std. err.) | poppr() |
\(H\) | (Shannon, 1948) | poppr() |
\(G\) | (Stoddart & Taylor, 1988) | poppr() |
\(H_{exp}\) | (Nei, 1978) | poppr() |
\(E_{5}\) | (Grünwald & Hoheisel, 2006; Ludwig & Reynolds, 1988; Pielou, 1975) | poppr() |
\(I_A\)/\(\bar{r}_d\) | (Brown et al., 1980; Smith et al., 1993) (\(I_A\)), (Agapow & Burt, 2001) (\(\bar{r}_d\)) | ia() |
poppr() |
||
Clone correction | (Grünwald & Hoheisel, 2006; Grünwald et al., 2003; Milgroom, 1996) | clonecorrect() |
poppr() |
||
Minimum Spanning Networks | (Csardi & Nepusz, 2006) | poppr.msn() |
bruvo.msn() |
||
Bruvo’s Distance | (Bruvo et al., 2004) | bruvo.dist() |
bruvo.msn() |
||
bruvo.boot() |
||
Bootstrapping | (Paradis et al., 2004) | bruvo.boot() |
Neighbor Joining | (Paradis et al., 2004) | bruvo.boot() |
UPGMA | (Schliep, 2011) | bruvo.boot() |
2.5 Results and Discussion
Poppr provides significant, convenient tools for analysis of clonal and partially clonal populations available in one environment on all major operating systems. The ability to analyze data for multiple populations across a user-defined hierarchy and clone-censoring provide novel functionality in R. Combined with R’s graphing abilities, publication-ready figures are thus obtained conveniently.
2.5.1 New functionalities
Haploids | Diploids | \(\bar{r}_d\) | All Platforms | Batch Analysis | |
---|---|---|---|---|---|
poppr | Yes | Yes | Yes | Yes | Yes |
LIAN | Yes | No | No | Yes | Yes |
multilocus | Yes | Yes | Yes | No | No |
Poppr implements several new functionalities. As of this writing, aside from poppr, there exist two programs that calculate \(I_A\): LIAN (Haubold & Hudson, 2000) and multilocus (Agapow & Burt, 2001). LIAN can calculate \(I_A\) for haploid data and is only available online or for *nix systems with a C compiler such as OSX and Linux (Haubold & Hudson, 2000). Multilocus implemented \(\bar{r}_d\), a novel correction for \(I_A\), but is no longer supported (Agapow & Burt, 2001). Multilocus will only calculate index values for one data set at a time and LIAN requires the user to structure the data set with populations in contiguous blocks to analyze multiple populations within a single file. Thus poppr provides significant improvements for calculation of linkage disequilibrium, and handles both haploid and diploid data, works on all major operating systems, and is capable of batch analysis of multiple files and multiple populations defined within a file including the possibility of clone correction and sub-setting. A comparison of the capabilities of these programs are summarized in Table 2.5.
To test significance for \(I_A\) and \(\bar{r}_d\), poppr offers four permutation algorithms. Each one will randomly shuffle data at each locus, effectively unlinking the loci. The algorithm previously utilized by mutlilocus is included. The multilocus-style algorithm shuffles genotypes, maintaining the associations between alleles at each locus (Agapow & Burt, 2001). More appropriately, alleles are expected to assort independently in panmictic populations. Poppr thus provides three new algorithms for permutation that allow for independent allele assortment at each locus. The default algorithm permutes the alleles at each locus and the remaining two will randomly sample alleles from a multinomial distribution parametrically and non-parametrically (Weir & Cockerham, 1996). Details of these algorithms are presented in table 2.3. Because the index of association is calculated using a binary measure of dissimilarity, we have also made this available as a distance measure called diss.dist()
. This pairwise distance is based on the percent allelic differences.
Poppr also newly implements Bruvo’s genetic distance that utilizes a stepwise mutation model appropriate for microsatellite data (Bruvo et al., 2004). While this distance is implemented in the program GenoDive Meirmans & Van Tienderen (2004) and the R package polysat Clark & Jasieniuk (2011), there are a few caveats with these two implementations. GenoDive is closed-source, and only implemented in OSX. Both poppr and polysat are open-source and available on all platforms, but polysat, being optimized for polyploid individuals with ambiguous allelic dosage, is inappropriate for analyzing diploids. Polysat will collapse homozygous individuals into a single allele and attempt to infer the second allelic state in comparison with heterozygous individuals. Since haploid and diploid individuals show clear allelic dosage, this procedure creates a bias misrepresenting the true distance. Not only is poppr not subject to this bias, but it also newly introduces bootstrap support for this distance as shown in Figure 2.4.
2.5.2 Performance
\(I_A\) (seconds) | Bruvo’s distance (seconds) | |
---|---|---|
poppr | 13.4 | 0.3 |
polysat | - | 58.3 |
multilocus | 547.2 | - |
Poppr reduces the amount of intermediate files and repetitive tasks needed for basic population genetic analyses and implements computationally intensive functions, such as Bruvo’s distance and the index of association in C to improve performance. The polysat package calculation of Bruvo’s distance took 58.3 seconds on average whereas poppr’s calculation was over 190 times faster, averaging 0.3 seconds (Table 2.6). For calculation of \(I_A\) and \(\bar{r}_d\) with 100 permutations and Nei’s genotypic diversity (Nei, 1978), multilocus required around 9.12 minutes on average, as compared to 13.4 seconds with poppr.
2.6 Conclusions
The R package poppr provides new functions and tools specifically tailored for analysis of data from clonal or partially clonal populations. No software currently available provides this set of tools. Novel capabilities include analysis across multiple populations at multiple levels of hierarchies, clone-censoring, and subsetting. These in combination with R’s command line interface and scripting capabilities makes analyses of these populations more streamlined and tractable. By implementing computationally expensive algorithms such as Bruvo’s distance and \(I_A\) in C, analyses of multiple populations that would normally take hours to complete can now be finished in a matter of minutes. This allowed us to expand the utility of these measures to convenient new graphing abilities such as automatically creating dendrograms with bootstrap support for Bruvo’s distance and minimum spanning networks. While major releases of poppr are available on CRAN, we are continuing to develop this package to be able to efficiently handle genome-sized SNP data. Development versions are available on github at https://github.com/grunwaldlab/poppr.
2.7 Acknowledgements
The authors would like to thank Sydney Everhart and Corine Schoebel for invaluable alpha testing and Paul-Michael Agapow for providing the multilocus C++ source code for reference. We thank Sydney Everhart and Brian Knaus for comments that significantly improved this manuscript. Mention of trade names or commercial products in this manuscript are solely for the purpose of providing specific information and do not imply recommendation or endorsement.
References
Hartl, D. L., & Clark, A. G. (2007). Principles of population genetics. Sunderland, MA, USA: Sinauer Associates.
Nielsen, R., & Slatkin, M. (2013). An introduction to population genetics: Theory and applications. Sinauer Associates, Incorporated. Retrieved from http://books.google.com/books?id=Iy08kgEACAAJ
Weir, B. S., & Cockerham, C. (1996). Genetic data analysis II: Methods for discrete population genetic data.
Anderson, J. B., & Kohn, L. M. (1995). Clonality in soilborne, plant-pathogenic fungi. Annual Review of Phytopathology, 33(1), 369–391. https://doi.org/10.1146/annurev.py.33.090195.002101
Milgroom, M. G. (1996). Recombination and the multilocus structure of fungal populations. Annual Review of Phytopathology, 34(1), 457–477.
Grünwald, N. J., & Goss, E. M. (2011). Evolution and population genetics of exotic and re-emerging pathogens: Novel tools and approaches. Annual Review of Phytopathology, 49(1), 249–267. https://doi.org/10.1146/annurev-phyto-072910-095246
Pritchard, J. K., Stephens, M., & Donnelly, P. (2000). Inference of population structure using multilocus genotype data. Genetics, 155(2), 945–959.
Cooke, D. E. L., Cano, L. M., Raffaele, S., Bain, R. A., Cooke, L. R., Etherington, G. J., Deahl, K. L., Farrer, R. A., Gilroy, E. M., Goss, E. M., Grünwald, N. J., Hein, I., MacLean, D., McNicol, J. W., Randall, E., Oliva, R. F., Pel, M. A., Shaw, D. S., Squires, J. N., Taylor, M. C., Vleeshouwers, V. G. A. A., Birch, P. R. J., Lees, A. K., & Kamoun, S. (2012). Genome analyses of an aggressive and invasive lineage of the irish potato famine pathogen. PLoS Pathogens, 8(10), e1002940. https://doi.org/10.1371/journal.ppat.1002940
Goss, E. M., Larsen, M., Chastagner, G. A., Givens, D. R., & Grünwald, N. J. (2009). Population genetic analysis infers migration pathways of Phytophthora ramorum in US nurseries. PLoS Pathogens, 5(9), e1000583. https://doi.org/10.1371/journal.ppat.1000583
Mascheretti, S., Croucher, P. J. P., Vettraino, A., Prospero, S., & Garbelotto, M. (2008). Reconstruction of the Sudden Oak Death epidemic in California through microsatellite analysis of the pathogen Phytophthora ramorum. Molecular Ecology, 17(11), 2755–2768. https://doi.org/10.1111/j.1365-294x.2008.03773.x
Grünwald, N. J., & Hoheisel, G.-A. (2006). Hierarchical analysis of diversity, selfing, and genetic differentiation in populations of the oomycete Aphanomyces euteiches. Phytopathology, 96(10), 1134–1141.
McDonald, B. A. (1997). The population genetics of fungi: tools and techniques. Phytopathology, 87(4), 448–453.
Grünwald, N. J., Goodwin, S. B., Milgroom, M. G., & Fry, W. E. (2003). Analysis of genotypic diversity data for populations of microorganisms. Phytopathology, 93(6), 738–746. https://doi.org/10.1094/phyto.2003.93.6.738
Shannon, C. E. (1948). A mathematical theory of communication. ACM SIGMOBILE Mobile Computing and Communications Review, 5(1), 3–55.
Stoddart, J. A., & Taylor, J. F. (1988). Genotypic diversity: Estimation and prediction in samples. Genetics, 118(4), 705–11.
Brown, A., Feldman, M., & Nevo, E. (1980). Multilocus structure of natural populations of Hordeum spontaneum. Genetics, 96(2), 523–536. Retrieved from http://www.genetics.org/content/96/2/523.abstract
Burt, A., Carter, D. A., Koenig, G. L., White, T. J., & Taylor, J. W. (1996). Molecular markers reveal cryptic sex in the human pathogen Coccidioides immitis. Proceedings of the National Academy of Sciences, 93(2), 770–773.
Smith, J. M., Smith, N. H., O’Rourke, M., & Spratt, B. G. (1993). How clonal are bacteria? Proceedings of the National Academy of Sciences, 90(10), 4384–4388. https://doi.org/10.1073/pnas.90.10.4384
Peever, T. L., & Milgroom, M. G. (1994). Genetic structure of Pyrenophora teres populations determined with random amplified polymorphic DNA markers. Canadian Journal of Botany, 72(7), 915–923.
Agapow, P.-M., & Burt, A. (2001). Indices of multilocus linkage disequilibrium. Molecular Ecology Notes, 1(1-2), 101–102. https://doi.org/10.1046/j.1471-8278.2000.00014.x
Haubold, B., & Hudson, R. R. (2000). LIAN 3.0: Detecting linkage disequilibrium in multilocus data. Bioinformatics, 16(9), 847–849. https://doi.org/10.1093/bioinformatics/16.9.847
Jombart, T. (2008). Adegenet: a R package for the multivariate analysis of genetic markers. Bioinformatics, 24(11), 1403–1405. https://doi.org/10.1093/bioinformatics/btn129
Jombart, T., & Ahmed, I. (2011). Adegenet 1.3-1: New tools for the analysis of genome-wide SNP data. Bioinformatics, 27(21), 3070–3071.
Oksanen, J., Blanchet, F. G., Kindt, R., Legendre, P., Minchin, P. R., O’Hara, R. B., Simpson, G. L., Solymos, P., Stevens, M. H. H., & Wagner, H. (2013). Vegan: Community ecology package. Retrieved from https://CRAN.R-project.org/package=vegan
Bruvo, R., Michiels, N. K., D’Souza, T. G., & Schulenburg, H. (2004). A simple method for the calculation of microsatellite genotype distances irrespective of ploidy level. Molecular Ecology, 13(7), 2101–2106.
Peakall, R., & Smouse, P. E. (2006). GenAlEx 6: Genetic analysis in excel. population genetic software for teaching and research. Molecular Ecology Notes, 6(1), 288–295.
Csardi, G., & Nepusz, T. (2006). The igraph software package for complex network research. InterJournal, Complex Systems, 1695. Retrieved from http://igraph.org
Schliep, K. (2011). Phangorn: phylogenetic analysis in R. Bioinformatics, 27(4), 592–593.
Paradis, E., Claude, J., & Strimmer, K. (2004). APE: Analyses of phylogenetics and evolution in R language. Bioinformatics, 20(2), 289–290. https://doi.org/10.1093/bioinformatics/btg412
Peng, B., & Amos, C. I. (2008). Forward-time simulations of non-random mating populations using simuPOP. Bioinformatics, 24(11), 1408–1409. https://doi.org/10.1093/bioinformatics/btn179
R Core Team. (2013). R: A Language and Environment for Statistical Computing. Vienna, Austria: R Foundation for Statistical Computing. Retrieved from http://www.R-project.org/
Hurlbert, S. H. (1971). The nonconcept of species diversity: A critique and alternative parameters. Ecology, 52(4), 577–586. https://doi.org/10.2307/1934145
Heck, K. L., van Belle, G., & Simberloff, D. (1975). Explicit calculation of the rarefaction diversity measurement and the determination of sufficient sample size. Ecology, 56(6), 1459–1461. https://doi.org/10.2307/1934716
Nei, M. (1978). Estimation of average heterozygosity and genetic distance from a small number of individuals. Genetics, 89(3), 583–590. Retrieved from http://www.genetics.org/content/89/3/583.abstract
Ludwig, J. A., & Reynolds, J. F. (1988). Statistical ecology: A primer in methods and computing (Vol. 1). John Wiley & Sons.
Pielou, E. (1975). Ecological diversity. New York: Wiley & Sons.
Meirmans, P. G., & Van Tienderen, P. H. (2004). GENOTYPE and GENODIVE: Two programs for the analysis of genetic diversity of asexual organisms. Molecular Ecology Notes, 4(4), 792–794. https://doi.org/10.1111/j.1471-8286.2004.00770.x
Clark, L., & Jasieniuk, M. (2011). Polysat: an R package for polyploid microsatellite analysis. Molecular Ecology Resources, 11(3), 562–566. https://doi.org/10.1111/j.1755-0998.2011.02985.x