Skip to main content

No project description provided

Project description

PARD (Physicochemical Amino acid Replacement Distances)

DOI Coverage

Overview

Amino acid replacements (also referred to as substitutions) are changes from one amino acid to a different one in a protein - and there are different ways to assess the difference between the two amino acids that come into play in an amino acid replacement.

One can look at one or several properties' discrepancy between two amino acids. To list only a few: polarity [1] [3] [4], molecular volume / relative sizes of amino-acid side chains [1] [3] [4], mean number of lone pair electrons on the side-chain [2], maximum moment of inertia for rotation at the α―β bond [2] or at the β―γ bond [2] or at the γ―δ bond [2], presence of a pyrrolidine ring (proline (P)) [2], experimental protein activity and stability after exchanging one amino acid into another [5], etc.

pard is a package designed to make those Physicochemical Amino acid Replacement Distances calculations straightforward with Python.

One typical use is to establish a 'distance' between a wild-type protein and its mutated version.

Getting started

Install from PyPI (recommended)

To use pard, run pip install pard in your terminal.

Usage

import pard

amino_acid_1: str = "W"  # Tryptophan
amino_acid_2: str = "L"  # Leucine
distance_grantham: int = pard.grantham.grantham(amino_acid_1, amino_acid_2)
distance_sneath: int   = pard.sneath.sneath(amino_acid_1, amino_acid_2)
distance_ee: float     = pard.experimental_exchangeability.experimental_exchangeability(
    amino_acid_1, 
    amino_acid_2, 
    False, 
    warning=False
)

print(distance_grantham)
print(distance_sneath)
print(distance_ee)

or equivalently

from pard.grantham import grantham
from pard.sneath import sneath
from pard.experimental_exchangeability import experimental_exchangeability

amino_acid_1: str = "W"  # Tryptophan
amino_acid_2: str = "L"  # Leucine
distance_grantham: int = grantham(amino_acid_1, amino_acid_2)
distance_sneath: int   = sneath(amino_acid_1, amino_acid_2)
distance_ee: float     = experimental_exchangeability(amino_acid_1, amino_acid_2, False, warning=False)

print(distance_grantham)
print(distance_sneath)
print(distance_ee)

will output:

>>> 61
>>> 30
>>> 177

which are the correct values [1] [2] [5] .

Unit tests

Name                                         Stmts   Miss  Cover
----------------------------------------------------------------
pard\__init__.py                                 3      0   100%
pard\epstein.py                                  5      0   100%
pard\experimental_exchangeability.py             8      1    88%
pard\grantham.py                                 3      0   100%
pard\miyata.py                                   3      0   100%
pard\raw_python_dictionaries.py                 35      0   100%
pard\sneath.py                                   3      0   100%
tests\__init__.py                                0      0   100%
tests\test_epstein.py                           34      0   100%
tests\test_experimental_exchangeability.py      22      0   100%
tests\test_grantham.py                          18      0   100%
tests\test_miyata.py                            18      0   100%
tests\test_pard.py                               3      0   100%
tests\test_raw_python_dictionaries.py           12      0   100%
tests\test_sneath.py                            18      0   100%
----------------------------------------------------------------
TOTAL                                          185      1    99%

About the source code

Useful links:

Citation

If you use this software, please cite it as below.

  • APA:

Lhotte, R. & Taupin, J. (2022). Physicochemical Amino acid Replacement Distances (PARD) package (Version 0.1.7.1) [Computer software]. https://doi.org/10.5281/zenodo.7013169

  • BibTeX:
@software{lhotte_pard_2022,
author = {Lhotte, Romain and Taupin, Jean-Luc},
doi = {10.5281/zenodo.7013169},
month = {8},
title = {{Physicochemical Amino acid Replacement Distances (PARD) package}},
version = {0.1.7.1},
year = {2022}
}

References

  • [1] Grantham, R., 1974. Amino acid difference formula to help explain protein evolution. science, 185(4154), pp.862-864.
  • [2] Sneath, P.H.A., 1966. Relations between chemical structure and biological activity in peptides. Journal of theoretical biology, 12(2), pp.157-195.
  • [3] Epstein, C.J., 1967. Non-randomness of ammo-acid changes in the evolution of homologous proteins. Nature, 215(5099), pp.355-359.
  • [4] Miyata, T., Miyazawa, S. and Yasunaga, T., 1979. Two types of amino acid substitutions in protein evolution. Journal of molecular evolution, 12(3), pp.219-236.
  • [5] Yampolsky, L.Y. and Stoltzfus, A., 2005. The exchangeability of amino acids in proteins. Genetics, 170(4), pp.1459-1472.

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

pard-0.1.7.1.tar.gz (18.4 kB view details)

Uploaded Source

Built Distribution

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

pard-0.1.7.1-py3-none-any.whl (18.9 kB view details)

Uploaded Python 3

File details

Details for the file pard-0.1.7.1.tar.gz.

File metadata

  • Download URL: pard-0.1.7.1.tar.gz
  • Upload date:
  • Size: 18.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.14 CPython/3.10.2 Windows/10

File hashes

Hashes for pard-0.1.7.1.tar.gz
Algorithm Hash digest
SHA256 2410801827ae04415dd5feac804754a9c1a86b5014a70a7e5b284e49adc8eb67
MD5 95ae0eb38ea6cd138388d97b1f64b913
BLAKE2b-256 9d51e85cce6c698ea3df56a28c4d2acb771bc62b64655eaba498357add565bbf

See more details on using hashes here.

File details

Details for the file pard-0.1.7.1-py3-none-any.whl.

File metadata

  • Download URL: pard-0.1.7.1-py3-none-any.whl
  • Upload date:
  • Size: 18.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.14 CPython/3.10.2 Windows/10

File hashes

Hashes for pard-0.1.7.1-py3-none-any.whl
Algorithm Hash digest
SHA256 fbe4ac926b881332b808031f68597fa42c537b28dec878e39abc89d417076c36
MD5 f2980af9451051972c899b9dba873624
BLAKE2b-256 6acac115c8451b7d5e85f23cf84fee95bbd3152a88bf0a546f7f4a6bd286f569

See more details on using hashes here.

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