Skip to main content

PyPI version Python Support Documentation Status Build Status

propy3

propy3 is a drop-in replacement for propy. The original project was developed by Dongsheng Cao and Yizeng Liang from 2010-2012. See the commit history for all changes made afterwards.

The reason for creating this fork of propy is to add Python 3 support.

The only point where you have to enter propy3 is at installation. Afterwards, you simply import propy.

Introduction

Sequence-derived structural and physicochemical features are highly useful for representing and distinguishing proteins or peptides of different structural, functional and interaction properties, and have been extensively used in developing methods and software for predicting protein structural and functional classes, protein-protein interactions, drug-target interactions, protein substrates, molecular binding sites on proteins, subcellular locations, protein crystallization propensity and peptides of specific properties. In order to conveniently apply these structural features from a protein sequence for researchers, we developed a propy package using pure python language, which could calculate a large number of protein descriptors from a protein sequence.

Features

The propy package has the following significant features:

  1. It is written by the pure python language. It only needs the support of some built-in modules in the python software.
  2. For academic users, it is free of charge. They can freely use and distribute it. For commercial purpose, they must contact the author.
  3. It can calculate a large number of protein descriptors including: amino acid composition descriptors, dipeptide composition descriptors, tri-peptide composition descriptors, Normalized Moreau-Broto autocorrelation descriptors, Moran autocorrelation descriptors, Geary autocorrelation descriptors, Composition, Transition, Distribution descriptors (CTD), sequence order coupling numbers, quasi-sequence order descriptors, pseudo amino acid composition descriptors, amphiphilic pseudo amino acid composition descriptors.
  4. The users could specify the needed properties of 20 amino acids to calculate the corresponding protein descriptors.
  5. The package includes the module which could directly download the protein sequence form uniprot website by uniprot id.
  6. The package includes the module which could automatrically download the property from the AAindex database. Thus, the user could calcualte thousands of protein features.

The protein descriptors calculated by propy

  1. AAC: amino acid composition descriptors (20)
  2. DPC: dipeptide composition descriptors (400)
  3. TPC: tri-peptide composition descriptors (8000)
  4. MBauto: Normalized Moreau-Broto autocorrelation descriptors (depend on the given properties, the default is 240)
  5. Moranauto: Moran autocorrelation descriptors(depend on the given properties, the default is 240)
  6. Gearyauto: Geary autocorrelation descriptors(depend on the given properties, the default is 240)
  7. CTD: Composition, Transition, Distribution descriptors (CTD) (21+21+105=147)
  8. SOCN: sequence order coupling numbers (depend on the choice of maxlag, the default is 60)
  9. QSO: quasi-sequence order descriptors (depend on the choice of maxlag, the default is 100)
  10. PAAC: pseudo amino acid composition descriptors (depend on the choice of lamda, the default is 50)
  11. APAAC: amphiphilic pseudo amino acid composition descriptors(depend on the choice of lamda, the default is 50)

Install

Pip

pip install propy3

BioConda

conda install -c bioconda propy3

Development

The project uses uv:

uv sync                          # create .venv with all dev dependencies
uv run pytest                    # run the tests
uv run pytest -m "not network"   # skip tests that need internet access
make lint                        # ruff + mypy
uv run pre-commit install        # optional: run the checks on each commit

Usage Example

For more examples, please see the user guide.

from propy import PyPro
from propy.GetProteinFromUniprot import GetProteinSequence

# download the protein sequence by uniprot id
proteinsequence = GetProteinSequence("P48039")

DesObject = PyPro.GetProDes(proteinsequence)  # construct a GetProDes object
print(DesObject.GetCTD())  # calculate 147 CTD descriptors
print(DesObject.GetAAComp())  # calculate 20 amino acid composition descriptors

# calculate 30 pseudo amino acid composition descriptors
paac = DesObject.GetPAAC(lamda=10, weight=0.05)

for i in paac:
    print(i, paac[i])

Download files

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

Source Distribution

propy3-2.0.1.tar.gz (283.6 kB view details)

Uploaded Source

Built Distribution

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

propy3-2.0.1-py3-none-any.whl (290.2 kB view details)

Uploaded Python 3

File details

Details for the file propy3-2.0.1.tar.gz.

File metadata

  • Download URL: propy3-2.0.1.tar.gz
  • Upload date:
  • Size: 283.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for propy3-2.0.1.tar.gz
Algorithm Hash digest
SHA256 1a41bcc2b8059a6d6230ffb1c43dc275a1d53a0f53821b94a4b389baa54de7a2
MD5 a219c17f68ab0f59cfba9fdefcbd8e7f
BLAKE2b-256 a18d6016e1c8ee9fbfa03f9a6607efd32224140cf443f043268b31f676eb938d

See more details on using hashes here.

Provenance

The following attestation bundles were made for propy3-2.0.1.tar.gz:

Publisher: publish.yaml on MartinThoma/propy3

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

File details

Details for the file propy3-2.0.1-py3-none-any.whl.

File metadata

  • Download URL: propy3-2.0.1-py3-none-any.whl
  • Upload date:
  • Size: 290.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for propy3-2.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 251e2b80985f8ec5aad96128da8945263a683a211b0eddee8da27573a12af9d4
MD5 22aaad8f8bf0cc4c85ae34b9210710a3
BLAKE2b-256 444bd26a5d41e6dcc1586b54654490391928a8017aff5f29f910fdedef6b11fe

See more details on using hashes here.

Provenance

The following attestation bundles were made for propy3-2.0.1-py3-none-any.whl:

Publisher: publish.yaml on MartinThoma/propy3

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

Release history Release notifications | RSS feed

This release

2.0.1 This release

2 files

1.1.1

2 files

1.1.0

2 files

1.0.2

2 files

1.0.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page