A comprehensive library for computational molecular biology
Project description
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:
Searching and fetching data from biological databases
Reading and writing popular sequence/structure file formats
Analyzing and editing sequence/structure data
Visualizing sequence/structure data
Interfacing external applications for further analysis
Biotite internally stores most of the data as NumPy ndarray objects, enabling
fast C-accelerated analysis,
intuitive usability through NumPy-like indexing syntax,
extensibility through direct access of the internal NumPy arrays.
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:
Installation
Biotite requires the following packages:
numpy
requests
msgpack
networkx
Some functions require some extra packages:
mdtraj - Required for trajetory file I/O operations.
matplotlib - Required for plotting purposes.
Biotite can be installed via Conda…
$ conda install -c conda-forge biotite
… or pip
$ pip install biotite
Usage
Here is a small example that downloads two protein sequences from the NCBI Entrez database and aligns them:
import biotite.sequence.align as align
import biotite.sequence.io.fasta as fasta
import biotite.database.entrez as entrez
# Download FASTA file for the sequences of avidin and streptavidin
file_name = entrez.fetch_single_file(
uids=["CAC34569", "ACL82594"], file_name="sequences.fasta",
db_name="protein", ret_type="fasta"
)
# Parse the downloaded FASTA file
# and create 'ProteinSequence' objects from it
fasta_file = fasta.FastaFile.read(file_name)
avidin_seq, streptavidin_seq = fasta.get_sequences(fasta_file).values()
# Align sequences using the BLOSUM62 matrix with affine gap penalty
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])
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/.
Contribution
Interested in improving Biotite? Have a look at the contribution guidelines. Feel free to join or community chat on Discord.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for biotite-0.37.0-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d3e5f825ead42823ea023be55dfabc78f55bbb1f92d7e2597cb271dd29fe0a94 |
|
MD5 | 5badfb84ff8934b765b87daedd4ebede |
|
BLAKE2b-256 | c8a2e6082fe93ba97178c1dbf05c7cfca65db50875d8b2949b1d6672648aeea0 |
Hashes for biotite-0.37.0-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7e12168647f74c3b3c3e19a6c90f25402d631e6f32f5af168d8c0d8f86f403d5 |
|
MD5 | 12284c06176ea899615692ebf90ad66a |
|
BLAKE2b-256 | d74bb8f3371771b4b629234622ce3392ae9deb7a69d8e1f8f5ec58b2f8a59e97 |
Hashes for biotite-0.37.0-cp311-cp311-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 47eb67f12b7dd45d7153474874ead826f05d9aa6899c57e0b38fe4aff6f3ea99 |
|
MD5 | 628bbab7be17588513b1fc18d642a470 |
|
BLAKE2b-256 | d00fea7930a7050b1a73031bdece9ceb1f76e86fed8cebea69e6d4f1814aec3f |
Hashes for biotite-0.37.0-cp311-cp311-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e346b2760333f3a2dfba58337d669a2656f60e63ce17f24facb4111632edaff8 |
|
MD5 | a19edf54273c7f60d7bdfeb6233a01f8 |
|
BLAKE2b-256 | 46ddae47108eeddce2a46248a1efc8aed01ee133ab89809d5b2cda64a0510eb6 |
Hashes for biotite-0.37.0-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ed1dcba0754670785daa04db2d648ecfdfd9e2d77e7c5bdf66eb60a53b3d0c77 |
|
MD5 | 6a270cc87a514abd42e10598b00e30ed |
|
BLAKE2b-256 | a0813b2b4c0213f678b72f3ae454ff2e4282634a464cf97e58635a5b72aa248a |
Hashes for biotite-0.37.0-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | fcb2ae84e9b32c4b62fd0cc374ad67b4266a27e20c3e3a9e189aa7815b9cea5d |
|
MD5 | 610adaaf4841380da5b0a4fad15c2b18 |
|
BLAKE2b-256 | ee8ddc20497f37a9a9e00524b44908b28f1d3019779907cf704cc36392c61556 |
Hashes for biotite-0.37.0-cp310-cp310-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | bd852b4ef6031bd093ffc0835cd40356220790028d5ebc3e7966be599f8270d1 |
|
MD5 | a2f4fa2a92c23458d40d93d0f81f3dfc |
|
BLAKE2b-256 | ce61a322afbb1b430fac52a1cc7215763aa16f4428e20d56e541499d516aff51 |
Hashes for biotite-0.37.0-cp310-cp310-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 507940d87468a5663a4c323a1910c348c14e401f530af1ae1808ed857f500e98 |
|
MD5 | 8698ad4bbf92d1e8e64f2dd8481711b7 |
|
BLAKE2b-256 | 940f68890f6f95601a2a2767b0f57e36a2b4f1e9f678b0b2f0f63598c5331249 |
Hashes for biotite-0.37.0-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b2ee72b58257e1b0793d62fec117cc0a8462551e7b5ac79224acc3944162da2a |
|
MD5 | 0a177c8a31ab5ff6c1e7f8b4cb77eb75 |
|
BLAKE2b-256 | db19e27c88fd70502c63f4557300b7162ed344c0e7da2399d6251436e5f5c34c |
Hashes for biotite-0.37.0-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9db399c9cd8e1ed50c6e373f167759990601a3b6bc2207760b082665f4324e9a |
|
MD5 | bb0c266dc1d9142635c04a69c161782c |
|
BLAKE2b-256 | 722e4058ac3d6112cc8e6bf644806744b2164aa03e3208017dc2c075426903f0 |
Hashes for biotite-0.37.0-cp39-cp39-macosx_11_0_arm64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e0c3330bf936fa06c10e226b389112b0e8db2e09a60fd80ab98b1982b7e82c1d |
|
MD5 | c7cba288766c02624a095164d63d5f87 |
|
BLAKE2b-256 | 55f3aaadf6c7cc6be262d10dba20495b61fe9d5d4bf4d5ebc02f56cc2893a9fd |
Hashes for biotite-0.37.0-cp39-cp39-macosx_10_9_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f4730cc6920557810963b45565a1295e35e2b7dd611cd06ce91aea5d2c4ca48d |
|
MD5 | 087262176c96c5df74be6042745d7ccc |
|
BLAKE2b-256 | 5b8b6580fd96b7352330de0099a16a01be52e36a3093a57d465eb5164b4224b4 |