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[nglview,pka]

The nglview 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.0.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.0-py3-none-any.whl (28.1 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: procaliper-0.2.0.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.0.tar.gz
Algorithm Hash digest
SHA256 7a63629447afc85886dfdbde2bd4f5a42f5bd7bed0a1a9a18c2c0f70fa5074bc
MD5 5e8f0a5f06aa3514b1ef09cb2cac1c4b
BLAKE2b-256 f89c5aeb59ee62aff083e37a4bce6d7366c5b65b9541f2fdcac77c4644c2aca4

See more details on using hashes here.

Provenance

The following attestation bundles were made for procaliper-0.2.0.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.0-py3-none-any.whl.

File metadata

  • Download URL: procaliper-0.2.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 477167c85b4613b1343bddfdc6d0400e2528dea14a11640d488f4af5073c00a6
MD5 d49fb73b12e3e0f49726bcf85ba6fa34
BLAKE2b-256 c586bf162cf64246f34ed2e808865e9c60ce0c2a1db9d0382fa7c0be14b5c8fa

See more details on using hashes here.

Provenance

The following attestation bundles were made for procaliper-0.2.0-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