scikit-bio™ is an open-source, BSD-licensed, python package providing data structures, algorithms, and educational resources for bioinformatics.

Important project update (April 2022): scikit-bio is currently in maintenance mode. Due to limited developer bandwidth, we are focusing on keeping scikit-bio up-to-date with Python and Python scientific computing libraries. We plan to do this through two annual releases of scikit-bio. At this time, we have less availability for reviewing or adding new features. We realize that scikit-bio is an important tool for the bioinformatics community, and we hope to transition back to more active development in the future. If you're interested in helping by taking a leadership role in the project, please reach out.

Note: scikit-bio is no longer compatible with Python 2. scikit-bio is compatible with Python 3.8 and later.

scikit-bio is currently in beta and backward-incompatible interface changes can and will arise. To avoid these types of changes being a surprise to our users, our public APIs are decorated to make it clear to users when an API can be relied upon (stable) and when it may be subject to change (experimental). See the API stability docs for more details, including what we mean by stable and experimental in this context.


The recommended way to install scikit-bio is via the conda package manager available in Anaconda or miniconda.

To install the latest release of scikit-bio:

conda install -c conda-forge scikit-bio

Alternatively, you can install scikit-bio using pip:

pip install scikit-bio

You can verify your installation by running the scikit-bio unit tests:

python -m skbio.test

For users of Debian, skbio is in the Debian software distribution and may be installed using:

sudo apt-get install python3-skbio python-skbio-doc

Getting help

To get help with scikit-bio, you should use the skbio tag on StackOverflow (SO). Before posting a question, check out SO's guide on how to ask a question. The scikit-bio developers regularly monitor the skbio SO tag.

Projects using scikit-bio

Some of the projects that we know of that are using scikit-bio are:

If you're using scikit-bio in your own projects, feel free to issue a pull request to add them to this list.

scikit-bio development

If you're interested in getting involved in scikit-bio development, see

See the list of scikit-bio's contributors.


scikit-bio is available under the new BSD license. See LICENSE.txt for scikit-bio's license, and the licenses directory for the licenses of third-party software that is (either partially or entirely) distributed with scikit-bio.

The pre-history of scikit-bio

scikit-bio began from code derived from PyCogent and QIIME, and the contributors and/or copyright holders have agreed to make the code they wrote for PyCogent and/or QIIME available under the BSD license. The contributors to PyCogent and/or QIIME modules that have been ported to scikit-bio are: Rob Knight (@rob-knight), Gavin Huttley (@gavin-huttley), Daniel McDonald (@wasade), Micah Hamady, Antonio Gonzalez (@antgonza), Sandra Smit, Greg Caporaso (@gregcaporaso), Jai Ram Rideout (@jairideout), Cathy Lozupone (@clozupone), Mike Robeson (@mikerobeson), Marcin Cieslik, Peter Maxwell, Jeremy Widmann, Zongzhi Liu, Michael Dwan, Logan Knecht (@loganknecht), Andrew Cochran, Jose Carlos Clemente (@cleme), Damien Coy, Levi McCracken, Andrew Butterfield, Will Van Treuren (@wdwvt1), Justin Kuczynski (@justin212k), Jose Antonio Navas Molina (@josenavas), Matthew Wakefield (@genomematt) and Jens Reeder (@jensreeder).


scikit-bio's logo was created by Alina Prassas.