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] .

Exit codes:

- 1: Argument amino_acid_1 or amino_acid_2 is neither of length 1 nor length 3. See error message.

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.2.0) [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.2.0},
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.2.0.tar.gz (19.1 kB view details)

Uploaded Source

Built Distribution

pard-0.2.0-py3-none-any.whl (19.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: pard-0.2.0.tar.gz
  • Upload date:
  • Size: 19.1 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.2.0.tar.gz
Algorithm Hash digest
SHA256 4e26ead3b219a8de497ed61ca66d7057a3c35742f052941f027706d120dec1b4
MD5 b9912814d8cdd89df16625d99f370f6e
BLAKE2b-256 1cf764c254dadea0a8047baa11d9d5571397506c94488182938370aa83373163

See more details on using hashes here.

File details

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

File metadata

  • Download URL: pard-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 19.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.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cdfb5c359315d3d92965ecaebccf34beb8cd2aba498583dd870e440e60fabf12
MD5 30aaae266f1cf19d19d484574541a744
BLAKE2b-256 d814da6f85429a64cd620b242bf132ac3997a070c6f7168d5d00800cda5fab25

See more details on using hashes here.

Supported by

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