.. image:: https://img.shields.io/pypi/v/biotite.svg :target: https://pypi.python.org/pypi/biotite :alt: Biotite at PyPI .. image:: https://img.shields.io/pypi/pyversions/biotite.svg :alt: Python version .. image:: https://github.com/biotite-dev/biotite/actions/workflows/test_and_deploy.yml/badge.svg :target: https://github.com/biotite-dev/biotite/actions/workflows/test_and_deploy.yml :alt: Test status
.. image:: https://www.biotite-python.org/_static/assets/general/biotite_logo_m.png :alt: The Biotite Project
Biotite is your Swiss army knife for bioinformatics. Whether you want to identify homologous sequence regions in a protein family or you would like to find disulfide bonds in a protein structure: Biotite has the right tool for you. This package bundles popular tasks in computational molecular biology into a uniform Python library. It can handle a major part of the typical workflow for sequence and biomolecular structure data:
Biotite internally stores most of the data as NumPy ndarray
objects,
enabling
As a result the user can skip writing code for basic functionality (like file parsers) and can focus on what their code makes unique - from small analysis scripts to entire bioinformatics software packages.
If you use Biotite in a scientific publication, please cite:
| Kunzmann, P. & Hamacher, K. BMC Bioinformatics (2018) 19:346.
| <https://doi.org/10.1186/s12859-018-2367-z>
_
Biotite requires the following packages:
Some functions require some extra packages:
Biotite can be installed via Conda...
.. code-block:: console
$ conda install -c conda-forge biotite
... or pip
.. code-block:: console
$ pip install biotite
Here is a small example that downloads two protein sequences from the NCBI Entrez database and aligns them:
.. code-block:: python
import biotite.sequence.align as align import biotite.sequence.io.fasta as fasta import biotite.database.entrez as entrez
file_name = entrez.fetch_single_file( uids=["CAC34569", "ACL82594"], file_name="sequences.fasta", db_name="protein", ret_type="fasta" )
fasta_file = fasta.FastaFile.read(file_name) avidin_seq, streptavidin_seq = fasta.get_sequences(fasta_file).values()
matrix = align.SubstitutionMatrix.std_protein_matrix() alignments = align.align_optimal( avidin_seq, streptavidin_seq, matrix, gap_penalty=(-10, -1), terminal_penalty=False ) print(alignments[0])
.. code-block::
MVHATSPLLLLLLLSLALVAPGLSAR------KCSLTGKWDNDLGSNMTIGAVNSKGEFTGTYTTAV-TA -------------------DPSKESKAQAAVAEAGITGTWYNQLGSTFIVTA-NPDGSLTGTYESAVGNA
TSNEIKESPLHGTQNTINKRTQPTFGFTVNWKFS----ESTTVFTGQCFIDRNGKEV-LKTMWLLRSSVN ESRYVLTGRYDSTPATDGSGT--ALGWTVAWKNNYRNAHSATTWSGQYV---GGAEARINTQWLLTSGTT
DIGDDWKATRVGINIFTRLRTQKE--------------------- -AANAWKSTLVGHDTFTKVKPSAASIDAAKKAGVNNGNPLDAVQQ
More documentation, including a tutorial, an example gallery and the API
reference is available at <https://www.biotite-python.org/>
_.
Interested in improving Biotite?
Have a look at the
contribution guidelines <https://www.biotite-python.org/contribute.html>
.
Feel free to join our community chat on Discord <https://discord.gg/cUjDguF>
.