EggLib is a C++/Python library and program package for evolutionary genetics and genomics. Main features are sequence data management, sequence polymorphism analysis, coalescent simulations and Approximate Bayesian Computation. EggLib is a flexible Python module with a performant underlying C++ library (which can be used independently), and allows fast and intuitive development of Python programs and scripts. A number of pre-programmed applications of EggLib possibilities are available interactively. To get an idea of the possibilities offered by EggLib, see the Manual section.
Citation: De Mita S. and M. Siol. 2012. EggLib: processing, analysis and simulation tools for population genetics and genomics. BMC Genet. 13:27. Open access.
- November 20, 2013: The pre-compiled package of version 2.1.7 is available for Python 2.7 32 bits.
- November 7, 2013: Version 2.1.7 (source only, at the moment) is out to include minor changes. Warning: If you use non-standard genetic codes, you must update because there was an error preventing the code argument to be passed to underlying polymorphism analysis routines in egglib-py.
- April 22, 2013: Version 2.1.6 is out to match version 2.1.0 of Bio++. No other change has been made. Meanwhile, egglib 2.2.0 is still under development: the C++ library has been redesigned for improved performance, VCF and GFF3 support has been included population genomics analyses and we are now incorporating additional summary statistics.
- October 20, 2012: Release of version 2.1.5 incorporating small changes. Be careful if you have used or using the SM model in the ABC framework as the parameters were not named properly.
- September 4, 2012: Release of version 2.1.4 with several bug corrections. One of the bugs can be a trouble: when outgroup sequences were placed anywhere else but a the end of the alignment, some statistics (those computed by HaplotypeDiversity: Fst, Kst, Gst, Hst and Snn) were incorrect due to failing to consider the last sequences.
An underlying C++ library which might be used independently.
A flexible Python module bringing together the C++ library and additional high-level tools: Python module.
A script egglib providing a number of modular tools for processing and analyzing sequence data (and others). See Directly executable commands.
These pages describe the Python module and the C++ library. They are available as an independent downloadable archive from the download site. A pdf version of the general description of EggLib and reference manual of egglib-py is available here and a pdf version of the reference manual of the C++ library is available there.