Kpop: A Python package for population genetics analysis. (December 2017) - Mendes, F.M.; Gontijo, C.C.
Abstract: Kpop is an open source Python package that detects population structure from biallelic data. It implements its own maximum-likelihood routine to estimate admixture coefficients and provides interfaces to run analysis from Structure[1], ADMIXTURE[2] and Plink. Kpop also simulates population dynamics, including a few different models for hybridization and genetic drift. This unified framework makes it convenient to assess how different histories of hybridization and isolation can produce certain patterns of population structure. Kpop integrates Scikit-Learn[3], and Tensorflow[4] packages that provide state-of-the-art implementations of machine learning (ML) algorithms in Python. While some techniques are widely used by the forensic genetics community (e.g., PCA, for dimensionality reduction), other techniques with similar objectives are not so common (e.g., t-distributed Stochastic Neighbor Embedding[5] ).