/mmtf-python

The python implementation of the MMTF API, decoder and encoder.

Primary LanguagePythonApache License 2.0Apache-2.0

Build Status Version License Changelog

The macromolecular transmission format (MMTF) is a binary encoding of biological structures.

This repository holds the Python 2 and 3 compatible API, encoding and decoding libraries.

The MMTF python API is available from pip:

pip install mmtf-python

Quick getting started.

  1. Get the data for a PDB structure and print the number of chains:
from mmtf import fetch
# Get the data for 4CUP
decoded_data = fetch("4CUP")
print("PDB Code: "+str(decoded_data.structure_id)+" has "+str(decoded_data.num_chains)+" chains")
  1. Show the charge information for the first group:
print("Group name: "+str(decoded_data.group_list[0]["groupName"])+" has the following atomic charges: "+",".join([str(x) for x in decoded_data.group_list[0]["formalChargeList"]]))
  1. Show how many bioassemblies it has:
print("PDB Code: "+str(decoded_data.structure_id)+" has "+str(len(decoded_data.bio_assembly))+" bioassemblies")