Skip to main content

Skeleton project created by Python Project Wizard (ppw).

Project description

DOI License PyPI Versions

ProCaliper

ProCaliper is an open-source Python library for functional and structural analysis, visualization, and annotation of proteomic data.

ProCaliper enables interfacing with annotation resources such as UniProt, PhosphoSitePlus, AlphaFold, or user-supplied experimental data for computing structural and electromchemical property information, construction and analysis of residue-residue distance networks, and functional site identification at the residue or protein level.

Installation

To install from PyPI:

pip install procaliper

extras

During installation, procaliper will also install openbabel-wheel. If you require specialized features of openbabel that are not available in this precompiled version, please run pip uninstall openbabel-wheel after procaliper is installed and provide your own version of the openbabel python library.

Optional feature dependencies can be installed as follows:

pip install procaliper[viz,pka]

The viz extra provides the ability to visualize protein structures in a graphical notebook environment.

The pka extra provides additional methods for computing disassociation constants (typically denoted $pK_a$). Note that installing this extra requires obtaining a DelPhi license. Furthermore, these additional methods require an older version of numpy (version 1.26.4) and python version between 3.9 and 3.11 to properly function. If the pka extra is not installed, procaliper will use propka for $pK_a$ calculation.

Basic Usage

A basic example is provided here. See the examples folder for further examples.

import procaliper as pc

# Read in or download protein structure
protein = pc.Protein.from_uniprot_id("A0A0B4J2F0") # create a protein object from UniProt metadata using a UniProt ID
# alternatively, you can read in a protein from a UniProt Table using `Protein.from_uniprot_row`

# Download & save protein structure from AlphaFold
protein.fetch_pdb(save_path="A0A0B4J2F0.pdb") 
# Alternatively, `protein.register_local_pdb(file)` can be used to specify a previously downloaded pdb file

# Compute structure features
sasa = protein.get_sasa() # compute site-level SASA values
charge = protein.get_charge() # compute site-level charges
titr = protein.get_titration() # compute site-level titration (pKa) data
# The results from the above calculations are autmatically stored in the `protein` object.

# Get a table of site-level data
site_data = protein.unravel_sites() # returns a dictionary of lists; readable, e.g., by `pandas`

Contributing

Contributions are welcome!

See Contributing for detailed instructions.

License

This code is released under BSD 2-Clause "Simplified" License. See our License for detailed information.

By default, procaliper does not have any dependencies that are not freely licensed. However, additional features can be installed that rely on restricted software. That is, please note that some optional dependencies are not FOSS. Specifically, the pka extra requires a DelPhi license. We encourage caution when using software that is not free and open source, especially for contributions to the scientific literature.

Acknowledgements

The software described here was funded under the Predictive Phenomics Initiative (PPI) at Pacific Northwest National Laboratory (PNNL) under the Laboratory Directed Research and Development Program. PNNL is a multiprogram national laboratory operated by Battelle for the DOE under Contract No. DE-AC05-76RL01830.

Citation Guidance

  1. Feng, S., Rozum, J. C., Ufford, H. S., Kim, D. N., & Im, A. K. (2025). ProCaliper. Zenodo. https://doi.org/10.5281/zenodo.15270417

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

procaliper-0.2.1.tar.gz (10.6 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

procaliper-0.2.1-py3-none-any.whl (28.1 kB view details)

Uploaded Python 3

File details

Details for the file procaliper-0.2.1.tar.gz.

File metadata

  • Download URL: procaliper-0.2.1.tar.gz
  • Upload date:
  • Size: 10.6 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for procaliper-0.2.1.tar.gz
Algorithm Hash digest
SHA256 29e811de640e7ff0e8014682072958f6be73b2b70bf8696543cf184e7f04976e
MD5 d1b47da14e8c83cc70d0ea55629cc8d7
BLAKE2b-256 d594c447b5bca5c2ba5199e5c227f45f6d0c73f1f691b2db13fcd83838a1771b

See more details on using hashes here.

Provenance

The following attestation bundles were made for procaliper-0.2.1.tar.gz:

Publisher: python-publish.yml on PNNL-Predictive-Phenomics/ProCaliper

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file procaliper-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: procaliper-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 28.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.12.9

File hashes

Hashes for procaliper-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 2b3d7ada986fdfbfd821c78b00bbc3bf649f848fe4beb4a8d692fd17e082c88f
MD5 fd410650eed6ac7f257d193f0be23d5c
BLAKE2b-256 b552e91da44bf973bd3db957725663faf2f0216088c33e8bc967d231cc80a488

See more details on using hashes here.

Provenance

The following attestation bundles were made for procaliper-0.2.1-py3-none-any.whl:

Publisher: python-publish.yml on PNNL-Predictive-Phenomics/ProCaliper

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page