Hello all, I’m thrilled to announce the next release of PopGen.jl v0.4.0 (although incorrectly versioned in the release, oops).
Internal tweaks
- removing CategoricalArrays in favor of PooledArrays
- cleaning up and adding more internal functions
- Structure/fastStructure file support
- lazy loading of VCF/BCF file readers to trim initial compilation time
- rewriting B/VCF importer
- releases now pushed to
release
branch (formerlymaster
) - default branch is now
dev
- starting writing actual tests for CI
New features
The big new feature is the inclusion of a relatedness/kinship estimators! You can now calculate pairwise relatedness for (diploid) samples in your PopData
using these estimators:
Relatedness is performed in parallel and performs bootstrapping and CI if specified. Progress bars added for convenience. We also provide an accompanying tutorial for the new relatedness functions.
To do:
- Wang 2002 relatedness estimator
- dyadML (Milligan 2003) estimator using
Turing.jl
- rewrite the estimators to be more performant (help appreciated!)
- pairwise FST and friends along with permutation tests for F-stats
- figure out precompilation (help appreciated) because the package takes way to long to load on first
using
call
Announcing PopGenSims.jl
To complement the PopGen.jl release, GeneticCrosses.jl has been rebranded PopGenSims.jl, as it exists to be a functionality add-on to PopGen.jl. As the name implies, it makes population genetics simulations. The docs for PopGenSims.jl have been integrated into the PopGen.jl docs.
Changes
-
cross()
method for samples from two differentPopData
now uses thePair
syntax
cross(PopData => "Parent1Name", PopData => "Parent2Name", n::Int, generation::String)
New features
- simulate samples within populations
- simulate offspring of specific siblingship (unrelated, halfsib, fullsib)
We’re very excited about this release and hope you check out the package and the docs. We’re always looking for an extra set of eyes to point out bugs, find inefficiencies, come up with new stuff, etc., so please reach out if you’re interested!