diff --git a/PyBioMed/PyGetMol/Getmol.py b/PyBioMed/PyGetMol/Getmol.py index c66b335..94a00ac 100644 --- a/PyBioMed/PyGetMol/Getmol.py +++ b/PyBioMed/PyGetMol/Getmol.py @@ -19,14 +19,15 @@ try: # Python 3 - from urllib.request import urlopen + from urllib.request import urlopen, Request except ImportError: # Python 2 - from urllib2 import urlopen + from urllib2 import urlopen, Request # Core Library modules import os import re import string +import pybel # Third party modules from rdkit import Chem @@ -134,31 +135,45 @@ def ReadMolFromMol(filename=""): ############################################################################# - def GetMolFromCAS(casid=""): """ - Downloading the molecules from http://www.chemnet.com/cas/ by CAS ID (casid). - if you want to use this function, you must be install pybel. + Download molecules from http://www.chemnet.com/cas/ using CAS ID (casid). + Requires OpenBabel's pybel module. """ - from openbabel import pybel - casid = casid.strip() - localfile = urlopen( - "http://www.chemnet.com/cas/supplier.cgi?terms=" + casid + "&l=&exact=dict" - ) - temp = localfile.readlines() + + # Download page from chemnet + link = f"http://www.chemnet.com/cas/supplier.cgi?terms={casid}&l=&exact=dict" + localfile = urlopen(link) + + # Read and decode the content + temp = [line.decode('utf-8') for line in localfile.readlines()] + + # Close the connection + localfile.close() + + # Search for the InChI string in the page content + res = None for i in temp: - if re.findall("InChI=", i) == ["InChI="]: - k = i.split(' ') + if "InChI=" in i: # Check if the line contains "InChI=" + k = i.split('') kk = k[1].split("\r\n") - if kk[0][0:5] == "InChI": - res = kk[0] - else: - res = "None" - localfile.close() - mol = pybel.readstring("inchi", res.strip()) - smile = mol.write("smi") - return smile.strip() + if kk[0].startswith("InChI"): + res = kk[0].strip() + break + + # Error handling if no InChI is found + if res is None: + raise ValueError(f"InChI string not found for CAS ID {casid}.") + + # Convert the InChI string to a molecule using pybel + #mol = pybel.readstring("inchi", res) + mol = pybel.Molecule(res) # Use the Molecule constructor directly + + # Convert the molecule to SMILES format + smile = mol.write("smi").strip() + + return smile def GetMolFromEBI(): @@ -193,30 +208,71 @@ def GetMolFromDrugbank(dbid=""): Downloading the molecules from http://www.drugbank.ca/ by dbid (dbid). """ dbid = dbid.strip() - - localfile = urlopen("http://www.drugbank.ca/drugs/" + dbid + ".sdf") - temp = localfile.readlines() - f = file("temp.sdf", "w") - f.writelines(temp) + link = "http://www.drugbank.ca/drugs/" + dbid + ".sdf" + + # Create a request with headers + req = Request(link, headers={'User-Agent': 'Mozilla/5.0'}) + localfile = urlopen(req) + lines = localfile.readlines() + #print(lines) + # Read and decode the contents of the file + temp = [line.decode('utf-8') for line in lines] # Decode each line + #print(temp) + with open("temp.sdf", "w") as f: + f.write("".join(temp)) # Join the list into a single string and write it to the file + + # Close the files f.close() localfile.close() + + # Check if the file was written successfully + if os.path.getsize("temp.sdf") == 0: + raise ValueError("The downloaded SDF file is empty or corrupted.") + + # Load the molecule using RDKit m = Chem.MolFromMolFile("temp.sdf") - os.remove("temp.sdf") + + #print(f"extracted data: {m}") + + # Check if the molecule was successfully loaded + if m is None: + raise ValueError("RDKit could not load the molecule from the SDF file.") + + # Convert the molecule to SMILES temp = Chem.MolToSmiles(m, isomericSmiles=True) + + # Remove the temporary SDF file + os.remove("temp.sdf") + return temp - def GetMolFromKegg(kid=""): """ Downloading the molecules from http://www.genome.jp/ by kegg id (kid). """ ID = str(kid) - localfile = urlopen("http://www.genome.jp/dbget-bin/www_bget?-f+m+drug+" + ID) - temp = localfile.readlines() - f = file("temp.mol", "w") - f.writelines(temp) + link = urlopen("http://www.genome.jp/dbget-bin/www_bget?-f+m+drug+" + ID) + #temp = localfile.readlines() + #f = open("temp.mol", "w") + #f.writelines(temp) + #f.close() + #localfile.close() + # Create a request with headers + + req = Request(link, headers={'User-Agent': 'Mozilla/5.0'}) + localfile = urlopen(req) + lines = localfile.readlines() + #print(lines) + # Read and decode the contents of the file + temp = [line.decode('utf-8') for line in lines] # Decode each line + #print(temp) + with open("temp.sdf", "w") as f: + f.write("".join(temp)) # Join the list into a single string and write it to the file + + # Close the files f.close() localfile.close() + m = Chem.MolFromMolFile("temp.mol") os.remove("temp.mol") temp = Chem.MolToSmiles(m, isomericSmiles=True) diff --git a/PyBioMed/PyMolecule/connectivity.py b/PyBioMed/PyMolecule/connectivity.py index c288b19..895f6f8 100644 --- a/PyBioMed/PyMolecule/connectivity.py +++ b/PyBioMed/PyMolecule/connectivity.py @@ -22,6 +22,8 @@ ############################################################################## """ # Third party modules +import numpy as np +# -*- coding: utf-8 -*- import numpy from rdkit import Chem from rdkit.Chem import rdchem @@ -303,7 +305,7 @@ def CalculateChi10p(mol): """ return _CalculateChinp(mol, NumPath=10) - +''' def CalculateChi3c(mol): """ ################################################################# @@ -333,8 +335,39 @@ def CalculateChi3c(mol): deltas1 = numpy.array(deltas, numpy.float) accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) return accum +''' +def CalculateChi3c(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for cluster + + ---->Chi3c + + Usage: + + result=CalculateChi3c(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + accum = 0.0 + deltas = [x.GetDegree() for x in mol.GetAtoms()] + patt = Chem.MolFromSmarts("*~*(~*)~*") + HPatt = mol.GetSubstructMatches(patt) + for cluster in HPatt: + deltas = [mol.GetAtomWithIdx(x).GetDegree() for x in cluster] + while 0 in deltas: + deltas.remove(0) + if deltas != []: + # Change numpy.float to float + deltas1 = numpy.array(deltas, float) # or use numpy.float64 if needed + accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) + return accum +'''''' def CalculateChi4c(mol): """ ################################################################# @@ -365,7 +398,18 @@ def CalculateChi4c(mol): accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) return accum +def CalculateChi4c(mol): + accum = 0.0 + deltas = [x.GetDegree() for x in mol.GetAtoms()] + # Assuming similar logic as in CalculateChi3c + while 0 in deltas: + deltas.remove(0) + if deltas != []: + deltas1 = numpy.array(deltas, float) # Change this line + accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) + return accum +''' def CalculateChi4pc(mol): """ ################################################################# @@ -396,7 +440,16 @@ def CalculateChi4pc(mol): deltas1 = numpy.array(deltas, numpy.float) accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) return accum - +''' +def CalculateChi4pc(mol): + accum = 0.0 + deltas = [x.GetDegree() for x in mol.GetAtoms()] + while 0 in deltas: + deltas.remove(0) + if deltas != []: + deltas1 = numpy.array(deltas, float) # Change this line + accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) + return accum def CalculateDeltaChi3c4pc(mol): """ @@ -924,7 +977,39 @@ def _AtomHKDeltas(atom, skipHs=0): res.append(0.0) return res +def CalculateChiv3c(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for cluster + + ---->Chiv3c + + Usage: + result = CalculateChiv3c(mol) + + Input: + mol is a molecule object. + Output: + result is a numeric value + ################################################################# + """ + accum = 0.0 + deltas = [x.GetDegree() for x in mol.GetAtoms()] + patt = Chem.MolFromSmarts("*~*(~*)~*") + HPatt = mol.GetSubstructMatches(patt) + + for cluster in HPatt: + deltas = [_AtomHKDeltas(mol.GetAtomWithIdx(x)) for x in cluster] + while 0 in deltas: + deltas.remove(0) + if deltas: + # Convert deltas to a NumPy array of type float + deltas1 = numpy.array(deltas, float) + accum += 1.0 / np.sqrt(deltas1.prod()) + + return accum +''' def CalculateChiv3c(mol): """ ################################################################# @@ -952,9 +1037,10 @@ def CalculateChiv3c(mol): deltas.remove(0) if deltas != []: deltas1 = numpy.array(deltas, numpy.float) + deltas1 = numpy.array(deltas, float) accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) return accum - +''' def CalculateChiv4c(mol): """ @@ -982,7 +1068,7 @@ def CalculateChiv4c(mol): while 0 in deltas: deltas.remove(0) if deltas != []: - deltas1 = numpy.array(deltas, numpy.float) + deltas1 = numpy.array(deltas, numpy.float64) accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) return accum @@ -1015,7 +1101,7 @@ def CalculateChiv4pc(mol): while 0 in deltas: deltas.remove(0) if deltas != []: - deltas1 = numpy.array(deltas, numpy.float) + deltas1 = numpy.array(deltas, float) accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) return accum diff --git a/PyBioMed/PyMolecule/connectivity_old.py b/PyBioMed/PyMolecule/connectivity_old.py new file mode 100644 index 0000000..c288b19 --- /dev/null +++ b/PyBioMed/PyMolecule/connectivity_old.py @@ -0,0 +1,1227 @@ +# -*- coding: utf-8 -*- +# Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao +# All rights reserved. +# This file is part of the PyBioMed. +# The contents are covered by the terms of the BSD license +# which is included in the file license.txt, found at the root +# of the PyBioMed source tree. +""" +############################################################################## +The calculation of molecular connectivity indices based on its topological + +structure. You can get 44 molecular connectivity descriptors. You can freely + +use and distribute it. If you hava any problem, you could contact with us timely! + +Authors: Zhijiang Yao and Dongsheng Cao. + +Date: 2016.06.04 + +Email: gadsby@163.com and oriental-cds@163.com + +############################################################################## +""" +# Third party modules +import numpy +from rdkit import Chem +from rdkit.Chem import rdchem + +periodicTable = rdchem.GetPeriodicTable() + +Version = 1.0 +################################################################ + + +def CalculateChi0(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for path order 0 + + ---->Chi0 + + Usage: + + result=CalculateChi0(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + deltas = [x.GetDegree() for x in mol.GetAtoms()] + while 0 in deltas: + deltas.remove(0) + deltas = numpy.array(deltas, "d") + res = sum(numpy.sqrt(1.0 / deltas)) + return res + + +def CalculateChi1(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for path order 1 + + (i.e.,Radich) + + ---->Chi1 + + Usage: + + result=CalculateChi1(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + cc = [ + x.GetBeginAtom().GetDegree() * x.GetEndAtom().GetDegree() + for x in mol.GetBonds() + ] + while 0 in cc: + cc.remove(0) + cc = numpy.array(cc, "d") + res = sum(numpy.sqrt(1.0 / cc)) + return res + + +def CalculateMeanRandic(mol): + """ + ################################################################# + Calculation of mean chi1 (Randic) connectivity index. + + ---->mchi1 + + Usage: + + result=CalculateMeanRandic(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + cc = [ + x.GetBeginAtom().GetDegree() * x.GetEndAtom().GetDegree() + for x in mol.GetBonds() + ] + while 0 in cc: + cc.remove(0) + cc = numpy.array(cc, "d") + res = numpy.mean(numpy.sqrt(1.0 / cc)) + + return res + + +def _CalculateChinp(mol, NumPath=2): + + """ + ################################################################# + **Internal used only** + + Calculation of molecular connectivity chi index for path order 2 + ################################################################# + """ + accum = 0.0 + deltas = [x.GetDegree() for x in mol.GetAtoms()] + for path in Chem.FindAllPathsOfLengthN(mol, NumPath + 1, useBonds=0): + cAccum = 1.0 + for idx in path: + cAccum *= deltas[idx] + if cAccum: + accum += 1.0 / numpy.sqrt(cAccum) + return accum + + +def CalculateChi2(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for path order 2 + + ---->Chi2 + + Usage: + + result=CalculateChi2(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChinp(mol, NumPath=2) + + +def CalculateChi3p(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for path order 3 + + ---->Chi3 + + Usage: + + result=CalculateChi3p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChinp(mol, NumPath=3) + + +def CalculateChi4p(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for path order 4 + + ---->Chi4 + + Usage: + + result=CalculateChi4p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChinp(mol, NumPath=4) + + +def CalculateChi5p(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for path order 5 + + ---->Chi5 + + Usage: + + result=CalculateChi5p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChinp(mol, NumPath=5) + + +def CalculateChi6p(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for path order 6 + + ---->Chi6 + + Usage: + + result=CalculateChi6p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChinp(mol, NumPath=6) + + +def CalculateChi7p(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for path order 7 + + ---->Chi7 + + Usage: + + result=CalculateChi7p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChinp(mol, NumPath=7) + + +def CalculateChi8p(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for path order 8 + + ---->Chi8 + + Usage: + + result=CalculateChi8p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChinp(mol, NumPath=8) + + +def CalculateChi9p(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for path order 9 + + ---->Chi9 + + Usage: + + result=CalculateChi9p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChinp(mol, NumPath=9) + + +def CalculateChi10p(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for path order 10 + + ---->Chi10 + + Usage: + + result=CalculateChi10p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChinp(mol, NumPath=10) + + +def CalculateChi3c(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for cluster + + ---->Chi3c + + Usage: + + result=CalculateChi3c(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + + accum = 0.0 + deltas = [x.GetDegree() for x in mol.GetAtoms()] + patt = Chem.MolFromSmarts("*~*(~*)~*") + HPatt = mol.GetSubstructMatches(patt) + for cluster in HPatt: + deltas = [mol.GetAtomWithIdx(x).GetDegree() for x in cluster] + while 0 in deltas: + deltas.remove(0) + if deltas != []: + deltas1 = numpy.array(deltas, numpy.float) + accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) + return accum + + +def CalculateChi4c(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for cluster + + ---->Chi4c + + Usage: + + result=CalculateChi4c(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + + accum = 0.0 + deltas = [x.GetDegree() for x in mol.GetAtoms()] + patt = Chem.MolFromSmarts("*~*(~*)(~*)~*") + HPatt = mol.GetSubstructMatches(patt) + for cluster in HPatt: + deltas = [mol.GetAtomWithIdx(x).GetDegree() for x in cluster] + while 0 in deltas: + deltas.remove(0) + if deltas != []: + deltas1 = numpy.array(deltas, numpy.float) + accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) + return accum + + +def CalculateChi4pc(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for path/cluster + + ---->Chi4pc + + Usage: + + result=CalculateChi4pc(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + + accum = 0.0 + deltas = [x.GetDegree() for x in mol.GetAtoms()] + patt = Chem.MolFromSmarts("*~*(~*)~*~*") + HPatt = mol.GetSubstructMatches(patt) + # print HPatt + for cluster in HPatt: + deltas = [mol.GetAtomWithIdx(x).GetDegree() for x in cluster] + while 0 in deltas: + deltas.remove(0) + if deltas != []: + deltas1 = numpy.array(deltas, numpy.float) + accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) + return accum + + +def CalculateDeltaChi3c4pc(mol): + """ + ################################################################# + Calculation of the difference between chi3c and chi4pc + + ---->knotp + + Usage: + + result=CalculateDeltaChi3c4pc(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return abs(CalculateChi3c(mol) - CalculateChi4pc(mol)) + + +def _CalculateChinch(mol, NumCycle=3): + + """ + ################################################################# + **Internal used only** + + Calculation of molecular connectivity chi index for cycles of n + ################################################################# + """ + accum = 0.0 + deltas = [x.GetDegree() for x in mol.GetAtoms()] + for tup in mol.GetRingInfo().AtomRings(): + cAccum = 1.0 + if len(tup) == NumCycle: + for idx in tup: + cAccum *= deltas[idx] + if cAccum: + accum += 1.0 / numpy.sqrt(cAccum) + + return accum + + +def CalculateChi3ch(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for cycles of 3 + + ---->Chi3ch + + Usage: + + result=CalculateChi3ch(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + + return _CalculateChinch(mol, NumCycle=3) + + +def CalculateChi4ch(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for cycles of 4 + + ---->Chi4ch + + Usage: + + result=CalculateChi4ch(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChinch(mol, NumCycle=4) + + +def CalculateChi5ch(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for cycles of 5 + + ---->Chi5ch + + Usage: + + result=CalculateChi5ch(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + + return _CalculateChinch(mol, NumCycle=5) + + +def CalculateChi6ch(mol): + """ + ################################################################# + Calculation of molecular connectivity chi index for cycles of 6 + + ---->Chi6ch + + Usage: + + result=CalculateChi6ch(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChinch(mol, NumCycle=6) + + +def _HKDeltas(mol, skipHs=1): + """ + ################################################################# + *Internal Use Only* + + Calculation of modified delta value for a molecule + + res---->list type + ################################################################# + """ + global periodicTable + res = [] + for atom in mol.GetAtoms(): + n = atom.GetAtomicNum() + if n > 1: + nV = periodicTable.GetNOuterElecs(n) + nHs = atom.GetTotalNumHs() + if n < 10: + res.append(float(nV - nHs)) + else: + res.append(float(nV - nHs) / float(n - nV - 1)) + elif not skipHs: + res.append(0.0) + return res + + +def CalculateChiv0(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + path order 0 + + ---->Chiv0 + + Usage: + + result=CalculateChiv0(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + deltas = _HKDeltas(mol, skipHs=0) + while 0 in deltas: + deltas.remove(0) + deltas = numpy.array(deltas, "d") + res = sum(numpy.sqrt(1.0 / deltas)) + return res + + +def _CalculateChivnp(mol, NumPath=1): + + """################################################################# + **Internal used only** + + Calculation of valence molecular connectivity chi index for path order 1 + ################################################################# + """ + + accum = 0.0 + deltas = _HKDeltas(mol, skipHs=0) + for path in Chem.FindAllPathsOfLengthN(mol, NumPath + 1, useBonds=0): + cAccum = 1.0 + for idx in path: + cAccum *= deltas[idx] + if cAccum: + accum += 1.0 / numpy.sqrt(cAccum) + return accum + + +def CalculateChiv1(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + path order 1 + + ---->Chiv1 + + Usage: + + result=CalculateChiv1(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChivnp(mol, NumPath=1) + + +def CalculateChiv2(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + path order 2 + + ---->Chiv2 + + Usage: + + result=CalculateChiv2(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChivnp(mol, NumPath=2) + + +def CalculateChiv3p(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + path order 3 + + ---->Chiv3 + + Usage: + + result=CalculateChiv3p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + + return _CalculateChivnp(mol, NumPath=3) + + +def CalculateChiv4p(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + path order 4 + + ---->Chiv4 + + Usage: + + result=CalculateChiv4p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + + return _CalculateChivnp(mol, NumPath=4) + + +def CalculateChiv5p(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + path order 5 + + ---->Chiv5 + + Usage: + + result=CalculateChiv5p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + + return _CalculateChivnp(mol, NumPath=5) + + +def CalculateChiv6p(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + path order 6 + + ---->Chiv6 + + Usage: + + result=CalculateChiv6p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + + return _CalculateChivnp(mol, NumPath=6) + + +def CalculateChiv7p(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + path order 7 + + ---->Chiv7 + + Usage: + + result=CalculateChiv7p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + + return _CalculateChivnp(mol, NumPath=7) + + +def CalculateChiv8p(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + path order 8 + + ---->Chiv8 + + Usage: + + result=CalculateChiv8p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + + return _CalculateChivnp(mol, NumPath=8) + + +def CalculateChiv9p(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + path order 9 + + ---->Chiv9 + + Usage: + + result=CalculateChiv9p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + + return _CalculateChivnp(mol, NumPath=9) + + +def CalculateChiv10p(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + path order 10 + + ---->Chiv10 + + Usage: + + result=CalculateChiv10p(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + + return _CalculateChivnp(mol, NumPath=10) + + +def CalculateDeltaChi0(mol): + """ + ################################################################# + Calculation of the difference between chi0v and chi0 + + ---->dchi0 + + Usage: + + result=CalculateDeltaChi0(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return abs(CalculateChiv0(mol) - CalculateChi0(mol)) + + +def CalculateDeltaChi1(mol): + """ + ################################################################# + Calculation of the difference between chi1v and chi1 + + ---->dchi1 + + Usage: + + result=CalculateDeltaChi1(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return abs(CalculateChiv1(mol) - CalculateChi1(mol)) + + +def CalculateDeltaChi2(mol): + """ + ################################################################# + Calculation of the difference between chi2v and chi2 + + ---->dchi2 + + Usage: + + result=CalculateDeltaChi2(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return abs(_CalculateChivnp(mol, NumPath=2) - _CalculateChinp(mol, NumPath=2)) + + +def CalculateDeltaChi3(mol): + """ + ################################################################# + Calculation of the difference between chi3v and chi3 + + ---->dchi3 + + Usage: + + result=CalculateDeltaChi3(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return abs(_CalculateChivnp(mol, NumPath=3) - _CalculateChinp(mol, NumPath=3)) + + +def CalculateDeltaChi4(mol): + """ + ################################################################# + Calculation of the difference between chi4v and chi4 + + ---->dchi4 + + Usage: + + result=CalculateDeltaChi4(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return abs(_CalculateChivnp(mol, NumPath=4) - _CalculateChinp(mol, NumPath=4)) + + +def _AtomHKDeltas(atom, skipHs=0): + """ + ################################################################# + *Internal Use Only* + + Calculation of modified delta value for a molecule + ################################################################# + """ + global periodicTable + res = [] + n = atom.GetAtomicNum() + if n > 1: + nV = periodicTable.GetNOuterElecs(n) + nHs = atom.GetTotalNumHs() + if n < 10: + res.append(float(nV - nHs)) + else: + res.append(float(nV - nHs) / float(n - nV - 1)) + elif not skipHs: + res.append(0.0) + return res + + +def CalculateChiv3c(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for cluster + + ---->Chiv3c + + Usage: + + result=CalculateChiv3c(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + accum = 0.0 + deltas = [x.GetDegree() for x in mol.GetAtoms()] + patt = Chem.MolFromSmarts("*~*(~*)~*") + HPatt = mol.GetSubstructMatches(patt) + # print HPatt + for cluster in HPatt: + deltas = [_AtomHKDeltas(mol.GetAtomWithIdx(x)) for x in cluster] + while 0 in deltas: + deltas.remove(0) + if deltas != []: + deltas1 = numpy.array(deltas, numpy.float) + accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) + return accum + + +def CalculateChiv4c(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for cluster + + ---->Chiv4c + + Usage: + + result=CalculateChiv4c(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + accum = 0.0 + deltas = [x.GetDegree() for x in mol.GetAtoms()] + patt = Chem.MolFromSmarts("*~*(~*)(~*)~*") + HPatt = mol.GetSubstructMatches(patt) + # print HPatt + for cluster in HPatt: + deltas = [_AtomHKDeltas(mol.GetAtomWithIdx(x)) for x in cluster] + while 0 in deltas: + deltas.remove(0) + if deltas != []: + deltas1 = numpy.array(deltas, numpy.float) + accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) + return accum + + +def CalculateChiv4pc(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + path/cluster + + ---->Chiv4pc + + Usage: + + result=CalculateChiv4pc(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + accum = 0.0 + deltas = [x.GetDegree() for x in mol.GetAtoms()] + patt = Chem.MolFromSmarts("*~*(~*)~*~*") + HPatt = mol.GetSubstructMatches(patt) + # print HPatt + for cluster in HPatt: + deltas = [_AtomHKDeltas(mol.GetAtomWithIdx(x)) for x in cluster] + while 0 in deltas: + deltas.remove(0) + if deltas != []: + deltas1 = numpy.array(deltas, numpy.float) + accum = accum + 1.0 / numpy.sqrt(deltas1.prod()) + return accum + + +def CalculateDeltaChiv3c4pc(mol): + """ + ################################################################# + Calculation of the difference between chiv3c and chiv4pc + + ---->knotpv + + Usage: + + result=CalculateDeltaChiv3c4pc(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return abs(CalculateChiv3c(mol) - CalculateChiv4pc(mol)) + + +def _CalculateChivnch(mol, NumCyc=3): + """ + ################################################################# + **Internal used only** + + Calculation of valence molecular connectivity chi index for cycles of n + ################################################################# + """ + accum = 0.0 + deltas = _HKDeltas(mol, skipHs=0) + for tup in mol.GetRingInfo().AtomRings(): + cAccum = 1.0 + if len(tup) == NumCyc: + for idx in tup: + cAccum *= deltas[idx] + if cAccum: + accum += 1.0 / numpy.sqrt(cAccum) + + return accum + + +def CalculateChiv3ch(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index + + for cycles of 3 + + ---->Chiv3ch + + Usage: + + result=CalculateChiv3ch(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChivnch(mol, NumCyc=3) + + +def CalculateChiv4ch(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + cycles of 4 + + ---->Chiv4ch + + Usage: + + result=CalculateChiv4ch(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChivnch(mol, NumCyc=4) + + +def CalculateChiv5ch(mol): + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + cycles of 5 + + ---->Chiv5ch + + Usage: + + result=CalculateChiv5ch(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChivnch(mol, NumCyc=5) + + +def CalculateChiv6ch(mol): + + """ + ################################################################# + Calculation of valence molecular connectivity chi index for + + cycles of 6 + + ---->Chiv6ch + + Usage: + + result=CalculateChiv6ch(mol) + + Input: mol is a molecule object. + + Output: result is a numeric value + ################################################################# + """ + return _CalculateChivnch(mol, NumCyc=6) + + +_connectivity = { + "Chi0": CalculateChi0, + "Chi1": CalculateChi1, + "mChi1": CalculateMeanRandic, + "Chi2": CalculateChi2, + "Chi3": CalculateChi3p, + "Chi4": CalculateChi4p, + "Chi5": CalculateChi5p, + "Chi6": CalculateChi6p, + "Chi7": CalculateChi7p, + "Chi8": CalculateChi8p, + "Chi9": CalculateChi9p, + "Chi10": CalculateChi10p, + "Chi3c": CalculateChi3c, + "Chi4c": CalculateChi4c, + "Chi4pc": CalculateChi4pc, + "Chi3ch": CalculateChi3ch, + "Chi4ch": CalculateChi4ch, + "Chi5ch": CalculateChi5ch, + "Chi6ch": CalculateChi6ch, + "knotp": CalculateDeltaChi3c4pc, + "Chiv0": CalculateChiv0, + "Chiv1": CalculateChiv1, + "Chiv2": CalculateChiv2, + "Chiv3": CalculateChiv3p, + "Chiv4": CalculateChiv4p, + "Chiv5": CalculateChiv5p, + "Chiv6": CalculateChiv6p, + "Chiv7": CalculateChiv7p, + "Chiv8": CalculateChiv8p, + "Chiv9": CalculateChiv9p, + "Chiv10": CalculateChiv10p, + "dchi0": CalculateDeltaChi0, + "dchi1": CalculateDeltaChi1, + "dchi2": CalculateDeltaChi2, + "dchi3": CalculateDeltaChi3, + "dchi4": CalculateDeltaChi4, + "Chiv3c": CalculateChiv3c, + "Chiv4c": CalculateChiv4c, + "Chiv4pc": CalculateChiv4pc, + "Chiv3ch": CalculateChiv3ch, + "Chiv4ch": CalculateChiv4ch, + "Chiv5ch": CalculateChiv5ch, + "Chiv6ch": CalculateChiv6ch, + "knotpv": CalculateDeltaChiv3c4pc, +} + + +def GetConnectivity(mol): + """ + ################################################################# + Get the dictionary of connectivity descriptors for given moelcule mol + + Usage: + + result=GetConnectivity(mol) + + Input: mol is a molecule object. + + Output: result is a dict form containing all connectivity indices + ################################################################# + """ + result = {} + for DesLabel in _connectivity.keys(): + result[DesLabel] = round(_connectivity[DesLabel](mol), 3) + return result + + +############################################################################### +if __name__ == "__main__": + + smis = ["CCCC", "CCCCC", "CCCCCC", "CC(N)C(=O)O", "CC(N)C(=O)[O-].[Na+]"] + smi5 = ["CCCCCC", "CCC(C)CC", "CC(C)CCC", "CC(C)C(C)C", "CCCCCN", "c1ccccc1N"] + + for index, smi in enumerate(smis): + m = Chem.MolFromSmiles(smi) + print(index + 1) + print(smi) + print("\t", GetConnectivity(m)) + print("\t", len(GetConnectivity(m))) diff --git a/PyBioMed/PyMolecule/constitution.py b/PyBioMed/PyMolecule/constitution.py index c6dca45..02e7743 100644 --- a/PyBioMed/PyMolecule/constitution.py +++ b/PyBioMed/PyMolecule/constitution.py @@ -708,10 +708,16 @@ def GetConstitutional(mol): ################################################################# """ result = {} - for DesLabel in _constitutional.keys(): - result[DesLabel] = round(_constitutional[DesLabel](mol), 3) - return result - + #for DesLabel in _constitutional.keys(): + # result[DesLabel] = round(_constitutional[DesLabel](mol), 3) + #return result + + # Check if the result is a vector and handle accordingly + value = _constitutional[DesLabel](mol) + if isinstance(value, list) or hasattr(value, "__iter__"): # Check if it's a list or iterable + result[DesLabel] = [round(v, 3) for v in value] # Round each element in the vector + else: + result[DesLabel] = round(value, 3) ############################################################# diff --git a/PyBioMed/PyMolecule/estate.py b/PyBioMed/PyMolecule/estate.py index 361cb29..130e1c8 100644 --- a/PyBioMed/PyMolecule/estate.py +++ b/PyBioMed/PyMolecule/estate.py @@ -45,7 +45,7 @@ def _CalculateEState(mol, skipH=1): mol = Chem.RemoveHs(mol) tb1 = Chem.GetPeriodicTable() nAtoms = mol.GetNumAtoms() - Is = numpy.zeros(nAtoms, numpy.float) + Is = numpy.zeros(nAtoms, numpy.float64) for i in range(nAtoms): at = mol.GetAtomWithIdx(i) atNum = at.GetAtomicNum() @@ -58,7 +58,7 @@ def _CalculateEState(mol, skipH=1): Is[i] = (4.0 / (N * N) * dv + 1) / d dists = Chem.GetDistanceMatrix(mol, useBO=0, useAtomWts=0) dists += 1 - accum = numpy.zeros(nAtoms, numpy.float) + accum = numpy.zeros(nAtoms, numpy.float64) for i in range(nAtoms): for j in range(i + 1, nAtoms): p = dists[i, j] @@ -78,7 +78,7 @@ def _CalculateAtomEState(mol,AtomicNum=6): ################################################################# """ nAtoms=mol.GetNumAtoms() - Is=numpy.zeros(nAtoms,numpy.float) + Is=numpy.zeros(nAtoms,numpy.float64) Estate=_CalculateEState(mol) for i in range(nAtoms): diff --git a/PyBioMed/PyMolecule/topology.py b/PyBioMed/PyMolecule/topology.py index 61c0863..7d0fa3b 100644 --- a/PyBioMed/PyMolecule/topology.py +++ b/PyBioMed/PyMolecule/topology.py @@ -825,7 +825,7 @@ def CalculateDistanceEqualityMeanInf(mol): n=1./2*nAT**2-nAT DisType=int(Distance.max()) res=0.0 - cc=numpy.zeros(DisType,numpy.float) + cc=numpy.zeros(DisType,numpy.float64) for i in range(DisType): cc[i]=1./2*sum(sum(Distance==i+1)) diff --git a/PyBioMed/aaindex1 b/PyBioMed/aaindex1 deleted file mode 100644 index f7c90c7..0000000 --- a/PyBioMed/aaindex1 +++ /dev/null @@ -1,10575 +0,0 @@ -H ANDN920101 -D alpha-CH chemical shifts (Andersen et al., 1992) -R PMID:1575719 -A Andersen, N.H., Cao, B. and Chen, C. -T Peptide/protein structure analysis using the chemical shift index method: - upfield alpha-CH values reveal dynamic helices and aL sites -J Biochem. and Biophys. Res. Comm. 184, 1008-1014 (1992) -C BUNA790102 0.949 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 4.35 4.38 4.75 4.76 4.65 4.37 4.29 3.97 4.63 3.95 - 4.17 4.36 4.52 4.66 4.44 4.50 4.35 4.70 4.60 3.95 -// -H ARGP820101 -D Hydrophobicity index (Argos et al., 1982) -R PMID:7151796 -A Argos, P., Rao, J.K.M. and Hargrave, P.A. -T Structural prediction of membrane-bound proteins -J Eur. J. Biochem. 128, 565-575 (1982) -C JOND750101 1.000 SIMZ760101 0.967 GOLD730101 0.936 - TAKK010101 0.906 MEEJ810101 0.891 ROSM880104 0.872 - CIDH920105 0.867 LEVM760106 0.865 CIDH920102 0.862 - MEEJ800102 0.855 MEEJ810102 0.853 ZHOH040101 0.841 - CIDH920103 0.827 PLIV810101 0.820 CIDH920104 0.819 - LEVM760107 0.806 NOZY710101 0.800 GUYH850103 -0.808 - PARJ860101 -0.835 WOLS870101 -0.838 BULH740101 -0.854 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.61 0.60 0.06 0.46 1.07 0. 0.47 0.07 0.61 2.22 - 1.53 1.15 1.18 2.02 1.95 0.05 0.05 2.65 1.88 1.32 -// -H ARGP820102 -D Signal sequence helical potential (Argos et al., 1982) -R PMID:7151796 -A Argos, P., Rao, J.K.M. and Hargrave, P.A. -T Structural prediction of membrane-bound proteins -J Eur. J. Biochem. 128, 565-575 (1982) -C ARGP820103 0.961 KYTJ820101 0.803 JURD980101 0.802 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.18 0.20 0.23 0.05 1.89 0.72 0.11 0.49 0.31 1.45 - 3.23 0.06 2.67 1.96 0.76 0.97 0.84 0.77 0.39 1.08 -// -H ARGP820103 -D Membrane-buried preference parameters (Argos et al., 1982) -R PMID:7151796 -A Argos, P., Rao, J.K.M. and Hargrave, P.A. -T Structural prediction of membrane-bound proteins -J Eur. J. Biochem. 128, 565-575 (1982) -C ARGP820102 0.961 MIYS850101 0.822 NAKH900106 0.810 - EISD860103 0.810 KYTJ820101 0.806 JURD980101 0.800 - PUNT030101 -0.810 MIYS990102 -0.814 MIYS990101 -0.817 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.56 0.45 0.27 0.14 1.23 0.51 0.23 0.62 0.29 1.67 - 2.93 0.15 2.96 2.03 0.76 0.81 0.91 1.08 0.68 1.14 -// -H BEGF750101 -D Conformational parameter of inner helix (Beghin-Dirkx, 1975) -R PMID:50789 -A Beghin, F. and Dirkx, J. -T Une methode statistique simple de prediction des conformations proteiques -J Arch. Int. Physiol. Biochim. 83, 167-168 (1975) -C KANM800103 0.893 AURR980113 0.857 ROBB760103 0.852 - CHOP780201 0.841 QIAN880105 0.833 AURR980109 0.821 - QIAN880107 0.815 PALJ810102 0.811 AURR980108 0.810 - CHOP780101 -0.803 CHOP780210 -0.804 CRAJ730103 -0.812 - ROBB760108 -0.819 ROBB760113 -0.826 CHAM830101 -0.854 - PALJ810106 -0.859 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1. 0.52 0.35 0.44 0.06 0.44 0.73 0.35 0.60 0.73 - 1. 0.60 1. 0.60 0.06 0.35 0.44 0.73 0.44 0.82 -// -H BEGF750102 -D Conformational parameter of beta-structure (Beghin-Dirkx, 1975) -R PMID:50789 -A Beghin, F. and Dirkx, J. -T Une methode statistique simple de prediction des conformations proteiques -J Arch. Int. Physiol. Biochim. 83, 167-168 (1975) -C CORJ870105 0.878 CORJ870106 0.853 PRAM900103 0.834 - LEVM780102 0.834 PALJ810110 0.834 NAGK730102 0.833 - CORJ870107 0.831 QIAN880120 0.829 QIAN880119 0.811 - ROBB760106 0.809 PTIO830102 0.807 LIFS790101 0.807 - MIYS850101 0.806 PONP800107 0.803 PALJ810104 0.801 - CORJ870108 -0.825 MEIH800101 -0.832 RACS770101 -0.840 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.77 0.72 0.55 0.65 0.65 0.72 0.55 0.65 0.83 0.98 - 0.83 0.55 0.98 0.98 0.55 0.55 0.83 0.77 0.83 0.98 -// -H BEGF750103 -D Conformational parameter of beta-turn (Beghin-Dirkx, 1975) -R PMID:50789 -A Beghin, F. and Dirkx, J. -T Une methode statistique simple de prediction des conformations proteiques -J Arch. Int. Physiol. Biochim. 83, 167-168 (1975) -C ROBB760113 0.924 ROBB760108 0.922 ROBB760110 0.903 - CHOP780101 0.885 CRAJ730103 0.874 PALJ810106 0.859 - TANS770110 0.834 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.37 0.84 0.97 0.97 0.84 0.64 0.53 0.97 0.75 0.37 - 0.53 0.75 0.64 0.53 0.97 0.84 0.75 0.97 0.84 0.37 -// -H BHAR880101 -D Average flexibility indices (Bhaskaran-Ponnuswamy, 1988) -R -A Bhaskaran, R. and Ponnuswamy, P.K. -T Positional flexibilities of amino acid residues in globular proteins -J Int. J. Peptide Protein Res. 32, 241-255 (1988) -C VINM940103 0.869 KARP850102 0.806 WERD780101 -0.803 - RICJ880111 -0.813 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.357 0.529 0.463 0.511 0.346 0.493 0.497 0.544 0.323 0.462 - 0.365 0.466 0.295 0.314 0.509 0.507 0.444 0.305 0.420 0.386 -// -H BIGC670101 -D Residue volume (Bigelow, 1967) -R PMID:6048539 -A Bigelow, C.C. -T On the average hydrophobicity of proteins and the relation between it and - protein structure -J J. Theor. Biol. 16, 187-211 (1967) (Asn Gln 5.0) -C GOLD730102 1.000 KRIW790103 0.993 TSAJ990101 0.993 - TSAJ990102 0.992 CHOC750101 0.990 GRAR740103 0.984 - FAUJ880103 0.972 CHAM820101 0.966 HARY940101 0.960 - CHOC760101 0.960 PONJ960101 0.950 FASG760101 0.919 - LEVM760105 0.913 ROSG850101 0.910 DAWD720101 0.903 - LEVM760102 0.896 ZHOH040102 0.884 LEVM760106 0.876 - CHAM830106 0.870 LEVM760107 0.863 FAUJ880106 0.860 - RADA880106 0.856 MCMT640101 0.814 RADA880103 -0.865 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 52.6 109.1 75.7 68.4 68.3 89.7 84.7 36.3 91.9 102.0 - 102.0 105.1 97.7 113.9 73.6 54.9 71.2 135.4 116.2 85.1 -// -H BIOV880101 -D Information value for accessibility; average fraction 35% (Biou et al., 1988) -R PMID:3237683 -A Biou, V., Gibrat, J.F., Levin, J.M., Robson, B. and Garnier, J. -T Secondary structure prediction: combination of three different methods -J Protein Engineering 2, 185-191 (1988) -C RADA880108 0.981 ROSG850102 0.981 NISK860101 0.972 - BIOV880102 0.968 MIYS850101 0.960 WERD780101 0.951 - FAUJ830101 0.942 ZHOH040103 0.941 NADH010103 0.939 - NADH010104 0.937 CASG920101 0.935 MEIH800103 0.934 - CIDH920104 0.933 BASU050103 0.926 PONP800103 0.926 - PONP800102 0.926 NADH010102 0.921 NISK800101 0.920 - PONP800101 0.918 CORJ870101 0.917 CIDH920105 0.912 - PONP930101 0.912 BASU050102 0.909 PONP800108 0.907 - PLIV810101 0.899 MANP780101 0.899 ROBB790101 0.890 - CORJ870107 0.889 CIDH920103 0.887 BASU050101 0.883 - DESM900102 0.878 CORJ870103 0.876 JANJ780102 0.875 - ROSM880105 0.874 CORJ870106 0.870 CORJ870104 0.867 - NADH010105 0.867 CIDH920102 0.864 EISD860103 0.864 - CORJ870105 0.859 MEEJ810101 0.855 BAEK050101 0.853 - JANJ790102 0.848 CIDH920101 0.847 JURD980101 0.840 - GUOD860101 0.839 SWER830101 0.839 NADH010101 0.838 - BLAS910101 0.838 CORJ870102 0.837 KYTJ820101 0.829 - EISD860101 0.828 JANJ790101 0.827 ZHOH040101 0.825 - MEEJ810102 0.824 CHOC760103 0.823 PONP800107 0.816 - EISD840101 0.811 DESM900101 0.807 KRIW710101 -0.813 - PARS000101 -0.819 FUKS010102 -0.820 KARP850101 -0.825 - JANJ780103 -0.829 WOEC730101 -0.829 ROSM880101 -0.830 - LEVM760101 -0.831 KUHL950101 -0.834 FUKS010103 -0.840 - GUYH850104 -0.844 HOPT810101 -0.848 WOLS870101 -0.854 - ROSM880102 -0.854 RACS770103 -0.856 OOBM770101 -0.858 - KRIW790102 -0.869 FUKS010104 -0.873 VINM940102 -0.876 - PUNT030102 -0.878 KARP850102 -0.880 PUNT030101 -0.883 - CORJ870108 -0.886 PARJ860101 -0.889 GUYH850103 -0.890 - KIDA850101 -0.893 RACS770101 -0.893 VINM940103 -0.901 - GRAR740102 -0.910 KRIW790101 -0.910 OOBM770103 -0.920 - GUYH850102 -0.922 GUYH850101 -0.929 RACS770102 -0.937 - VINM940101 -0.941 MIYS990101 -0.947 MIYS990102 -0.948 - MEIH800101 -0.949 MEIH800102 -0.956 MIYS990103 -0.962 - MIYS990104 -0.965 MIYS990105 -0.975 FASG890101 -0.982 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 16. -70. -74. -78. 168. -73. -106. -13. 50. 151. - 145. -141. 124. 189. -20. -70. -38. 145. 53. 123. -// -H BIOV880102 -D Information value for accessibility; average fraction 23% (Biou et al., 1988) -R PMID:3237683 -A Biou, V., Gibrat, J.F., Levin, J.M., Robson, B. and Garnier, J. -T Secondary structure prediction: combination of three different methods -J Protein Engineering 2, 185-191 (1988) -C BIOV880101 0.968 ROSG850102 0.960 RADA880108 0.942 - NISK860101 0.939 MIYS850101 0.930 WERD780101 0.929 - CASG920101 0.919 MEIH800103 0.916 NADH010102 0.914 - NADH010103 0.913 FAUJ830101 0.911 NADH010104 0.900 - ZHOH040103 0.891 CIDH920104 0.890 CIDH920105 0.882 - CORJ870101 0.882 PONP800103 0.879 PONP930101 0.877 - DESM900102 0.876 NISK800101 0.873 ROSM880105 0.871 - BASU050103 0.868 PONP800102 0.867 JANJ780102 0.862 - PONP800101 0.860 CIDH920103 0.860 PLIV810101 0.858 - JANJ790102 0.856 PONP800108 0.854 WARP780101 0.853 - CORJ870107 0.850 MANP780101 0.847 EISD860103 0.845 - CORJ870103 0.840 BASU050102 0.838 CIDH920102 0.837 - EISD860101 0.832 NAKH900110 0.829 CORJ870105 0.823 - MEEJ810101 0.822 DESM900101 0.821 ROBB790101 0.821 - CIDH920101 0.819 CORJ870106 0.818 GUOD860101 0.817 - CORJ870104 0.815 PONP800107 0.814 EISD840101 0.814 - BASU050101 0.812 BLAS910101 0.809 JURD980101 0.805 - NADH010101 0.804 KARP850101 -0.804 KUHL950101 -0.809 - JANJ780101 -0.809 FUKS010102 -0.810 PARS000101 -0.813 - GUYH850103 -0.818 WOEC730101 -0.819 ROSM880101 -0.824 - VINM940102 -0.826 CORJ870108 -0.831 ROSM880102 -0.837 - WOLS870101 -0.842 LEVM760101 -0.847 GUYH850104 -0.855 - KARP850102 -0.859 JANJ780103 -0.860 PUNT030102 -0.860 - HOPT810101 -0.864 PARJ860101 -0.875 RACS770101 -0.875 - KRIW790101 -0.876 OOBM770101 -0.877 KRIW790102 -0.878 - GRAR740102 -0.881 GUYH850101 -0.885 FUKS010104 -0.887 - PUNT030101 -0.888 VINM940103 -0.889 KIDA850101 -0.892 - MIYS990101 -0.901 MIYS990102 -0.902 GUYH850102 -0.903 - RACS770103 -0.906 MIYS990103 -0.923 OOBM770103 -0.925 - FASG890101 -0.928 VINM940101 -0.929 MIYS990104 -0.932 - RACS770102 -0.932 MEIH800101 -0.937 MIYS990105 -0.947 - MEIH800102 -0.951 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 44. -68. -72. -91. 90. -117. -139. -8. 47. 100. - 108. -188. 121. 148. -36. -60. -54. 163. 22. 117. -// -H BROC820101 -D Retention coefficient in TFA (Browne et al., 1982) -R PMID:7125223 -A Browne, C.A., Bennett, H.P.J. and Solomon, S. -T The isolation of peptides by high-performance liquid chromatography using - predicted elution positions -J Anal. Biochem. 124, 201-208 (1982) -C BROC820102 0.925 ZIMJ680105 0.896 MEEJ800102 0.877 - TAKK010101 0.836 GUOD860101 0.832 NAKH900110 0.830 - NOZY710101 0.829 MEEJ810102 0.820 RADA880102 0.811 - BULH740101 -0.815 PARJ860101 -0.849 WOLS870101 -0.871 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 7.3 -3.6 -5.7 -2.9 -9.2 -0.3 -7.1 -1.2 -2.1 6.6 - 20.0 -3.7 5.6 19.2 5.1 -4.1 0.8 16.3 5.9 3.5 -// -H BROC820102 -D Retention coefficient in HFBA (Browne et al., 1982) -R PMID:7125223 -A Browne, C.A., Bennett, H.P.J. and Solomon, S. -T The isolation of peptides by high-performance liquid chromatography using - predicted elution positions -J Anal. Biochem. 124, 201-208 (1982) -C BROC820101 0.925 ZIMJ680105 0.865 MEEJ800102 0.857 - MEEJ800101 0.840 TAKK010101 0.839 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 3.9 3.2 -2.8 -2.8 -14.3 1.8 -7.5 -2.3 2.0 11.0 - 15.0 -2.5 4.1 14.7 5.6 -3.5 1.1 17.8 3.8 2.1 -// -H BULH740101 -D Transfer free energy to surface (Bull-Breese, 1974) -R PMID:4839053 -A Bull, H.B. and Breese, K. -T Surface tension of amino acid solutions: A hydrophobicity scale of the amino - acid residues -J Arch. Biochem. Biophys. 161, 665-670 (1974) -C WOLS870101 0.929 PARJ860101 0.909 MIYS990101 0.884 - MIYS990102 0.880 GRAR740102 0.822 GUYH850103 0.820 - COWR900101 -0.804 ROBB790101 -0.813 BROC820101 -0.815 - LEVM760106 -0.818 ZHOH040103 -0.828 CIDH920104 -0.829 - FAUJ830101 -0.830 BASU050103 -0.833 EISD860101 -0.833 - MIYS850101 -0.838 WILM950101 -0.845 BASU050102 -0.845 - CIDH920103 -0.848 CIDH920102 -0.851 JOND750101 -0.853 - ARGP820101 -0.854 BASU050101 -0.854 RADA880102 -0.856 - ZHOH040102 -0.860 BLAS910101 -0.860 TAKK010101 -0.865 - CIDH920105 -0.871 GOLD730101 -0.874 MEEJ800102 -0.875 - ZHOH040101 -0.876 MEEJ810101 -0.876 ZIMJ680105 -0.879 - MEEJ810102 -0.880 ROSM880104 -0.884 NOZY710101 -0.892 - SIMZ760101 -0.894 VENT840101 -0.907 PLIV810101 -0.912 - GUOD860101 -0.922 SWER830101 -0.923 CORJ870102 -0.923 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.20 -0.12 0.08 -0.20 -0.45 0.16 -0.30 0.00 -0.12 -2.26 - -2.46 -0.35 -1.47 -2.33 -0.98 -0.39 -0.52 -2.01 -2.24 -1.56 -// -H BULH740102 -D Apparent partial specific volume (Bull-Breese, 1974) -R PMID:4839053 -A Bull, H.B. and Breese, K. -T Surface tension of amino acid solutions: A hydrophobicity scale of the amino - acid residues -J Arch. Biochem. Biophys. 161, 665-670 (1974) (Tyr !) -C COHE430101 0.923 ZIMJ680102 0.825 GOLD730101 0.825 - SIMZ760101 0.815 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.691 0.728 0.596 0.558 0.624 0.649 0.632 0.592 0.646 0.809 - 0.842 0.767 0.709 0.756 0.730 0.594 0.655 0.743 0.743 0.777 -// -H BUNA790101 -D alpha-NH chemical shifts (Bundi-Wuthrich, 1979) -R -A Bundi, A. and Wuthrich, K. -T 1H-nmr parameters of the common amino acid residues measured in aqueous - solutions of the linear tetrapeptides H-Gly-Gly-X-L-Ala-OH -J Biopolymers 18, 285-297 (1979) (Pro !) -C BLAM930101 0.945 ONEK900101 0.902 ROBB760104 0.823 - FAUJ880113 0.818 CHOP780213 -0.822 ISOY800104 -0.842 - MUNV940104 -0.865 TANS770104 -0.867 MUNV940105 -0.874 - GEOR030109 -0.901 AVBF000104 -0.922 ONEK900102 -0.949 - FINA910102 -0.992 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 8.249 8.274 8.747 8.410 8.312 8.411 8.368 8.391 8.415 8.195 - 8.423 8.408 8.418 8.228 0. 8.380 8.236 8.094 8.183 8.436 -// -H BUNA790102 -D alpha-CH chemical shifts (Bundi-Wuthrich, 1979) -R -A Bundi, A. and Wuthrich, K. -T 1H-nmr parameters of the common amino acid residues measured in aqueous - solutions of the linear tetrapeptides H-Gly-Gly-X-L-Ala-OH -J Biopolymers 18, 285-297 (1979) -C ANDN920101 0.949 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 4.349 4.396 4.755 4.765 4.686 4.373 4.295 3.972 4.630 4.224 - 4.385 4.358 4.513 4.663 4.471 4.498 4.346 4.702 4.604 4.184 -// -H BUNA790103 -D Spin-spin coupling constants 3JHalpha-NH (Bundi-Wuthrich, 1979) -R -A Bundi, A. and Wuthrich, K. -T 1H-nmr parameters of the common amino acid residues measured in aqueous - solutions of the linear tetrapeptides H-Gly-Gly-X-L-Ala-OH -J Biopolymers 18, 285-297 (1979) (Met Pro Trp !) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.5 6.9 7.5 7.0 7.7 6.0 7.0 5.6 8.0 7.0 - 6.5 6.5 0. 9.4 0. 6.5 6.9 0. 6.8 7.0 -// -H BURA740101 -D Normalized frequency of alpha-helix (Burgess et al., 1974) -R -A Burgess, A.W., Ponnuswamy, P.K. and Scheraga, H.A. -T Analysis of conformations of amino acid residues and prediction of backbone - topography in proteins -J Isr. J. Chem. 12, 239-286 (1974) -C CHOP780201 0.917 TANS770101 0.917 ROBB760101 0.912 - CRAJ730101 0.900 PALJ810102 0.900 NAGK730101 0.883 - GEIM800101 0.858 KANM800101 0.855 MAXF760101 0.852 - PALJ810101 0.850 ISOY800101 0.839 LEVM780104 0.833 - GEIM800104 0.819 KANM800103 0.810 RACS820108 0.809 - AURR980108 0.808 PRAM900102 0.805 LEVM780101 0.805 - NAGK730103 -0.830 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.486 0.262 0.193 0.288 0.200 0.418 0.538 0.120 0.400 0.370 - 0.420 0.402 0.417 0.318 0.208 0.200 0.272 0.462 0.161 0.379 -// -H BURA740102 -D Normalized frequency of extended structure (Burgess et al., 1974) -R -A Burgess, A.W., Ponnuswamy, P.K. and Scheraga, H.A. -T Analysis of conformations of amino acid residues and prediction of backbone - topography in proteins -J Isr. J. Chem. 12, 239-286 (1974) -C ROBB760105 0.821 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.288 0.362 0.229 0.271 0.533 0.327 0.262 0.312 0.200 0.411 - 0.400 0.265 0.375 0.318 0.340 0.354 0.388 0.231 0.429 0.495 -// -H CHAM810101 -D Steric parameter (Charton, 1981) -R PMID:7300379 -A Charton, M. -T Protein folding and the genetic code: An alternative quantitative model -J J. Theor. Biol. 91, 115-123 (1981) (Pro !) -C FAUJ880102 0.881 LEVM760104 -0.818 KIMC930101 -0.848 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.52 0.68 0.76 0.76 0.62 0.68 0.68 0.00 0.70 1.02 - 0.98 0.68 0.78 0.70 0.36 0.53 0.50 0.70 0.70 0.76 -// -H CHAM820101 -D Polarizability parameter (Charton-Charton, 1982) -R PMID:7183857 -A Charton, M. and Charton, B.I. -T The structural dependence of amino acid hydrophobicity parameters -J J. Theor. Biol. 99, 629-644 (1982) (Pro 0.018) -C FAUJ880103 0.992 CHOC750101 0.982 TSAJ990102 0.978 - TSAJ990101 0.977 GOLD730102 0.967 CHOC760101 0.966 - BIGC670101 0.966 KRIW790103 0.963 FASG760101 0.962 - GRAR740103 0.951 PONJ960101 0.938 HARY940101 0.933 - ROSG850101 0.917 LEVM760102 0.915 LEVM760105 0.915 - FAUJ880106 0.902 CHAM830106 0.899 LEVM760107 0.891 - MCMT640101 0.871 DAWD720101 0.865 RADA880106 0.847 - ZHOH040102 0.826 LEVM760106 0.818 HUTJ700102 0.815 - CHAM830105 0.809 SNEP660103 0.808 RADA880103 -0.912 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.046 0.291 0.134 0.105 0.128 0.180 0.151 0.000 0.230 0.186 - 0.186 0.219 0.221 0.290 0.131 0.062 0.108 0.409 0.298 0.140 -// -H CHAM820102 -D Free energy of solution in water, kcal/mole (Charton-Charton, 1982) -R PMID:7183857 -A Charton, M. and Charton, B.I. -T The structural dependence of amino acid hydrophobicity parameters -J J. Theor. Biol. 99, 629-644 (1982) (Asn His Lys Thr !) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.368 -1.03 0. 2.06 4.53 0.731 1.77 -0.525 0. 0.791 - 1.07 0. 0.656 1.06 -2.24 -0.524 0. 1.60 4.91 0.401 -// -H CHAM830101 -D The Chou-Fasman parameter of the coil conformation (Charton-Charton, 1983) -R PMID:6876837 -A Charton, M. and Charton, B. -T The dependence of the Chou-Fasman parameters on amino acid side chain - structure -J J. Theor. Biol. 111, 447-450 (1983) -C CHOP780101 0.946 CHOP780216 0.942 PALJ810106 0.939 - GEIM800111 0.938 CHOP780203 0.931 QIAN880132 0.925 - TANS770110 0.917 GEIM800108 0.916 QIAN880133 0.913 - LEVM780103 0.909 PRAM900104 0.909 CHOP780210 0.905 - LEVM780106 0.900 ISOY800103 0.881 QIAN880131 0.860 - NAGK730103 0.857 ROBB760113 0.841 QIAN880134 0.841 - PALJ810105 0.826 CRAJ730103 0.821 QIAN880135 0.814 - ROBB760108 0.812 ROBB760110 0.804 AVBF000102 -0.803 - QIAN880105 -0.803 PALJ810102 -0.808 FAUJ880102 -0.809 - ISOY800101 -0.815 RICJ880109 -0.826 CHOP780201 -0.828 - AURR980113 -0.828 ROBB760101 -0.828 AURR980108 -0.834 - PTIO830101 -0.841 AURR980114 -0.842 BEGF750101 -0.854 - QIAN880106 -0.856 QIAN880107 -0.858 ROBB760103 -0.878 - KANM800103 -0.889 SUEM840101 -0.891 AURR980109 -0.896 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.71 1.06 1.37 1.21 1.19 0.87 0.84 1.52 1.07 0.66 - 0.69 0.99 0.59 0.71 1.61 1.34 1.08 0.76 1.07 0.63 -// -H CHAM830102 -D A parameter defined from the residuals obtained from the best correlation of - the Chou-Fasman parameter of beta-sheet (Charton-Charton, 1983) -R PMID:6876837 -A Charton, M. and Charton, B. -T The dependence of the Chou-Fasman parameters on amino acid side chain - structure -J J. Theor. Biol. 111, 447-450 (1983) (Pro !) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.118 0.124 0.289 0.048 0.083 -0.105 -0.245 0.104 0.138 0.230 - -0.052 0.032 -0.258 0.015 0. 0.225 0.166 0.158 0.094 0.513 -// -H CHAM830103 -D The number of atoms in the side chain labelled 1+1 (Charton-Charton, 1983) -R PMID:6876837 -A Charton, M. and Charton, B. -T The dependence of the Chou-Fasman parameters on amino acid side chain - structure -J J. Theor. Biol. 111, 447-450 (1983) (Pro !) -C AVBF000101 0.843 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0. 1. 1. 1. 1. 1. 1. 0. 1. 2. - 1. 1. 1. 1. 0. 1. 2. 1. 1. 2. -// -H CHAM830104 -D The number of atoms in the side chain labelled 2+1 (Charton-Charton, 1983) -R PMID: -A Charton, M. and Charton, B. -T The dependence of the Chou-Fasman parameters on amino acid side chain - structure -J J. Theor. Biol. 111, 447-450 (1983) (Pro !) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0. 1. 1. 1. 0. 1. 1. 0. 1. 1. - 2. 1. 1. 1. 0. 0. 0. 1. 1. 0. -// -H CHAM830105 -D The number of atoms in the side chain labelled 3+1 (Charton-Charton, 1983) -R PMID:6876837 -A Charton, M. and Charton, B. -T The dependence of the Chou-Fasman parameters on amino acid side chain - structure -J J. Theor. Biol. 111, 447-450 (1983) (Pro !) -C CHAM830106 0.874 LEVM760102 0.843 FASG760101 0.839 - CHOC760101 0.833 LEVM760105 0.829 FAUJ880103 0.813 - CHAM820101 0.809 RADA880103 -0.808 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0. 1. 0. 0. 0. 1. 1. 0. 1. 0. - 0. 1. 1. 1. 0. 0. 0. 1.5 1. 0. -// -H CHAM830106 -D The number of bonds in the longest chain (Charton-Charton, 1983) -R PMID:6876837 -A Charton, M. and Charton, B. -T The dependence of the Chou-Fasman parameters on amino acid side chain - structure -J J. Theor. Biol. 111, 447-450 (1983) (Pro !) -C LEVM760102 0.962 LEVM760105 0.958 FASG760101 0.943 - CHOC760101 0.937 FAUJ880103 0.927 RADA880106 0.922 - PONJ960101 0.917 CHOC750101 0.906 CHAM820101 0.899 - TSAJ990102 0.896 HARY940101 0.894 GRAR740103 0.890 - TSAJ990101 0.889 KRIW790103 0.876 CHAM830105 0.874 - BIGC670101 0.870 GOLD730102 0.869 OOBM770102 0.858 - FAUJ880106 0.845 FAUJ880104 0.817 RADA880103 -0.901 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0. 5. 2. 2. 1. 3. 3. 0. 3. 2. - 2. 4. 3. 4. 0. 1. 1. 5. 5. 1. -// -H CHAM830107 -D A parameter of charge transfer capability (Charton-Charton, 1983) -R PMID:6876837 -A Charton, M. and Charton, B. -T The dependence of the Chou-Fasman parameters on amino acid side chain - structure -J J. Theor. Biol. 111, 447-450 (1983) (Pro !) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0. 0. 1. 1. 0. 0. 1. 1. 0. 0. - 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. -// -H CHAM830108 -D A parameter of charge transfer donor capability (Charton-Charton, 1983) -R PMID:6876837 -A Charton, M. and Charton, B. -T The dependence of the Chou-Fasman parameters on amino acid side chain - structure -J J. Theor. Biol. 111, 447-450 (1983) (Pro !) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0. 1. 1. 0. 1. 1. 0. 0. 1. 0. - 0. 1. 1. 1. 0. 0. 0. 1. 1. 0. -// -H CHOC750101 -D Average volume of buried residue (Chothia, 1975) -R PMID:1118010 -A Chothia, C. -T Structural invariants in protein folding -J Nature 254, 304-308 (1975) (Arg missing) -C TSAJ990102 0.996 TSAJ990101 0.995 FAUJ880103 0.990 - BIGC670101 0.990 GOLD730102 0.989 CHAM820101 0.982 - KRIW790103 0.982 CHOC760101 0.981 GRAR740103 0.973 - PONJ960101 0.966 HARY940101 0.961 FASG760101 0.956 - LEVM760105 0.939 LEVM760102 0.933 ROSG850101 0.908 - CHAM830106 0.906 DAWD720101 0.901 FAUJ880106 0.888 - RADA880106 0.867 LEVM760107 0.858 ZHOH040102 0.856 - LEVM760106 0.841 MCMT640101 0.822 HUTJ700102 0.802 - RADA880103 -0.892 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 91.5 202.0 135.2 124.5 117.7 161.1 155.1 66.4 167.3 168.8 - 167.9 171.3 170.8 203.4 129.3 99.1 122.1 237.6 203.6 141.7 -// -H CHOC760101 -D Residue accessible surface area in tripeptide (Chothia, 1976) -R PMID:994183 -A Chothia, C. -T The nature of the accessible and buried surfaces in proteins -J J. Mol. Biol. 105, 1-14 (1976) -C FAUJ880103 0.985 CHOC750101 0.981 FASG760101 0.978 - LEVM760102 0.972 TSAJ990102 0.972 LEVM760105 0.968 - TSAJ990101 0.968 CHAM820101 0.966 PONJ960101 0.961 - GOLD730102 0.960 BIGC670101 0.960 KRIW790103 0.948 - HARY940101 0.946 GRAR740103 0.945 CHAM830106 0.937 - DAWD720101 0.901 FAUJ880106 0.898 RADA880106 0.875 - WOLS870102 0.845 ROSG850101 0.842 FAUJ880104 0.835 - CHAM830105 0.833 OOBM770102 0.824 HUTJ700102 0.819 - MCMT640101 0.809 LEVM760107 0.807 RADA880103 -0.924 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 115. 225. 160. 150. 135. 180. 190. 75. 195. 175. - 170. 200. 185. 210. 145. 115. 140. 255. 230. 155. -// -H CHOC760102 -D Residue accessible surface area in folded protein (Chothia, 1976) -R PMID:994183 -A Chothia, C. -T The nature of the accessible and buried surfaces in proteins -J J. Mol. Biol. 105, 1-14 (1976) -C JANJ780101 0.973 GUYH850104 0.970 JANJ780103 0.959 - GUYH850105 0.946 OOBM770101 0.925 FAUJ880109 0.872 - ROSM880102 0.845 MEIH800102 0.839 PRAM900101 0.826 - ENGD860101 0.826 PUNT030101 0.809 RACS770102 0.809 - GUYH850101 0.807 KIDA850101 0.804 MEIH800103 -0.802 - EISD860103 -0.802 JACR890101 -0.803 NADH010104 -0.809 - JANJ790101 -0.809 RADA880101 -0.814 ROSG850102 -0.819 - DESM900102 -0.823 RADA880104 -0.830 WOLR790101 -0.834 - KYTJ820101 -0.838 WOLR810101 -0.840 NADH010103 -0.840 - CHOC760104 -0.845 WARP780101 -0.849 JURD980101 -0.851 - OLSK800101 -0.886 EISD840101 -0.892 NADH010102 -0.893 - CHOC760103 -0.912 RADA880107 -0.925 JANJ780102 -0.935 - JANJ790102 -0.969 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 25. 90. 63. 50. 19. 71. 49. 23. 43. 18. - 23. 97. 31. 24. 50. 44. 47. 32. 60. 18. -// -H CHOC760103 -D Proportion of residues 95% buried (Chothia, 1976) -R PMID:994183 -A Chothia, C. -T The nature of the accessible and buried surfaces in proteins -J J. Mol. Biol. 105, 1-14 (1976) -C OLSK800101 0.981 JURD980101 0.967 KYTJ820101 0.964 - JANJ780102 0.950 NADH010102 0.910 CHOC760104 0.907 - JANJ790102 0.905 EISD860103 0.892 JANJ790101 0.887 - EISD840101 0.885 NADH010101 0.881 DESM900102 0.877 - NADH010103 0.875 WOLR810101 0.873 RADA880107 0.870 - MEIH800103 0.865 MANP780101 0.859 WOLR790101 0.857 - RADA880101 0.853 ROSG850102 0.851 NADH010104 0.848 - PONP800103 0.837 PONP800102 0.836 PONP800101 0.830 - RADA880108 0.830 WARP780101 0.824 NAKH920108 0.824 - BIOV880101 0.823 CORJ870101 0.822 RADA880104 0.821 - COWR900101 0.820 PONP930101 0.816 PONP800107 0.813 - MIYS850101 0.810 LIFS790102 0.810 PONP800108 0.809 - BASU050103 0.805 MIYS990101 -0.803 MIYS990102 -0.805 - FAUJ880109 -0.806 ENGD860101 -0.813 PRAM900101 -0.814 - ROSM880101 -0.819 FASG890101 -0.849 GUYH850101 -0.856 - PUNT030101 -0.859 KUHL950101 -0.865 ROSM880102 -0.869 - RACS770102 -0.875 JANJ780103 -0.888 JANJ780101 -0.892 - MEIH800102 -0.894 OOBM770101 -0.902 GUYH850104 -0.907 - CHOC760102 -0.912 GUYH850105 -0.933 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.38 0.01 0.12 0.15 0.45 0.07 0.18 0.36 0.17 0.60 - 0.45 0.03 0.40 0.50 0.18 0.22 0.23 0.27 0.15 0.54 -// -H CHOC760104 -D Proportion of residues 100% buried (Chothia, 1976) -R PMID:994183 -A Chothia, C. -T The nature of the accessible and buried surfaces in proteins -J J. Mol. Biol. 105, 1-14 (1976) (normalized by the total number) -C CHOC760103 0.907 JANJ780102 0.903 KYTJ820101 0.889 - JANJ790101 0.886 OLSK800101 0.872 JURD980101 0.870 - WOLR810101 0.868 WOLR790101 0.851 PONP800104 0.844 - JANJ790102 0.835 DESM900102 0.824 NADH010102 0.817 - WARP780101 0.815 NADH010101 0.804 GUYH850105 -0.822 - CHOC760102 -0.845 GUYH850104 -0.845 JANJ780103 -0.851 - JANJ780101 -0.854 OOBM770101 -0.857 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.20 0.00 0.03 0.04 0.22 0.01 0.03 0.18 0.02 0.19 - 0.16 0.00 0.11 0.14 0.04 0.08 0.08 0.04 0.03 0.18 -// -H CHOP780101 -D Normalized frequency of beta-turn (Chou-Fasman, 1978a) -R PMID:354496 -A Chou, P.Y. and Fasman, G.D. -T Empirical predictions of protein conformation -J Ann. Rev. Biochem. 47, 251-276 (1978) -C PALJ810106 0.977 TANS770110 0.956 CHAM830101 0.946 - CHOP780203 0.940 CHOP780216 0.929 CHOP780210 0.921 - ROBB760113 0.907 GEIM800108 0.899 QIAN880133 0.897 - QIAN880132 0.896 LEVM780103 0.893 PRAM900104 0.891 - LEVM780106 0.890 ROBB760108 0.887 BEGF750103 0.885 - ISOY800103 0.885 CRAJ730103 0.882 GEIM800111 0.878 - PALJ810105 0.868 ROBB760110 0.863 NAGK730103 0.827 - QIAN880131 0.824 AURR980114 -0.803 BEGF750101 -0.803 - QIAN880107 -0.809 KANM800103 -0.824 AURR980109 -0.837 - SUEM840101 -0.845 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.66 0.95 1.56 1.46 1.19 0.98 0.74 1.56 0.95 0.47 - 0.59 1.01 0.60 0.60 1.52 1.43 0.96 0.96 1.14 0.50 -// -H CHOP780201 -D Normalized frequency of alpha-helix (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C PALJ810102 0.981 ROBB760101 0.969 ISOY800101 0.959 - MAXF760101 0.956 KANM800101 0.956 TANS770101 0.947 - BURA740101 0.917 GEIM800101 0.912 KANM800103 0.912 - NAGK730101 0.886 LEVM780104 0.886 PALJ810101 0.881 - QIAN880106 0.874 PRAM900102 0.873 LEVM780101 0.873 - GEIM800104 0.868 RACS820108 0.868 AURR980108 0.867 - AURR980109 0.859 AURR980112 0.856 CRAJ730101 0.851 - QIAN880107 0.843 BEGF750101 0.841 QIAN880105 0.835 - AURR980114 0.828 AURR980115 0.816 AURR980110 0.814 - PALJ810109 0.814 AURR980111 0.813 ROBB760103 0.806 - MUNV940101 -0.802 CRAJ730103 -0.808 ROBB760113 -0.811 - MUNV940102 -0.812 CHAM830101 -0.828 NAGK730103 -0.837 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.42 0.98 0.67 1.01 0.70 1.11 1.51 0.57 1.00 1.08 - 1.21 1.16 1.45 1.13 0.57 0.77 0.83 1.08 0.69 1.06 -// -H CHOP780202 -D Normalized frequency of beta-sheet (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C PALJ810104 0.970 LIFS790101 0.947 KANM800102 0.945 - PALJ810103 0.937 ROBB760106 0.931 LEVM780105 0.930 - GEIM800107 0.929 QIAN880120 0.915 PTIO830102 0.913 - QIAN880121 0.911 LIFS790103 0.908 GEIM800105 0.890 - ROBB760105 0.885 BASU050101 0.883 BASU050103 0.874 - PONP930101 0.867 NAGK730102 0.858 QIAN880119 0.855 - CHOP780208 0.851 BASU050102 0.841 KANM800104 0.839 - GEIM800106 0.839 LEVM780102 0.833 PRAM900103 0.833 - NISK860101 0.832 SWER830101 0.823 CORJ870102 0.822 - CHOP780209 0.822 CORJ870101 0.815 PALJ810112 0.815 - PONP800108 0.809 PALJ810110 0.808 MANP780101 0.805 - VENT840101 0.805 MIYS990102 -0.801 PUNT030102 -0.803 - VINM940102 -0.810 OOBM770103 -0.820 GEIM800110 -0.824 - MIYS990103 -0.825 MIYS990104 -0.829 VINM940101 -0.831 - MUNV940103 -0.892 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.83 0.93 0.89 0.54 1.19 1.10 0.37 0.75 0.87 1.60 - 1.30 0.74 1.05 1.38 0.55 0.75 1.19 1.37 1.47 1.70 -// -H CHOP780203 -D Normalized frequency of beta-turn (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C CHOP780216 0.979 CHOP780101 0.940 TANS770110 0.940 - LEVM780106 0.935 GEIM800111 0.933 ISOY800103 0.933 - CHAM830101 0.931 PRAM900104 0.928 QIAN880132 0.928 - LEVM780103 0.927 GEIM800108 0.925 CHOP780210 0.918 - QIAN880133 0.915 PALJ810106 0.907 PALJ810105 0.878 - QIAN880131 0.861 QIAN880134 0.838 RACS770101 0.827 - QIAN880135 0.811 CORJ870106 -0.813 QIAN880119 -0.814 - CORJ870105 -0.815 PONP800107 -0.818 SUEM840101 -0.892 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.74 1.01 1.46 1.52 0.96 0.96 0.95 1.56 0.95 0.47 - 0.50 1.19 0.60 0.66 1.56 1.43 0.98 0.60 1.14 0.59 -// -H CHOP780204 -D Normalized frequency of N-terminal helix (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C ROBB760102 0.911 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.29 0.44 0.81 2.02 0.66 1.22 2.44 0.76 0.73 0.67 - 0.58 0.66 0.71 0.61 2.01 0.74 1.08 1.47 0.68 0.61 -// -H CHOP780205 -D Normalized frequency of C-terminal helix (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C ROBB760104 0.841 QIAN880109 0.806 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.20 1.25 0.59 0.61 1.11 1.22 1.24 0.42 1.77 0.98 - 1.13 1.83 1.57 1.10 0.00 0.96 0.75 0.40 0.73 1.25 -// -H CHOP780206 -D Normalized frequency of N-terminal non helical region (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.70 0.34 1.42 0.98 0.65 0.75 1.04 1.41 1.22 0.78 - 0.85 1.01 0.83 0.93 1.10 1.55 1.09 0.62 0.99 0.75 -// -H CHOP780207 -D Normalized frequency of C-terminal non helical region (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.52 1.24 1.64 1.06 0.94 0.70 0.59 1.64 1.86 0.87 - 0.84 1.49 0.52 1.04 1.58 0.93 0.86 0.16 0.96 0.32 -// -H CHOP780208 -D Normalized frequency of N-terminal beta-sheet (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C NAGK730102 0.860 CHOP780202 0.851 ROBB760106 0.846 - LIFS790101 0.820 QIAN880119 0.807 KANM800102 0.804 - QIAN880120 0.800 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.86 0.90 0.66 0.38 0.87 1.65 0.35 0.63 0.54 1.94 - 1.30 1.00 1.43 1.50 0.66 0.63 1.17 1.49 1.07 1.69 -// -H CHOP780209 -D Normalized frequency of C-terminal beta-sheet (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C PALJ810104 0.849 CHOP780202 0.822 VENT840101 0.817 - PTIO830102 0.814 QIAN880121 0.809 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.75 0.90 1.21 0.85 1.11 0.65 0.55 0.74 0.90 1.35 - 1.27 0.74 0.95 1.50 0.40 0.79 0.75 1.19 1.96 1.79 -// -H CHOP780210 -D Normalized frequency of N-terminal non beta region (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C CHOP780101 0.921 CHOP780203 0.918 PALJ810106 0.905 - CHAM830101 0.905 CHOP780216 0.896 GEIM800108 0.896 - GEIM800111 0.867 TANS770110 0.858 QIAN880132 0.852 - LEVM780103 0.852 PRAM900104 0.850 ISOY800103 0.829 - QIAN880131 0.826 QIAN880133 0.820 NAGK730103 0.814 - LEVM780106 0.812 PALJ810105 0.803 RICJ880111 -0.804 - BEGF750101 -0.804 RICJ880107 -0.818 PONP800107 -0.820 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.67 0.89 1.86 1.39 1.34 1.09 0.92 1.46 0.78 0.59 - 0.46 1.09 0.52 0.30 1.58 1.41 1.09 0.48 1.23 0.42 -// -H CHOP780211 -D Normalized frequency of C-terminal non beta region (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C ROBB760112 0.841 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.74 1.05 1.13 1.32 0.53 0.77 0.85 1.68 0.96 0.53 - 0.59 0.82 0.85 0.44 1.69 1.49 1.16 1.59 1.01 0.59 -// -H CHOP780212 -D Frequency of the 1st residue in turn (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C PALJ810106 0.801 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.060 0.070 0.161 0.147 0.149 0.074 0.056 0.102 0.140 0.043 - 0.061 0.055 0.068 0.059 0.102 0.120 0.086 0.077 0.082 0.062 -// -H CHOP780213 -D Frequency of the 2nd residue in turn (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C TANS770104 0.954 ISOY800104 0.916 QIAN880134 0.870 - QIAN880135 0.851 MUNV940104 0.836 FINA910102 0.832 - MUNV940105 0.826 GEOR030109 0.800 BUNA790101 -0.822 - BLAM930101 -0.824 PTIO830101 -0.835 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.076 0.106 0.083 0.110 0.053 0.098 0.060 0.085 0.047 0.034 - 0.025 0.115 0.082 0.041 0.301 0.139 0.108 0.013 0.065 0.048 -// -H CHOP780214 -D Frequency of the 3rd residue in turn (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C ISOY800105 0.923 TANS770105 0.862 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.035 0.099 0.191 0.179 0.117 0.037 0.077 0.190 0.093 0.013 - 0.036 0.072 0.014 0.065 0.034 0.125 0.065 0.064 0.114 0.028 -// -H CHOP780215 -D Frequency of the 4th residue in turn (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C ROBB760111 0.825 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.058 0.085 0.091 0.081 0.128 0.098 0.064 0.152 0.054 0.056 - 0.070 0.095 0.055 0.065 0.068 0.106 0.079 0.167 0.125 0.053 -// -H CHOP780216 -D Normalized frequency of the 2nd and 3rd residues in turn (Chou-Fasman, 1978b) -R PMID:364941 -A Chou, P.Y. and Fasman, G.D. -T Prediction of the secondary structure of proteins from their amino acid - sequence -J Adv. Enzymol. 47, 45-148 (1978) -C CHOP780203 0.979 GEIM800111 0.955 LEVM780106 0.953 - LEVM780103 0.952 PRAM900104 0.951 CHAM830101 0.942 - GEIM800108 0.942 QIAN880133 0.939 QIAN880132 0.931 - TANS770110 0.930 CHOP780101 0.929 ISOY800103 0.921 - PALJ810106 0.904 QIAN880134 0.900 CHOP780210 0.896 - QIAN880135 0.884 PALJ810105 0.881 QIAN880131 0.873 - NAGK730103 0.819 QIAN880120 -0.800 CORJ870106 -0.803 - FAUJ880102 -0.807 KANM800103 -0.808 QIAN880107 -0.808 - ROBB760103 -0.841 PTIO830101 -0.855 SUEM840101 -0.874 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.64 1.05 1.56 1.61 0.92 0.84 0.80 1.63 0.77 0.29 - 0.36 1.13 0.51 0.62 2.04 1.52 0.98 0.48 1.08 0.43 -// -H CIDH920101 -D Normalized hydrophobicity scales for alpha-proteins (Cid et al., 1992) -R PMID:1518784 -A Cid, H., Bunster, M., Canales, M. and Gazitua, F. -T Hydrophobicity and structural classes in proteins -J Protein Engineering 5, 373-375 (1992) -C CIDH920102 0.921 CIDH920105 0.921 NISK860101 0.882 - WERD780101 0.878 CIDH920103 0.872 RADA880108 0.858 - BASU050102 0.858 ZHOH040101 0.855 CORJ870102 0.855 - SWER830101 0.853 BIOV880101 0.847 ROBB790101 0.846 - ZHOH040103 0.845 CORJ870107 0.843 MIYS850101 0.843 - PLIV810101 0.843 CORJ870104 0.840 BASU050101 0.839 - CIDH920104 0.833 CORJ870106 0.832 ROSG850101 0.831 - CORJ870105 0.828 BASU050103 0.828 LEVM760106 0.826 - CORJ870103 0.825 BIOV880102 0.819 ZHOH040102 0.811 - PONP800101 0.805 VINM940103 -0.814 OOBM770103 -0.818 - KARP850102 -0.828 RACS770101 -0.837 MIYS990103 -0.838 - GUYH850102 -0.843 CORJ870108 -0.845 MIYS990102 -0.846 - MIYS990101 -0.847 MIYS990105 -0.849 VINM940101 -0.854 - FUKS010103 -0.854 GUYH850103 -0.854 MIYS990104 -0.860 - MEIH800101 -0.863 KARP850101 -0.864 PARJ860101 -0.871 - PARS000101 -0.877 VINM940102 -0.885 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.45 -0.24 -0.20 -1.52 0.79 -0.99 -0.80 -1.00 1.07 0.76 - 1.29 -0.36 1.37 1.48 -0.12 -0.98 -0.70 1.38 1.49 1.26 -// -H CIDH920102 -D Normalized hydrophobicity scales for beta-proteins (Cid et al., 1992) -R PMID:1518784 -A Cid, H., Bunster, M., Canales, M. and Gazitua, F. -T Hydrophobicity and structural classes in proteins -J Protein Engineering 5, 373-375 (1992) -C CIDH920105 0.969 ZHOH040101 0.939 CIDH920101 0.921 - BASU050102 0.914 CIDH920103 0.911 ZHOH040103 0.909 - CIDH920104 0.904 NISK860101 0.897 ROBB790101 0.896 - NOZY710101 0.889 MEEJ810101 0.887 PLIV810101 0.877 - LEVM760106 0.873 MIYS850101 0.873 CORJ870102 0.872 - WERD780101 0.871 SWER830101 0.870 ROSG850101 0.866 - BIOV880101 0.864 ZHOH040102 0.862 RADA880102 0.862 - ARGP820101 0.862 JOND750101 0.861 ROSM880104 0.859 - TAKK010101 0.859 BASU050101 0.858 MEEJ800102 0.856 - FAUJ830101 0.856 BASU050103 0.856 MEEJ810102 0.843 - BIOV880102 0.837 WIMW960101 0.837 RADA880108 0.833 - SIMZ760101 0.832 GUOD860101 0.831 GOLD730101 0.829 - PONP930101 0.820 EISD860101 0.819 ZASB820101 0.809 - LIFS790101 0.808 BLAS910101 0.805 CASG920101 0.802 - RACS770101 -0.825 VINM940103 -0.826 FUKS010103 -0.826 - GRAR740102 -0.842 MIYS990103 -0.845 BULH740101 -0.851 - GUYH850102 -0.855 MIYS990105 -0.859 MEIH800101 -0.867 - WOLS870101 -0.869 MIYS990102 -0.870 PARS000101 -0.871 - VINM940101 -0.872 MIYS990101 -0.872 KARP850101 -0.873 - MIYS990104 -0.877 OOBM770103 -0.877 GUYH850103 -0.904 - VINM940102 -0.925 PARJ860101 -0.930 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.08 -0.09 -0.70 -0.71 0.76 -0.40 -1.31 -0.84 0.43 1.39 - 1.24 -0.09 1.27 1.53 -0.01 -0.93 -0.59 2.25 1.53 1.09 -// -H CIDH920103 -D Normalized hydrophobicity scales for alpha+beta-proteins (Cid et al., 1992) -R PMID:1518784 -A Cid, H., Bunster, M., Canales, M. and Gazitua, F. -T Hydrophobicity and structural classes in proteins -J Protein Engineering 5, 373-375 (1992) -C CIDH920105 0.973 CIDH920104 0.955 CIDH920102 0.911 - NISK860101 0.909 MIYS850101 0.906 MANP780101 0.905 - PLIV810101 0.899 PONP930101 0.899 BASU050103 0.894 - BASU050101 0.894 RADA880108 0.891 BIOV880101 0.887 - BASU050102 0.887 ROBB790101 0.884 WERD780101 0.881 - ZHOH040103 0.881 PONP800101 0.876 CIDH920101 0.872 - FAUJ830101 0.868 CORJ870107 0.866 ROSM880104 0.866 - SWER830101 0.865 CORJ870102 0.864 BIOV880102 0.860 - CORJ870104 0.857 CORJ870103 0.856 NISK800101 0.855 - PONP800102 0.849 ROSG850102 0.846 GUOD860101 0.845 - PONP800108 0.841 BLAS910101 0.838 MEEJ810101 0.837 - CORJ870106 0.837 PONP800107 0.833 ROSM880105 0.832 - CORJ870105 0.832 ZHOH040101 0.829 CASG920101 0.827 - ARGP820101 0.827 JOND750101 0.826 PONP800103 0.823 - CORJ870101 0.822 EISD860101 0.821 RADA880102 0.819 - LIFS790101 0.815 PTIO830102 0.807 MEIH800103 0.802 - FUKS010103 -0.804 PUNT030102 -0.810 KRIW790101 -0.819 - PUNT030101 -0.819 PARS000101 -0.821 MEIH800102 -0.825 - RACS770102 -0.834 VINM940101 -0.837 FASG890101 -0.846 - BULH740101 -0.848 KARP850102 -0.852 VINM940102 -0.855 - OOBM770103 -0.863 CORJ870108 -0.864 MIYS990103 -0.870 - GRAR740102 -0.871 GUYH850102 -0.871 MIYS990105 -0.876 - WOLS870101 -0.879 RACS770101 -0.881 MIYS990104 -0.883 - GUYH850103 -0.890 MIYS990102 -0.899 MIYS990101 -0.900 - MEIH800101 -0.905 PARJ860101 -0.916 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.36 -0.52 -0.90 -1.09 0.70 -1.05 -0.83 -0.82 0.16 2.17 - 1.18 -0.56 1.21 1.01 -0.06 -0.60 -1.20 1.31 1.05 1.21 -// -H CIDH920104 -D Normalized hydrophobicity scales for alpha/beta-proteins (Cid et al., 1992) -R PMID:1518784 -A Cid, H., Bunster, M., Canales, M. and Gazitua, F. -T Hydrophobicity and structural classes in proteins -J Protein Engineering 5, 373-375 (1992) -C CIDH920105 0.970 CIDH920103 0.955 NISK860101 0.944 - ZHOH040103 0.941 BASU050103 0.941 BASU050102 0.934 - BIOV880101 0.933 PONP930101 0.930 FAUJ830101 0.922 - MANP780101 0.918 BASU050101 0.917 MIYS850101 0.915 - RADA880108 0.914 PONP800108 0.909 CIDH920102 0.904 - ROBB790101 0.903 CASG920101 0.903 NISK800101 0.900 - ROSG850102 0.896 CORJ870101 0.896 WERD780101 0.896 - PLIV810101 0.893 BIOV880102 0.890 PONP800101 0.888 - NADH010104 0.888 NADH010103 0.885 BLAS910101 0.881 - PONP800102 0.880 MEEJ810101 0.878 NADH010105 0.869 - NADH010101 0.865 PONP800103 0.863 SWER830101 0.862 - ROSM880104 0.860 CORJ870102 0.860 GUOD860101 0.860 - ZHOH040101 0.858 NADH010102 0.856 ROSM880105 0.855 - MEIH800103 0.853 PTIO830102 0.842 CORJ870103 0.841 - MEEJ810102 0.837 CORJ870107 0.835 EISD860103 0.834 - CIDH920101 0.833 PONP800107 0.832 JURD980101 0.832 - CORJ870104 0.832 LIFS790101 0.832 KYTJ820101 0.824 - ARGP820101 0.819 JOND750101 0.818 RADA880102 0.817 - EISD860101 0.812 BAEK050101 0.809 JANJ780102 0.803 - COWR900101 0.803 DESM900102 0.802 KARP850101 -0.801 - GUYH850101 -0.821 KUHL950101 -0.822 WOEC730101 -0.823 - PUNT030101 -0.827 ROSM880101 -0.828 BULH740101 -0.829 - CORJ870108 -0.829 ROSM880102 -0.831 KARP850102 -0.833 - VINM940103 -0.835 KIDA850101 -0.836 RACS770102 -0.854 - PUNT030102 -0.857 RACS770101 -0.864 KRIW790101 -0.867 - MEIH800102 -0.868 VINM940101 -0.883 VINM940102 -0.884 - WOLS870101 -0.891 GUYH850102 -0.894 MIYS990103 -0.902 - FASG890101 -0.903 GUYH850103 -0.906 OOBM770103 -0.912 - PARJ860101 -0.913 GRAR740102 -0.915 MIYS990101 -0.915 - MIYS990102 -0.916 MIYS990104 -0.916 MIYS990105 -0.916 - MEIH800101 -0.917 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.17 -0.70 -0.90 -1.05 1.24 -1.20 -1.19 -0.57 -0.25 2.06 - 0.96 -0.62 0.60 1.29 -0.21 -0.83 -0.62 1.51 0.66 1.21 -// -H CIDH920105 -D Normalized average hydrophobicity scales (Cid et al., 1992) -R PMID:1518784 -A Cid, H., Bunster, M., Canales, M. and Gazitua, F. -T Hydrophobicity and structural classes in proteins -J Protein Engineering 5, 373-375 (1992) -C CIDH920103 0.973 CIDH920104 0.970 CIDH920102 0.969 - NISK860101 0.938 BASU050102 0.931 ZHOH040103 0.926 - ROBB790101 0.921 CIDH920101 0.921 MIYS850101 0.916 - BASU050103 0.914 PLIV810101 0.914 BIOV880101 0.912 - BASU050101 0.907 WERD780101 0.905 ZHOH040101 0.904 - RADA880108 0.898 FAUJ830101 0.893 MEEJ810101 0.892 - PONP930101 0.891 SWER830101 0.890 CORJ870102 0.890 - ROSM880104 0.886 BIOV880102 0.882 MANP780101 0.879 - ARGP820101 0.867 JOND750101 0.866 RADA880102 0.861 - CASG920101 0.859 GUOD860101 0.858 ROSG850102 0.858 - NOZY710101 0.857 PONP800101 0.856 NISK800101 0.854 - BLAS910101 0.852 CORJ870107 0.848 MEEJ810102 0.844 - PONP800108 0.843 ROSM880105 0.843 MEEJ800102 0.840 - TAKK010101 0.840 EISD860101 0.839 CORJ870104 0.838 - CORJ870103 0.838 SIMZ760101 0.837 PONP800102 0.831 - LIFS790101 0.828 LEVM760106 0.828 CORJ870101 0.827 - CORJ870106 0.826 CORJ870105 0.822 GOLD730101 0.820 - ZHOH040102 0.818 PONP800107 0.818 NADH010104 0.817 - PTIO830102 0.813 VENT840101 0.813 NADH010103 0.810 - PONP800103 0.807 MEIH800103 0.804 NADH010105 0.800 - WOEC730101 -0.800 KIDA850101 -0.803 PUNT030101 -0.805 - KRIW790101 -0.816 FUKS010103 -0.821 PUNT030102 -0.822 - MEIH800102 -0.826 RACS770102 -0.830 VINM940103 -0.832 - KARP850102 -0.839 CORJ870108 -0.843 FASG890101 -0.860 - PARS000101 -0.860 KARP850101 -0.866 BULH740101 -0.871 - GRAR740102 -0.884 VINM940101 -0.885 MIYS990103 -0.886 - RACS770101 -0.887 GUYH850102 -0.892 WOLS870101 -0.899 - MIYS990105 -0.901 OOBM770103 -0.904 MIYS990104 -0.908 - VINM940102 -0.910 MIYS990102 -0.915 MIYS990101 -0.916 - MEIH800101 -0.923 GUYH850103 -0.927 PARJ860101 -0.948 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.02 -0.42 -0.77 -1.04 0.77 -1.10 -1.14 -0.80 0.26 1.81 - 1.14 -0.41 1.00 1.35 -0.09 -0.97 -0.77 1.71 1.11 1.13 -// -H COHE430101 -D Partial specific volume (Cohn-Edsall, 1943) -R -A Cohn, E.J. and Edsall, J.T. -T -J "Protein, Amino Acid, and Peptides", Reinhold, New York (1943) -C BULH740102 0.923 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.75 0.70 0.61 0.60 0.61 0.67 0.66 0.64 0.67 0.90 - 0.90 0.82 0.75 0.77 0.76 0.68 0.70 0.74 0.71 0.86 -// -H CRAJ730101 -D Normalized frequency of middle helix (Crawford et al., 1973) -R PMID:4510294 -A Crawford, J.L., Lipscomb, W.N. and Schellman, C.G. -T The reverse turn as a polypeptide conformation in globular proteins -J Proc. Natl. Acad. Sci. USA 70, 538-542 (1973) Reported values normalized by - the total percentage -C NAGK730101 0.925 BURA740101 0.900 PALJ810101 0.891 - PRAM900102 0.887 LEVM780101 0.887 ROBB760101 0.875 - PALJ810102 0.872 GEIM800101 0.870 LEVM780104 0.869 - CHOP780201 0.851 TANS770101 0.843 KANM800101 0.842 - ISOY800101 0.840 RACS820108 0.839 GEIM800104 0.838 - MAXF760101 0.826 PALJ810109 0.811 NAGK730103 -0.850 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.33 0.79 0.72 0.97 0.93 1.42 1.66 0.58 1.49 0.99 - 1.29 1.03 1.40 1.15 0.49 0.83 0.94 1.33 0.49 0.96 -// -H CRAJ730102 -D Normalized frequency of beta-sheet (Crawford et al., 1973) -R PMID:4510294 -A Crawford, J.L., Lipscomb, W.N. and Schellman, C.G. -T The reverse turn as a polypeptide conformation in globular proteins -J Proc. Natl. Acad. Sci. USA 70, 538-542 (1973) Reported values normalized by - the total percentage -C ROBB760106 0.865 PTIO830102 0.820 PALJ810104 0.817 - NAGK730102 0.815 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.00 0.74 0.75 0.89 0.99 0.87 0.37 0.56 0.36 1.75 - 1.53 1.18 1.40 1.26 0.36 0.65 1.15 0.84 1.41 1.61 -// -H CRAJ730103 -D Normalized frequency of turn (Crawford et al., 1973) -R PMID:4510294 -A Crawford, J.L., Lipscomb, W.N. and Schellman, C.G. -T The reverse turn as a polypeptide conformation in globular proteins -J Proc. Natl. Acad. Sci. USA 70, 538-542 (1973) Reported values normalized by - the total percentage -C ROBB760113 0.916 ROBB760108 0.912 ROBB760110 0.887 - PALJ810106 0.884 CHOP780101 0.882 BEGF750103 0.874 - TANS770110 0.859 CHAM830101 0.821 CHOP780201 -0.808 - PALJ810102 -0.809 BEGF750101 -0.812 QIAN880107 -0.840 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.60 0.79 1.42 1.24 1.29 0.92 0.64 1.38 0.95 0.67 - 0.70 1.10 0.67 1.05 1.47 1.26 1.05 1.23 1.35 0.48 -// -H DAWD720101 -D Size (Dawson, 1972) -R -A Dawson, D.M. -T -J In "The Biochemical Genetics of Man" (Brock, D.J.H. and Mayo, O., eds.), - Academic Press, New York, pp.1-38 (1972) -C TSAJ990102 0.905 GOLD730102 0.904 TSAJ990101 0.903 - BIGC670101 0.903 CHOC750101 0.901 CHOC760101 0.901 - HARY940101 0.900 LEVM760105 0.898 KRIW790103 0.893 - FAUJ880103 0.880 PONJ960101 0.873 LEVM760102 0.873 - CHAM820101 0.865 FAUJ880106 0.853 GRAR740103 0.853 - FASG760101 0.833 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.5 7.5 5.0 2.5 3.0 6.0 5.0 0.5 6.0 5.5 - 5.5 7.0 6.0 6.5 5.5 3.0 5.0 7.0 7.0 5.0 -// -H DAYM780101 -D Amino acid composition (Dayhoff et al., 1978a) -R -A Dayhoff, M.O., Hunt, L.T. and Hurst-Calderone, S. -T Composition of proteins -J In "Atlas of Protein Sequence and Structure", Vol.5, Suppl.3 (Dayhoff, M.O., - ed.), National Biomedical Research Foundation, Washington, D.C., p.363 (1978) -C JUNJ780101 0.986 JUKT750101 0.975 CEDJ970101 0.970 - JOND920101 0.954 CEDJ970104 0.952 CEDJ970102 0.945 - NAKH900101 0.940 KUMS000102 0.925 FUKS010110 0.897 - NAKH900102 0.883 FUKS010111 0.882 NAKH920101 0.882 - KUMS000101 0.866 NAKH920107 0.861 FUKS010112 0.856 - NAKH920106 0.856 NAKH920103 0.851 CEDJ970105 0.839 - NAKH920104 0.819 CEDJ970103 0.807 NAKH920102 0.802 - FUKS010109 0.801 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 8.6 4.9 4.3 5.5 2.9 3.9 6.0 8.4 2.0 4.5 - 7.4 6.6 1.7 3.6 5.2 7.0 6.1 1.3 3.4 6.6 -// -H DAYM780201 -D Relative mutability (Dayhoff et al., 1978b) -R -A Dayhoff, M.O., Schwartz, R.M. and Orcutt, B.C. -T A model of evolutionary change in proteins -J In "Atlas of Protein Sequence and Structure", Vol.5, Suppl.3 (Dayhoff, M.O., - ed.), National Biomedical Research Foundation, Washington, D.C. pp. 345-352 - (1978) -C JOND920102 0.889 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 100. 65. 134. 106. 20. 93. 102. 49. 66. 96. - 40. 56. 94. 41. 56. 120. 97. 18. 41. 74. -// -H DESM900101 -D Membrane preference for cytochrome b: MPH89 (Degli Esposti et al., 1990) -R PMID:2364947 -A Degli Esposti, M., Crimi, M. and Venturoli, G. -T A critical evaluation of the hydropathy profile of membrane proteins -J Eur. J. Biochem. 190, 207-219 (1990) -C DESM900102 0.955 PONP800103 0.887 NADH010102 0.885 - PONP800102 0.871 CORJ870101 0.870 NADH010103 0.866 - ROSG850102 0.866 WARP780101 0.864 JANJ780102 0.853 - MEIH800103 0.853 PONP800101 0.847 NADH010104 0.843 - KYTJ820101 0.837 NISK800101 0.837 JURD980101 0.829 - NADH010101 0.825 BIOV880102 0.821 JANJ790102 0.818 - CORJ870107 0.815 CORJ870103 0.812 RADA880108 0.812 - BIOV880101 0.807 PONP930101 0.807 CASG920101 0.806 - PUNT030102 -0.801 RACS770102 -0.801 VINM940101 -0.806 - KRIW710101 -0.807 FASG890101 -0.808 CORJ870108 -0.809 - MEIH800102 -0.822 GUYH850104 -0.824 PUNT030101 -0.828 - MIYS990104 -0.828 KARP850102 -0.829 GUYH850101 -0.831 - MIYS990105 -0.832 KRIW790102 -0.835 RACS770103 -0.837 - JANJ780103 -0.838 KRIW790101 -0.847 MONM990101 -0.848 - MIYS990103 -0.854 OOBM770101 -0.894 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.56 0.59 0.51 0.23 1.80 0.39 0.19 1.03 1. 1.27 - 1.38 0.15 1.93 1.42 0.27 0.96 1.11 0.91 1.10 1.58 -// -H DESM900102 -D Average membrane preference: AMP07 (Degli Esposti et al., 1990) -R PMID:2364947 -A Degli Esposti, M., Crimi, M. and Venturoli, G. -T A critical evaluation of the hydropathy profile of membrane proteins -J Eur. J. Biochem. 190, 207-219 (1990) -C DESM900101 0.955 JANJ780102 0.935 NADH010102 0.933 - MEIH800103 0.924 ROSG850102 0.914 NADH010103 0.910 - NADH010101 0.905 CORJ870101 0.901 JURD980101 0.900 - KYTJ820101 0.898 JANJ790102 0.897 PONP800103 0.896 - NADH010104 0.886 WARP780101 0.882 RADA880108 0.881 - PONP800102 0.880 BIOV880101 0.878 CHOC760103 0.877 - BIOV880102 0.876 CASG920101 0.869 PONP800101 0.858 - JANJ790101 0.855 NISK800101 0.852 OLSK800101 0.849 - EISD860103 0.848 NISK860101 0.843 PONP930101 0.834 - PONP800108 0.833 MIYS850101 0.831 RADA880101 0.828 - EISD840101 0.828 ROSM880105 0.825 CHOC760104 0.824 - CORJ870107 0.819 BASU050103 0.818 MANP780101 0.816 - NADH010105 0.816 FAUJ830101 0.816 CORJ870103 0.815 - WERD780101 0.814 CIDH920104 0.802 VINM940104 -0.803 - MEIH800101 -0.804 MIYS990101 -0.809 CORJ870108 -0.811 - MIYS990102 -0.811 ROSM880101 -0.812 KARP850102 -0.815 - ROSM880102 -0.816 GUYH850105 -0.818 CHOC760102 -0.823 - VINM940103 -0.824 VINM940101 -0.829 WOEC730101 -0.847 - MONM990101 -0.850 KRIW790102 -0.852 MIYS990104 -0.854 - KRIW790101 -0.859 GRAR740102 -0.862 KUHL950101 -0.863 - RACS770102 -0.867 PUNT030102 -0.868 RACS770103 -0.868 - MIYS990105 -0.875 MIYS990103 -0.876 JANJ780101 -0.878 - FASG890101 -0.879 PRAM900101 -0.890 ENGD860101 -0.890 - GUYH850101 -0.895 GUYH850104 -0.896 MEIH800102 -0.898 - PUNT030101 -0.903 JANJ780103 -0.908 OOBM770101 -0.950 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.26 0.38 0.59 0.27 1.60 0.39 0.23 1.08 1. 1.44 - 1.36 0.33 1.52 1.46 0.54 0.98 1.01 1.06 0.89 1.33 -// -H EISD840101 -D Consensus normalized hydrophobicity scale (Eisenberg, 1984) -R PMID:6383201 -A Eisenberg, D. -T Three-dimensional structure of membrane and surface proteins -J Ann. Rev. Biochem. 53, 595-623 (1984) Original references: Eisenberg, D., - Weiss, R.M., Terwilliger, T.C. and Wilcox, W. Faraday Symp. Chem. Soc. 17, - 109-120 (1982) Eisenberg, D., Weiss, R.M. and Terwilliger, T.C. The - hydrophobic moment detects periodicity in protein hydrophobicity Proc. Natl. - Acad. Sci. USA 81, 140-144 (1984) -C RADA880101 0.968 JACR890101 0.938 RADA880107 0.927 - ROSM880105 0.923 WOLR810101 0.914 WOLR790101 0.909 - RADA880104 0.908 JANJ790102 0.900 JURD980101 0.895 - NADH010102 0.887 CHOC760103 0.885 BLAS910101 0.884 - EISD860101 0.884 KYTJ820101 0.878 FAUJ830101 0.875 - JANJ780102 0.874 OLSK800101 0.869 COWR900101 0.863 - NADH010101 0.861 NADH010103 0.840 NAKH900110 0.838 - EISD860103 0.837 DESM900102 0.828 RADA880108 0.817 - BIOV880102 0.814 BIOV880101 0.811 YUTK870101 0.809 - NADH010104 0.809 ROSG850102 0.806 BASU050103 0.806 - WOLS870101 -0.820 GRAR740102 -0.823 MEIH800102 -0.829 - HOPT810101 -0.846 GUYH850101 -0.849 PUNT030102 -0.854 - LEVM760101 -0.859 OOBM770101 -0.878 JANJ780103 -0.881 - FAUJ880109 -0.890 GUYH850104 -0.892 CHOC760102 -0.892 - KIDA850101 -0.900 JANJ780101 -0.907 KUHL950101 -0.907 - PUNT030101 -0.914 VHEG790101 -0.924 ROSM880102 -0.925 - ENGD860101 -0.936 PRAM900101 -0.936 ROSM880101 -0.947 - GUYH850105 -0.951 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.25 -1.76 -0.64 -0.72 0.04 -0.69 -0.62 0.16 -0.40 0.73 - 0.53 -1.10 0.26 0.61 -0.07 -0.26 -0.18 0.37 0.02 0.54 -// -H EISD860101 -D Solvation free energy (Eisenberg-McLachlan, 1986) -R PMID: 3945310 -A Eisenberg, D. and McLachlan, A.D. -T Solvation energy in protein folding and binding -J Nature 319, 199-203 (1986) -C ROSM880105 0.948 FAUJ830101 0.919 RADA880102 0.912 - BLAS910101 0.911 PLIV810101 0.904 ZIMJ680105 0.900 - RADA880101 0.891 MEEJ800102 0.890 EISD840101 0.884 - RADA880108 0.844 MIYS850101 0.842 GUOD860101 0.839 - CIDH920105 0.839 BIOV880102 0.832 BIOV880101 0.828 - JACR890101 0.827 SWER830101 0.824 CORJ870102 0.822 - NOZY710101 0.822 CIDH920103 0.821 NAKH900110 0.820 - CIDH920102 0.819 CIDH920104 0.812 NAKH900104 0.812 - NAKH900106 0.812 BASU050103 0.809 MEEJ810102 0.808 - MEEJ810101 0.805 GUYH850101 -0.823 MIYS990102 -0.824 - MIYS990101 -0.827 BULH740101 -0.833 KUHL950101 -0.835 - WOEC730101 -0.838 PRAM900101 -0.862 ENGD860101 -0.862 - VHEG790101 -0.862 ROSM880102 -0.868 PUNT030102 -0.869 - GRAR740102 -0.871 PARJ860101 -0.876 KIDA850101 -0.890 - PUNT030101 -0.890 HOPT810101 -0.905 ROSM880101 -0.917 - WOLS870101 -0.918 LEVM760101 -0.921 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.67 -2.1 -0.6 -1.2 0.38 -0.22 -0.76 0. 0.64 1.9 - 1.9 -0.57 2.4 2.3 1.2 0.01 0.52 2.6 1.6 1.5 -// -H EISD860102 -D Atom-based hydrophobic moment (Eisenberg-McLachlan, 1986) -R PMID: 3945310 -A Eisenberg, D. and McLachlan, A.D. -T Solvation energy in protein folding and binding -J Nature 319, 199-203 (1986) -C FAUJ880109 0.841 HUTJ700103 0.841 RADA880107 -0.837 - YUTK870103 -0.839 YUTK870104 -0.840 JACR890101 -0.871 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0. 10. 1.3 1.9 0.17 1.9 3. 0. 0.99 1.2 - 1.0 5.7 1.9 1.1 0.18 0.73 1.5 1.6 1.8 0.48 -// -H EISD860103 -D Direction of hydrophobic moment (Eisenberg-McLachlan, 1986) -R PMID: 3945310 -A Eisenberg, D. and McLachlan, A.D. -T Solvation energy in protein folding and binding -J Nature 319, 199-203 (1986) (Gly Ala missing) -C JURD980101 0.901 KYTJ820101 0.897 CHOC760103 0.892 - JANJ780102 0.883 OLSK800101 0.881 FAUJ830101 0.876 - RADA880108 0.873 NADH010102 0.872 MEIH800103 0.870 - NADH010101 0.868 COWR900101 0.868 BIOV880101 0.864 - MIYS850101 0.858 NADH010103 0.855 PLIV810101 0.852 - RADA880101 0.850 DESM900102 0.848 ROSG850102 0.846 - BIOV880102 0.845 PONP800103 0.842 NADH010104 0.840 - JANJ790102 0.838 EISD840101 0.837 CIDH920104 0.834 - BLAS910101 0.830 JANJ790101 0.829 MANP780101 0.826 - WARP780101 0.820 PONP800102 0.814 RADA880107 0.812 - NISK860101 0.811 ARGP820103 0.810 PONP800108 0.809 - CORJ870101 0.809 BASU050103 0.806 ROSM880105 0.801 - CHOC760102 -0.802 WOEC730101 -0.803 JANJ780101 -0.808 - MEIH800101 -0.810 GUYH850105 -0.812 MIYS990105 -0.815 - FAUJ880110 -0.815 JANJ780103 -0.819 PUNT030101 -0.829 - MIYS990101 -0.829 ENGD860101 -0.831 PRAM900101 -0.831 - MIYS990102 -0.831 GUYH850101 -0.832 KIDA850101 -0.832 - GUYH850104 -0.835 WOLS870101 -0.841 PUNT030102 -0.853 - RACS770102 -0.858 FASG890101 -0.863 ROSM880101 -0.871 - GRAR740102 -0.871 OOBM770101 -0.880 MEIH800102 -0.882 - KUHL950101 -0.894 ROSM880102 -0.943 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0. -0.96 -0.86 -0.98 0.76 -1.0 -0.89 0. -0.75 0.99 - 0.89 -0.99 0.94 0.92 0.22 -0.67 0.09 0.67 -0.93 0.84 -// -H FASG760101 -D Molecular weight (Fasman, 1976) -R -A Fasman, G.D., ed. -T -J "Handbook of Biochemistry and Molecular Biology", 3rd ed., Proteins - Volume - 1, CRC Press, Cleveland (1976) -C FAUJ880103 0.979 CHOC760101 0.978 LEVM760102 0.966 - CHAM820101 0.962 CHOC750101 0.956 LEVM760105 0.951 - PONJ960101 0.945 CHAM830106 0.943 TSAJ990102 0.940 - TSAJ990101 0.935 BIGC670101 0.919 GOLD730102 0.918 - KRIW790103 0.910 HARY940101 0.910 GRAR740103 0.908 - FAUJ880106 0.899 RADA880106 0.870 WOLS870102 0.866 - MCMT640101 0.845 CHAM830105 0.839 ROSG850101 0.838 - DAWD720101 0.833 FAUJ880104 0.825 OOBM770102 0.821 - LEVM760107 0.815 RADA880103 -0.954 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 89.09 174.20 132.12 133.10 121.15 146.15 147.13 75.07 155.16 131.17 - 131.17 146.19 149.21 165.19 115.13 105.09 119.12 204.24 181.19 117.15 -// -H FASG760102 -D Melting point (Fasman, 1976) -R -A Fasman, G.D., ed. -T -J "Handbook of Biochemistry and Molecular Biology", 3rd ed., Proteins - Volume - 1, CRC Press, Cleveland (1976) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 297. 238. 236. 270. 178. 185. 249. 290. 277. 284. - 337. 224. 283. 284. 222. 228. 253. 282. 344. 293. -// -H FASG760103 -D Optical rotation (Fasman, 1976) -R -A Fasman, G.D., ed. -T -J "Handbook of Biochemistry and Molecular Biology", 3rd ed., Proteins - Volume - 1, CRC Press, Cleveland (1976) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.80 12.50 -5.60 5.05 -16.50 6.30 12.00 0.00 -38.50 12.40 - -11.00 14.60 -10.00 -34.50 -86.20 -7.50 -28.00 -33.70 -10.00 5.63 -// -H FASG760104 -D pK-N (Fasman, 1976) -R -A Fasman, G.D., ed. -T -J "Handbook of Biochemistry and Molecular Biology", 3rd ed., Proteins - Volume - 1, CRC Press, Cleveland (1976) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 9.69 8.99 8.80 9.60 8.35 9.13 9.67 9.78 9.17 9.68 - 9.60 9.18 9.21 9.18 10.64 9.21 9.10 9.44 9.11 9.62 -// -H FASG760105 -D pK-C (Fasman, 1976) -R -A Fasman, G.D., ed. -T -J "Handbook of Biochemistry and Molecular Biology", 3rd ed., Proteins - Volume - 1, CRC Press, Cleveland (1976) -C JOND750102 0.833 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.34 1.82 2.02 1.88 1.92 2.17 2.10 2.35 1.82 2.36 - 2.36 2.16 2.28 2.16 1.95 2.19 2.09 2.43 2.20 2.32 -// -H FAUJ830101 -D Hydrophobic parameter pi (Fauchere-Pliska, 1983) -R -A Fauchere, J.L. and Pliska, V. -T Hydrophobic parameters pi of amino-acid side chains from the partitioning of - N-acetyl-amino-acid amides -J Eur. J. Med. Chem. 18, 369-375 (1983) -C BIOV880101 0.942 ROSM880105 0.937 ZHOH040103 0.933 - RADA880108 0.932 PLIV810101 0.931 BLAS910101 0.923 - CIDH920104 0.922 EISD860101 0.919 MIYS850101 0.914 - BIOV880102 0.911 NISK860101 0.906 ROSG850102 0.904 - BASU050103 0.903 MEEJ810101 0.902 GUOD860101 0.900 - NADH010103 0.899 NADH010104 0.894 CIDH920105 0.893 - NADH010102 0.891 MEEJ810102 0.890 BASU050102 0.885 - COWR900101 0.876 EISD860103 0.876 CASG920101 0.875 - EISD840101 0.875 PONP800108 0.875 RADA880101 0.873 - ROBB790101 0.868 CIDH920103 0.868 PONP800103 0.863 - WERD780101 0.862 MEEJ800102 0.858 CIDH920102 0.856 - BASU050101 0.852 NISK800101 0.849 MEIH800103 0.849 - RADA880102 0.846 CORJ870101 0.845 MANP780101 0.843 - PONP930101 0.843 PONP800102 0.841 ZHOH040101 0.841 - NADH010101 0.837 SWER830101 0.833 JURD980101 0.833 - CORJ870102 0.831 JANJ790102 0.826 JANJ780102 0.825 - NADH010105 0.822 PONP800101 0.822 ZIMJ680105 0.816 - DESM900102 0.816 KYTJ820101 0.811 NOZY710101 0.803 - VINM940103 -0.804 FUKS010102 -0.805 GUYH850104 -0.816 - BULH740101 -0.830 OOBM770101 -0.832 FUKS010104 -0.832 - RACS770102 -0.843 VINM940102 -0.844 PRAM900101 -0.853 - ENGD860101 -0.853 GUYH850102 -0.857 GUYH850101 -0.863 - MEIH800101 -0.863 KUHL950101 -0.863 KRIW790101 -0.865 - GUYH850103 -0.870 VINM940101 -0.871 MEIH800102 -0.875 - PUNT030101 -0.876 WOEC730101 -0.880 MIYS990103 -0.893 - OOBM770103 -0.899 MIYS990104 -0.906 PARJ860101 -0.907 - ROSM880101 -0.907 MIYS990101 -0.907 PUNT030102 -0.908 - MIYS990102 -0.908 HOPT810101 -0.909 FASG890101 -0.911 - LEVM760101 -0.919 MIYS990105 -0.920 ROSM880102 -0.927 - WOLS870101 -0.928 KIDA850101 -0.946 GRAR740102 -0.948 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.31 -1.01 -0.60 -0.77 1.54 -0.22 -0.64 0.00 0.13 1.80 - 1.70 -0.99 1.23 1.79 0.72 -0.04 0.26 2.25 0.96 1.22 -// -H FAUJ880101 -D Graph shape index (Fauchere et al., 1988) -R PMID:3209351 -A Fauchere, J.L., Charton, M., Kier, L.B., Verloop, A. and Pliska, V. -T Amino acid side chain parameters for correlation studies in biology and - pharmacology -J Int. J. Peptide Protein Res. 32, 269-278 (1988) Original reference: Kier, - L.B. Quant. Struct. Act. Relat. 6, 117-122 (1987) -C ZIMJ680102 0.888 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.28 2.34 1.60 1.60 1.77 1.56 1.56 0.00 2.99 4.19 - 2.59 1.89 2.35 2.94 2.67 1.31 3.03 3.21 2.94 3.67 -// -H FAUJ880102 -D Smoothed upsilon steric parameter (Fauchere et al., 1988) -R PMID:3209351 -A Fauchere, J.L., Charton, M., Kier, L.B., Verloop, A. and Pliska, V. -T Amino acid side chain parameters for correlation studies in biology and - pharmacology -J Int. J. Peptide Protein Res. 32, 269-278 (1988) (Pro missing) Original - reference of these two data: Fauchere, L.J. In "QSAR in Design of Bioactive - Compounds", (Kuchar, M., ed.), Prous, Barcelona pp.135-144 (1984) -C AVBF000102 0.881 CHAM810101 0.881 PTIO830101 0.832 - CHOP780216 -0.807 CHAM830101 -0.809 GEIM800108 -0.819 - MUNV940104 -0.824 PRAM900104 -0.844 LEVM780103 -0.846 - QIAN880132 -0.849 QIAN880133 -0.851 QIAN880134 -0.852 - LEVM780106 -0.865 GEIM800111 -0.873 KIMC930101 -0.886 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.53 0.69 0.58 0.59 0.66 0.71 0.72 0.00 0.64 0.96 - 0.92 0.78 0.77 0.71 0. 0.55 0.63 0.84 0.71 0.89 -// -H FAUJ880103 -D Normalized van der Waals volume (Fauchere et al., 1988) -R PMID:3209351 -A Fauchere, J.L., Charton, M., Kier, L.B., Verloop, A. and Pliska, V. -T Amino acid side chain parameters for correlation studies in biology and - pharmacology -J Int. J. Peptide Protein Res. 32, 269-278 (1988) (Pro !) Original reference of - these two data: Fauchere, L.J. In "QSAR in Design of Bioactive Compounds", - (Kuchar, M., ed.), Prous, Barcelona pp.135-144 (1984) -C CHAM820101 0.992 CHOC750101 0.990 CHOC760101 0.985 - TSAJ990102 0.985 TSAJ990101 0.983 FASG760101 0.979 - BIGC670101 0.972 GOLD730102 0.972 KRIW790103 0.965 - PONJ960101 0.963 GRAR740103 0.959 HARY940101 0.951 - LEVM760102 0.947 LEVM760105 0.945 CHAM830106 0.927 - FAUJ880106 0.908 ROSG850101 0.892 DAWD720101 0.880 - LEVM760107 0.875 RADA880106 0.869 MCMT640101 0.847 - ZHOH040102 0.816 WOLS870102 0.814 CHAM830105 0.813 - HUTJ700102 0.807 FAUJ880104 0.804 OOBM770102 0.801 - RADA880103 -0.923 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.00 6.13 2.95 2.78 2.43 3.95 3.78 0.00 4.66 4.00 - 4.00 4.77 4.43 5.89 2.72 1.60 2.60 8.08 6.47 3.00 -// -H FAUJ880104 -D STERIMOL length of the side chain (Fauchere et al., 1988) -R PMID:3209351 -A Fauchere, J.L., Charton, M., Kier, L.B., Verloop, A. and Pliska, V. -T Amino acid side chain parameters for correlation studies in biology and - pharmacology -J Int. J. Peptide Protein Res. 32, 269-278 (1988) (Pro !) Original reference of - these three data: Verloop, A. In "IUPAC, Pesticide Chemistry", Vol.1 - (Miyamoto, J. and Kearney, P.C., eds.),Pergamon, Oxford pp.339-334 (1983) -C LEVM760105 0.896 LEVM760102 0.867 HUTJ700103 0.839 - CHOC760101 0.835 HUTJ700102 0.835 FASG760101 0.825 - CHAM830106 0.817 FAUJ880103 0.804 RADA880103 -0.806 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.87 7.82 4.58 4.74 4.47 6.11 5.97 2.06 5.23 4.92 - 4.92 6.89 6.36 4.62 4.11 3.97 4.11 7.68 4.73 4.11 -// -H FAUJ880105 -D STERIMOL minimum width of the side chain (Fauchere et al., 1988) -R PMID:3209351 -A Fauchere, J.L., Charton, M., Kier, L.B., Verloop, A. and Pliska, V. -T Amino acid side chain parameters for correlation studies in biology and - pharmacology -J Int. J. Peptide Protein Res. 32, 269-278 (1988) (Pro !) Original reference of - these three data: Verloop, A. In "IUPAC, Pesticide Chemistry", Vol.1 - (Miyamoto, J. and Kearney, P.C., eds.),Pergamon, Oxford pp.339-334 (1983) -C AVBF000102 0.802 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.52 1.52 1.52 1.52 1.52 1.52 1.52 1.00 1.52 1.90 - 1.52 1.52 1.52 1.52 1.52 1.52 1.73 1.52 1.52 1.90 -// -H FAUJ880106 -D STERIMOL maximum width of the side chain (Fauchere et al., 1988) -R PMID:3209351 -A Fauchere, J.L., Charton, M., Kier, L.B., Verloop, A. and Pliska, V. -T Amino acid side chain parameters for correlation studies in biology and - pharmacology -J Int. J. Peptide Protein Res. 32, 269-278 (1988) Original reference of these - three data: Verloop, A. In "IUPAC, Pesticide Chemistry", Vol.1 (Miyamoto, J. - and Kearney, P.C., eds.),Pergamon, Oxford pp.339-334 (1983) -C PONJ960101 0.913 HARY940101 0.909 FAUJ880103 0.908 - CHAM820101 0.902 LEVM760102 0.900 FASG760101 0.899 - CHOC760101 0.898 LEVM760105 0.889 CHOC750101 0.888 - TSAJ990102 0.882 TSAJ990101 0.879 WOLS870102 0.866 - BIGC670101 0.860 GOLD730102 0.857 DAWD720101 0.853 - KRIW790103 0.845 CHAM830106 0.845 GRAR740103 0.819 - HUTJ700102 0.806 RADA880103 -0.823 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.04 6.24 4.37 3.78 3.41 3.53 3.31 1.00 5.66 3.49 - 4.45 4.87 4.80 6.02 4.31 2.70 3.17 5.90 6.72 3.17 -// -H FAUJ880107 -D N.m.r. chemical shift of alpha-carbon (Fauchere et al., 1988) -R PMID:3209351 -A Fauchere, J.L., Charton, M., Kier, L.B., Verloop, A. and Pliska, V. -T Amino acid side chain parameters for correlation studies in biology and - pharmacology -J Int. J. Peptide Protein Res. 32, 269-278 (1988) Original reference: Fauchere, - J.L. and Lauterwein, J. Quant. Struct. Act. Rel. 4, 11-13 (1985) -C AVBF000105 0.931 AVBF000107 0.884 AVBF000103 0.873 - AVBF000106 0.853 AVBF000108 0.802 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 7.3 11.1 8.0 9.2 14.4 10.6 11.4 0.0 10.2 16.1 - 10.1 10.9 10.4 13.9 17.8 13.1 16.7 13.2 13.9 17.2 -// -H FAUJ880108 -D Localized electrical effect (Fauchere et al., 1988) -R PMID:3209351 -A Fauchere, J.L., Charton, M., Kier, L.B., Verloop, A. and Pliska, V. -T Amino acid side chain parameters for correlation studies in biology and - pharmacology -J Int. J. Peptide Protein Res. 32, 269-278 (1988) (Pro missing) Original - reference: Charton, M. and Charton, B.I. J. Theor. Biol. 102, 121-134 (1983) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.01 0.04 0.06 0.15 0.12 0.05 0.07 0.00 0.08 -0.01 - -0.01 0.00 0.04 0.03 0. 0.11 0.04 0.00 0.03 0.01 -// -H FAUJ880109 -D Number of hydrogen bond donors (Fauchere et al., 1988) -R PMID:3209351 -A Fauchere, J.L., Charton, M., Kier, L.B., Verloop, A. and Pliska, V. -T Amino acid side chain parameters for correlation studies in biology and - pharmacology -J Int. J. Peptide Protein Res. 32, 269-278 (1988) Original reference of these - two data: IUPAC-IUB Joint Commission on Biochemical Nomenclature Eur. J. - Biochem. 138, 9-37 (1984) -C GUYH850105 0.927 CHOC760102 0.872 JANJ780101 0.850 - ROSM880101 0.846 EISD860102 0.841 KUHL950101 0.827 - ROSM880102 0.824 PRAM900101 0.815 ENGD860101 0.814 - GUYH850104 0.812 CHOC760103 -0.806 OLSK800101 -0.821 - JANJ790102 -0.822 RADA880101 -0.873 JACR890101 -0.889 - RADA880105 -0.889 EISD840101 -0.890 WOLR810101 -0.904 - WOLR790101 -0.920 RADA880104 -0.926 RADA880107 -0.957 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0. 4. 2. 1. 0. 2. 1. 0. 1. 0. - 0. 2. 0. 0. 0. 1. 1. 1. 1. 0. -// -H FAUJ880110 -D Number of full nonbonding orbitals (Fauchere et al., 1988) -R PMID:3209351 -A Fauchere, J.L., Charton, M., Kier, L.B., Verloop, A. and Pliska, V. -T Amino acid side chain parameters for correlation studies in biology and - pharmacology -J Int. J. Peptide Protein Res. 32, 269-278 (1988) Original reference of these - two data: IUPAC-IUB Joint Commission on Biochemical Nomenclature Eur. J. - Biochem. 138, 9-37 (1984) -C KUHL950101 0.922 ROSM880101 0.888 WOEC730101 0.812 - ROSM880105 -0.803 SNEP660102 -0.804 NADH010101 -0.813 - EISD860103 -0.815 RADA880101 -0.838 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0. 3. 3. 4. 0. 3. 4. 0. 1. 0. - 0. 1. 0. 0. 0. 2. 2. 0. 2. 0. -// -H FAUJ880111 -D Positive charge (Fauchere et al., 1988) -R PMID:3209351 -A Fauchere, J.L., Charton, M., Kier, L.B., Verloop, A. and Pliska, V. -T Amino acid side chain parameters for correlation studies in biology and - pharmacology -J Int. J. Peptide Protein Res. 32, 269-278 (1988) -C ZIMJ680104 0.813 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0. 1. 0. 0. 0. 0. 0. 0. 1. 0. - 0. 1. 0. 0. 0. 0. 0. 0. 0. 0. -// -H FAUJ880112 -D Negative charge (Fauchere et al., 1988) -R PMID:3209351 -A Fauchere, J.L., Charton, M., Kier, L.B., Verloop, A. and Pliska, V. -T Amino acid side chain parameters for correlation studies in biology and - pharmacology -J Int. J. Peptide Protein Res. 32, 269-278 (1988) -C RICJ880106 0.849 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0. 0. 0. 1. 0. 0. 1. 0. 0. 0. - 0. 0. 0. 0. 0. 0. 0. 0. 0. 0. -// -H FAUJ880113 -D pK-a(RCOOH) (Fauchere et al., 1988) -R PMID:3209351 -A Fauchere, J.L., Charton, M., Kier, L.B., Verloop, A. and Pliska, V. -T Amino acid side chain parameters for correlation studies in biology and - pharmacology -J Int. J. Peptide Protein Res. 32, 269-278 (1988) (Pro missing) -C BLAM930101 0.839 ONEK900101 0.820 BUNA790101 0.818 - ROBB760103 0.802 MUNV940102 -0.826 MUNV940101 -0.836 - ONEK900102 -0.839 GEOR030109 -0.848 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 4.76 4.30 3.64 5.69 3.67 4.54 5.48 3.77 2.84 4.81 - 4.79 4.27 4.25 4.31 0. 3.83 3.87 4.75 4.30 4.86 -// -H FINA770101 -D Helix-coil equilibrium constant (Finkelstein-Ptitsyn, 1977) -R PMID:843599 -A Finkelstein, A.V. and Ptitsyn, O.B. -T Theory of protein molecule self-organization. II. A comparison of calculated - thermodynamic parameters of local secondary structures with experiments -J Biopolymers 16, 497-524 (1977) (Pro 0.096) -C SUEM840101 0.883 AURR980114 0.875 AURR980113 0.849 - PTIO830101 0.826 KANM800103 0.823 QIAN880107 0.814 - QIAN880106 0.810 MAXF760101 0.810 AURR980109 0.802 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.08 1.05 0.85 0.85 0.95 0.95 1.15 0.55 1.00 1.05 - 1.25 1.15 1.15 1.10 0.71 0.75 0.75 1.10 1.10 0.95 -// -H FINA910101 -D Helix initiation parameter at posision i-1 (Finkelstein et al., 1991) -R PMID:1946339 -A Finkelstein, A.V., Badretdinov, A.Y. and Ptitsyn, O.B. -T Physical reasons for secondary structure stability: alpha-helices in short - peptides -J Proteins 10, 287-299 (1991) In these four data, each of Arg, Asp, Glu, His - and Lys has two value. See comment lines. Arg pH < 12 ( 1 when pH > 12 ) Asp - pH > 4 ( 1.7 when pH < 4 ) Glu pH > 4.3 ( 1 when pH < 4.3 ) His pH > 6.3 ( - 0.7 when pH < 6.3 ) Lys pH < 10.5 ( 1 when pH > 10.5 ) -C MONM990201 0.812 AURR980104 0.804 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1. 0.70 1.70 3.20 1. 1. 1.70 1. 1. 0.60 - 1. 0.70 1. 1. 1. 1.70 1.70 1. 1. 0.60 -// -H FINA910102 -D Helix initiation parameter at posision i,i+1,i+2 (Finkelstein et al., 1991) -R PMID:1946339 -A Finkelstein, A.V., Badretdinov, A.Y. and Ptitsyn, O.B. -T Physical reasons for secondary structure stability: alpha-helices in short - peptides -J Proteins 10, 287-299 (1991) In these four data, each of Arg, Asp, Glu, His - and Lys has two value. See comment lines. Arg pH < 12 ( 1 when pH > 12 ) Asp - pH > 4 ( 1 when pH < 4 ) Glu pH > 4.3 ( 1 when pH < 4.3 ) His pH > 6.3 ( 0.7 - when pH < 6.3 ) Lys pH < 10.5 ( 1 when pH > 10.5 ) (Pro !) -C ONEK900102 0.964 MUNV940105 0.911 AVBF000104 0.901 - MUNV940104 0.896 GEOR030109 0.890 TANS770104 0.876 - ISOY800104 0.844 CHOP780213 0.832 ROBB760104 -0.844 - ONEK900101 -0.920 BLAM930101 -0.961 BUNA790101 -0.992 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1. 0.70 1. 1.70 1. 1. 1.70 1.30 1. 1. - 1. 0.70 1. 1. 13. 1. 1. 1. 1. 1. -// -H FINA910103 -D Helix termination parameter at posision j-2,j-1,j (Finkelstein et al., 1991) -R PMID:1946339 -A Finkelstein, A.V., Badretdinov, A.Y. and Ptitsyn, O.B. -T Physical reasons for secondary structure stability: alpha-helices in short - peptides -J Proteins 10, 287-299 (1991) In these four data, each of Arg, Asp, Glu, His - and Lys has two value. See comment lines. Arg pH < 12 ( 1 when pH > 12 ) Asp - pH > 4 ( 1 when pH < 4 ) Glu pH > 4.3 ( 1 when pH < 4.3 ) His pH > 6.3 ( 1.7 - when pH < 6.3 ) Lys pH < 10.5 ( 1 when pH > 10.5 ) -C ZIMJ680104 0.805 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.20 1.70 1.20 0.70 1. 1. 0.70 0.80 1.20 0.80 - 1. 1.70 1. 1. 1. 1.50 1. 1. 1. 0.80 -// -H FINA910104 -D Helix termination parameter at posision j+1 (Finkelstein et al., 1991) -R PMID:1946339 -A Finkelstein, A.V., Badretdinov, A.Y. and Ptitsyn, O.B. -T Physical reasons for secondary structure stability: alpha-helices in short - peptides -J Proteins 10, 287-299 (1991) In these four data, each of Arg, Asp, Glu, His - and Lys has two value. See comment lines. Arg pH < 12 ( 1 when pH > 12 ) Asp - pH > 4 ( 1 when pH < 4 ) Glu pH > 4.3 ( 1 when pH < 4.3 ) His pH > 6.3 ( 1.7 - when pH < 6.3 ) Lys pH < 10.5 ( 1 when pH > 10.5 ) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1. 1.70 1. 0.70 1. 1. 0.70 1.50 1. 1. - 1. 1.70 1. 1. 0.10 1. 1. 1. 1. 1. -// -H GARJ730101 -D Partition coefficient (Garel et al., 1973) -R PMID:4700470 -A Garel, J.P., Filliol, D. and Mandel, P. -T Coefficients de partage d'aminoacides, nucleobases, nucleosides et - nucleotides dans un systeme solvant salin -J J. Chromatogr. 78, 381-391 (1973) -C LEVM760107 0.860 NOZY710101 0.821 OOBM850102 -0.877 - WEBA780101 -0.924 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.28 0.10 0.25 0.21 0.28 0.35 0.33 0.17 0.21 0.82 - 1.00 0.09 0.74 2.18 0.39 0.12 0.21 5.70 1.26 0.60 -// -H GEIM800101 -D Alpha-helix indices (Geisow-Roberts, 1980) -R -A Geisow, M.J. and Roberts, R.D.B. -T Amino acid preferences for secondary structure vary with protein class -J Int. J. Biol. Macromol. 2, 387-389 (1980) -C PALJ810101 0.951 LEVM780104 0.950 KANM800101 0.942 - TANS770101 0.918 CHOP780201 0.912 NAGK730101 0.912 - PRAM900102 0.912 LEVM780101 0.912 PALJ810102 0.910 - GEIM800104 0.903 ISOY800101 0.903 ROBB760101 0.897 - MAXF760101 0.895 KANM800103 0.881 RACS820108 0.880 - CRAJ730101 0.870 BURA740101 0.858 PALJ810109 0.816 - AURR980115 0.804 AURR980112 0.802 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.29 1. 0.81 1.10 0.79 1.07 1.49 0.63 1.33 1.05 - 1.31 1.33 1.54 1.13 0.63 0.78 0.77 1.18 0.71 0.81 -// -H GEIM800102 -D Alpha-helix indices for alpha-proteins (Geisow-Roberts, 1980) -R -A Geisow, M.J. and Roberts, R.D.B. -T Amino acid preferences for secondary structure vary with protein class -J Int. J. Biol. Macromol. 2, 387-389 (1980) -C PALJ810107 0.919 GEIM800109 -0.993 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.13 1.09 1.06 0.94 1.32 0.93 1.20 0.83 1.09 1.05 - 1.13 1.08 1.23 1.01 0.82 1.01 1.17 1.32 0.88 1.13 -// -H GEIM800103 -D Alpha-helix indices for beta-proteins (Geisow-Roberts, 1980) -R -A Geisow, M.J. and Roberts, R.D.B. -T Amino acid preferences for secondary structure vary with protein class -J Int. J. Biol. Macromol. 2, 387-389 (1980) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.55 0.20 1.20 1.55 1.44 1.13 1.67 0.59 1.21 1.27 - 1.25 1.20 1.37 0.40 0.21 1.01 0.55 1.86 1.08 0.64 -// -H GEIM800104 -D Alpha-helix indices for alpha/beta-proteins (Geisow-Roberts, 1980) -R -A Geisow, M.J. and Roberts, R.D.B. -T Amino acid preferences for secondary structure vary with protein class -J Int. J. Biol. Macromol. 2, 387-389 (1980) -C PALJ810109 0.937 KANM800101 0.916 LEVM780101 0.907 - PRAM900102 0.907 GEIM800101 0.903 MAXF760101 0.897 - ISOY800101 0.891 PALJ810102 0.886 LEVM780104 0.872 - CHOP780201 0.868 ROBB760101 0.855 RACS820108 0.851 - PALJ810101 0.841 TANS770101 0.841 CRAJ730101 0.838 - NAGK730101 0.828 BURA740101 0.819 AURR980112 0.815 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.19 1. 0.94 1.07 0.95 1.32 1.64 0.60 1.03 1.12 - 1.18 1.27 1.49 1.02 0.68 0.81 0.85 1.18 0.77 0.74 -// -H GEIM800105 -D Beta-strand indices (Geisow-Roberts, 1980) -R -A Geisow, M.J. and Roberts, R.D.B. -T Amino acid preferences for secondary structure vary with protein class -J Int. J. Biol. Macromol. 2, 387-389 (1980) -C PALJ810103 0.945 LEVM780105 0.926 KANM800102 0.916 - GEIM800107 0.901 CHOP780202 0.890 ROBB760105 0.877 - KANM800104 0.861 PALJ810104 0.856 ROBB760106 0.856 - LIFS790101 0.855 TANS770103 0.850 ISOY800102 0.843 - LIFS790103 0.832 PALJ810112 0.830 QIAN880119 0.829 - QIAN880120 0.822 MAXF760102 0.819 QIAN880121 0.811 - PTIO830102 0.810 QIAN880118 0.810 MUNV940103 -0.841 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.84 1.04 0.66 0.59 1.27 1.02 0.57 0.94 0.81 1.29 - 1.10 0.86 0.88 1.15 0.80 1.05 1.20 1.15 1.39 1.56 -// -H GEIM800106 -D Beta-strand indices for beta-proteins (Geisow-Roberts, 1980) -R -A Geisow, M.J. and Roberts, R.D.B. -T Amino acid preferences for secondary structure vary with protein class -J Int. J. Biol. Macromol. 2, 387-389 (1980) -C GEIM800107 0.878 PALJ810110 0.851 CHOP780202 0.839 - ROBB760106 0.838 QIAN880120 0.825 KANM800102 0.821 - LIFS790103 0.814 MUNV940103 -0.800 GEIM800110 -0.929 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.86 1.15 0.60 0.66 0.91 1.11 0.37 0.86 1.07 1.17 - 1.28 1.01 1.15 1.34 0.61 0.91 1.14 1.13 1.37 1.31 -// -H GEIM800107 -D Beta-strand indices for alpha/beta-proteins (Geisow-Roberts, 1980) -R -A Geisow, M.J. and Roberts, R.D.B. -T Amino acid preferences for secondary structure vary with protein class -J Int. J. Biol. Macromol. 2, 387-389 (1980) -C KANM800102 0.955 CHOP780202 0.929 PALJ810104 0.928 - PALJ810112 0.905 GEIM800105 0.901 ROBB760106 0.899 - PALJ810103 0.890 LIFS790101 0.888 LEVM780105 0.884 - GEIM800106 0.878 KANM800104 0.876 QIAN880121 0.875 - PTIO830102 0.850 BASU050103 0.847 BASU050101 0.847 - QIAN880120 0.843 LEVM780102 0.842 PRAM900103 0.842 - PONP930101 0.838 ROBB760105 0.836 NAGK730102 0.830 - PALJ810110 0.826 LIFS790103 0.823 CORJ870101 0.821 - PONP800108 0.817 NISK860101 0.813 QIAN880119 0.807 - MIYS990103 -0.803 GEIM800110 -0.815 VINM940101 -0.819 - MUNV940103 -0.869 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.91 0.99 0.72 0.74 1.12 0.90 0.41 0.91 1.01 1.29 - 1.23 0.86 0.96 1.26 0.65 0.93 1.05 1.15 1.21 1.58 -// -H GEIM800108 -D Aperiodic indices (Geisow-Roberts, 1980) -R -A Geisow, M.J. and Roberts, R.D.B. -T Amino acid preferences for secondary structure vary with protein class -J Int. J. Biol. Macromol. 2, 387-389 (1980) -C GEIM800111 0.967 CHOP780216 0.942 LEVM780106 0.932 - PRAM900104 0.931 LEVM780103 0.931 QIAN880133 0.930 - ISOY800103 0.930 CHOP780203 0.925 CHAM830101 0.916 - QIAN880132 0.906 CHOP780101 0.899 CHOP780210 0.896 - TANS770110 0.886 QIAN880134 0.884 QIAN880135 0.877 - PALJ810105 0.873 GEIM800110 0.870 PALJ810106 0.862 - QIAN880131 0.860 MUNV940103 0.806 ROBB760103 -0.802 - QIAN880120 -0.804 QIAN880119 -0.810 FAUJ880102 -0.819 - PTIO830101 -0.840 SUEM840101 -0.875 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.91 1. 1.64 1.40 0.93 0.94 0.97 1.51 0.90 0.65 - 0.59 0.82 0.58 0.72 1.66 1.23 1.04 0.67 0.92 0.60 -// -H GEIM800109 -D Aperiodic indices for alpha-proteins (Geisow-Roberts, 1980) -R -A Geisow, M.J. and Roberts, R.D.B. -T Amino acid preferences for secondary structure vary with protein class -J Int. J. Biol. Macromol. 2, 387-389 (1980) -C PALJ810107 -0.909 GEIM800102 -0.993 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.80 0.96 1.10 1.60 0. 1.60 0.40 2. 0.96 0.85 - 0.80 0.94 0.39 1.20 2.10 1.30 0.60 0. 1.80 0.80 -// -H GEIM800110 -D Aperiodic indices for beta-proteins (Geisow-Roberts, 1980) -R -A Geisow, M.J. and Roberts, R.D.B. -T Amino acid preferences for secondary structure vary with protein class -J Int. J. Biol. Macromol. 2, 387-389 (1980) -C MUNV940103 0.880 GEIM800108 0.870 GEIM800111 0.857 - QIAN880134 0.853 QIAN880135 0.842 PARS000101 0.831 - QIAN880133 0.822 LEVM780106 0.809 QIAN880121 -0.806 - CORJ870105 -0.807 CORJ870106 -0.812 KANM800102 -0.814 - GEIM800107 -0.815 ROBB760106 -0.819 CHOP780202 -0.824 - AVBF000101 -0.825 PALJ810110 -0.840 QIAN880119 -0.853 - LIFS790101 -0.862 LIFS790103 -0.889 QIAN880120 -0.898 - GEIM800106 -0.929 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.10 0.93 1.57 1.41 1.05 0.81 1.40 1.30 0.85 0.67 - 0.52 0.94 0.69 0.60 1.77 1.13 0.88 0.62 0.41 0.58 -// -H GEIM800111 -D Aperiodic indices for alpha/beta-proteins (Geisow-Roberts, 1980) -R -A Geisow, M.J. and Roberts, R.D.B. -T Amino acid preferences for secondary structure vary with protein class -J Int. J. Biol. Macromol. 2, 387-389 (1980) -C GEIM800108 0.967 CHOP780216 0.955 PRAM900104 0.954 - LEVM780103 0.952 LEVM780106 0.951 QIAN880133 0.943 - CHAM830101 0.938 CHOP780203 0.933 ISOY800103 0.929 - QIAN880132 0.929 QIAN880134 0.919 QIAN880135 0.895 - TANS770110 0.883 CHOP780101 0.878 CHOP780210 0.867 - QIAN880131 0.857 GEIM800110 0.857 PALJ810105 0.855 - PALJ810106 0.844 LIFS790101 -0.801 AVBF000101 -0.806 - KANM800103 -0.812 AURR980109 -0.814 QIAN880120 -0.816 - ROBB760103 -0.843 FAUJ880102 -0.873 PTIO830101 -0.876 - SUEM840101 -0.885 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.93 1.01 1.36 1.22 0.92 0.83 1.05 1.45 0.96 0.58 - 0.59 0.91 0.60 0.71 1.67 1.25 1.08 0.68 0.98 0.62 -// -H GOLD730101 -D Hydrophobicity factor (Goldsack-Chalifoux, 1973) -R PMID:4354159 -A Goldsack, D.E. and Chalifoux, R.C. -T Contribution of the free energy of mixing of hydrophobic side chains to the - stability of the tertiary structure -J J. Theor. Biol. 39, 645-651 (1973) (Asn Gln !) -C SIMZ760101 0.939 ARGP820101 0.936 JOND750101 0.935 - TAKK010101 0.872 MEEJ800102 0.866 LAWE840101 0.829 - CIDH920102 0.829 LEVM760106 0.827 BULH740102 0.825 - MEEJ810101 0.824 BLAS910101 0.821 ZIMJ680105 0.820 - CIDH920105 0.820 ZIMJ680102 0.818 ZHOH040101 0.817 - ROSM880104 0.808 MEEJ800101 0.808 MEEJ810102 0.806 - VENT840101 0.802 PARJ860101 -0.827 WOLS870101 -0.854 - BULH740101 -0.874 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.75 0.75 0.69 0.00 1.00 0.59 0.00 0.00 0.00 2.95 - 2.40 1.50 1.30 2.65 2.60 0.00 0.45 3.00 2.85 1.70 -// -H GOLD730102 -D Residue volume (Goldsack-Chalifoux, 1973) -R PMID:4354159 -A Goldsack, D.E. and Chalifoux, R.C. -T Contribution of the free energy of mixing of hydrophobic side chains to the - stability of the tertiary structure -J J. Theor. Biol. 39, 645-651 (1973) (Asn Gln 8.8) -C BIGC670101 1.000 KRIW790103 0.994 TSAJ990101 0.993 - TSAJ990102 0.991 CHOC750101 0.989 GRAR740103 0.984 - FAUJ880103 0.972 CHAM820101 0.967 CHOC760101 0.960 - HARY940101 0.959 PONJ960101 0.947 FASG760101 0.918 - LEVM760105 0.911 ROSG850101 0.909 DAWD720101 0.904 - LEVM760102 0.893 ZHOH040102 0.882 LEVM760106 0.875 - CHAM830106 0.869 LEVM760107 0.865 FAUJ880106 0.857 - RADA880106 0.854 MCMT640101 0.814 RADA880103 -0.864 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 88.3 181.2 125.1 110.8 112.4 148.7 140.5 60.0 152.6 168.5 - 168.5 175.6 162.2 189.0 122.2 88.7 118.2 227.0 193.0 141.4 -// -H GRAR740101 -D Composition (Grantham, 1974) -R PMID:4843792 -A Grantham, R. -T Amino acid difference formula to help explain protein evolution -J Science 185, 862-864 (1974) (Atomic weight ratio of noncarbons to carbons in - the side chain) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.00 0.65 1.33 1.38 2.75 0.89 0.92 0.74 0.58 0.00 - 0.00 0.33 0.00 0.00 0.39 1.42 0.71 0.13 0.20 0.00 -// -H GRAR740102 -D Polarity (Grantham, 1974) -R PMID:4843792 -A Grantham, R. -T Amino acid difference formula to help explain protein evolution -J Science 185, 862-864 (1974) -C WOEC730101 0.960 MIYS990105 0.928 PUNT030102 0.915 - MIYS990104 0.910 WOLS870101 0.910 MIYS990103 0.904 - MIYS990101 0.903 MIYS990102 0.903 OOBM770103 0.896 - PARJ860101 0.891 ROSM880101 0.887 KIDA850101 0.881 - HOPT810101 0.874 PUNT030101 0.873 FASG890101 0.872 - ROSM880102 0.870 VINM940101 0.869 LEVM760101 0.865 - KUHL950101 0.865 PRAM900101 0.855 ENGD860101 0.855 - KRIW790101 0.847 OOBM770101 0.841 CORJ870108 0.838 - VINM940102 0.837 MEIH800102 0.836 GUYH850103 0.831 - MONM990101 0.831 MEIH800101 0.824 BULH740101 0.822 - GUYH850101 0.818 GUYH850102 0.806 WIMW960101 -0.804 - JANJ780102 -0.809 MEEJ810102 -0.811 NADH010105 -0.812 - EISD840101 -0.823 WERD780101 -0.826 ROBB790101 -0.832 - CORJ870103 -0.836 MEEJ810101 -0.839 CORJ870107 -0.840 - CIDH920102 -0.842 PONP800101 -0.849 CORJ870104 -0.850 - CASG920101 -0.850 COWR900101 -0.854 GUOD860101 -0.855 - KYTJ820101 -0.859 NADH010101 -0.859 RADA880101 -0.861 - DESM900102 -0.862 JURD980101 -0.864 BASU050102 -0.864 - MEIH800103 -0.866 NADH010104 -0.868 MANP780101 -0.868 - PONP800102 -0.871 EISD860101 -0.871 EISD860103 -0.871 - CIDH920103 -0.871 PONP930101 -0.872 NISK800101 -0.879 - ROSG850102 -0.880 BIOV880102 -0.881 NADH010103 -0.881 - NADH010102 -0.881 CIDH920105 -0.884 PLIV810101 -0.888 - BASU050101 -0.889 CORJ870101 -0.890 CORJ870102 -0.893 - ZHOH040103 -0.895 MIYS850101 -0.895 SWER830101 -0.896 - PONP800103 -0.897 RADA880108 -0.899 NISK860101 -0.900 - BASU050103 -0.906 PONP800108 -0.907 BIOV880101 -0.910 - CIDH920104 -0.915 ROSM880105 -0.924 FAUJ830101 -0.948 - BLAS910101 -0.950 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 8.1 10.5 11.6 13.0 5.5 10.5 12.3 9.0 10.4 5.2 - 4.9 11.3 5.7 5.2 8.0 9.2 8.6 5.4 6.2 5.9 -// -H GRAR740103 -D Volume (Grantham, 1974) -R PMID:4843792 -A Grantham, R. -T Amino acid difference formula to help explain protein evolution -J Science 185, 862-864 (1974) -C KRIW790103 0.989 BIGC670101 0.984 GOLD730102 0.984 - TSAJ990101 0.979 TSAJ990102 0.978 CHOC750101 0.973 - FAUJ880103 0.959 CHAM820101 0.951 HARY940101 0.946 - CHOC760101 0.945 PONJ960101 0.937 ROSG850101 0.922 - RADA880106 0.920 FASG760101 0.908 LEVM760105 0.900 - CHAM830106 0.890 LEVM760102 0.885 ZHOH040102 0.872 - DAWD720101 0.853 LEVM760106 0.846 LEVM760107 0.841 - FAUJ880106 0.819 MCMT640101 0.817 RADA880103 -0.881 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 31. 124. 56. 54. 55. 85. 83. 3. 96. 111. - 111. 119. 105. 132. 32.5 32. 61. 170. 136. 84. -// -H GUYH850101 -D Partition energy (Guy, 1985) -R PMID:3978191 -A Guy, H.R. -T Amino acid side-chain partition energies and distribution of residues in - soluble proteins -J Biophys. J. 47, 61-70 (1985) -C MEIH800102 0.934 RACS770102 0.934 FASG890101 0.934 - PUNT030101 0.910 MIYS990103 0.907 MIYS990105 0.895 - MEIH800101 0.893 MIYS990102 0.892 MIYS990101 0.891 - MIYS990104 0.889 KRIW790101 0.885 VINM940103 0.865 - KRIW790102 0.864 GUYH850104 0.857 RACS770101 0.853 - CORJ870108 0.851 OOBM770101 0.848 GUYH850105 0.843 - KARP850102 0.840 ROSM880102 0.837 PUNT030102 0.836 - KIDA850101 0.834 KRIW710101 0.831 VINM940101 0.829 - JANJ780103 0.829 KUHL950101 0.827 JANJ780101 0.821 - PRAM900101 0.820 ENGD860101 0.820 GRAR740102 0.818 - RACS770103 0.816 CHOC760102 0.807 GUYH850102 0.805 - ROSM880101 0.803 HOPT810101 0.802 BASU050102 -0.801 - BASU050101 -0.807 CORJ870105 -0.810 NISK800101 -0.811 - YUTK870101 -0.813 CORJ870103 -0.813 RADA880101 -0.815 - CORJ870104 -0.815 PONP930101 -0.817 CORJ870101 -0.820 - CIDH920104 -0.821 OLSK800101 -0.823 EISD860101 -0.823 - PONP800106 -0.826 DESM900101 -0.831 EISD860103 -0.832 - ROSM880105 -0.832 CORJ870106 -0.833 CASG920101 -0.836 - PLIV810101 -0.836 MANP780101 -0.838 ZHOH040103 -0.839 - CORJ870107 -0.841 KYTJ820101 -0.843 EISD840101 -0.849 - NADH010105 -0.855 CHOC760103 -0.856 NADH010101 -0.862 - FAUJ830101 -0.863 JURD980101 -0.864 JANJ790102 -0.865 - BASU050103 -0.871 WERD780101 -0.871 JANJ780102 -0.872 - PONP800101 -0.877 NISK860101 -0.877 MEIH800103 -0.880 - PONP800102 -0.883 BIOV880102 -0.885 PONP800103 -0.887 - DESM900102 -0.895 MIYS850101 -0.909 NADH010104 -0.910 - NADH010102 -0.910 NADH010103 -0.916 BIOV880101 -0.929 - ROSG850102 -0.929 RADA880108 -0.948 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.10 1.91 0.48 0.78 -1.42 0.95 0.83 0.33 -0.50 -1.13 - -1.18 1.40 -1.59 -2.12 0.73 0.52 0.07 -0.51 -0.21 -1.27 -// -H HOPA770101 -D Hydration number (Hopfinger, 1971), Cited by Charton-Charton (1982) -R -A Hopfinger, A.J. -T -J "Intermolecular Interactions and Biomolecular Organizations", Wiley, New York - (1977) Cited by Charton-Charton (1982) (Cys !) -C WOEC730101 0.876 ZIMJ680103 0.815 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.0 2.3 2.2 6.5 0.1 2.1 6.2 1.1 2.8 0.8 - 0.8 5.3 0.7 1.4 0.9 1.7 1.5 1.9 2.1 0.9 -// -H HOPT810101 -D Hydrophilicity value (Hopp-Woods, 1981) -R PMID:6167991 -A Hopp, T.P. and Woods, K.R. -T Prediction of protein antigenic determinants from amino acid sequecces -J Proc. Natl. Acad. Sci. USA 78, 3824-3828 (1981) -C LEVM760101 0.985 WOEC730101 0.886 PUNT030102 0.886 - FUKS010104 0.884 ENGD860101 0.882 PRAM900101 0.881 - KIDA850101 0.881 GRAR740102 0.874 MIYS990105 0.862 - VINM940101 0.859 PUNT030101 0.858 FUKS010102 0.854 - VHEG790101 0.849 ROSM880101 0.848 MIYS990104 0.843 - OOBM770103 0.833 WOLS870101 0.830 MIYS990103 0.825 - PARJ860101 0.819 MIYS990102 0.804 MIYS990101 0.803 - GUYH850101 0.802 MIYS850101 -0.800 NADH010103 -0.805 - NAKH900110 -0.812 ZIMJ680105 -0.816 JACR890101 -0.816 - NADH010102 -0.820 NISK860101 -0.822 ROSG850102 -0.825 - MEEJ800102 -0.826 RADA880101 -0.829 ZHOH040103 -0.829 - BASU050103 -0.830 RADA880108 -0.831 CASG920101 -0.839 - EISD840101 -0.846 BIOV880101 -0.848 WIMW960101 -0.855 - RADA880102 -0.859 BIOV880102 -0.864 BLAS910101 -0.877 - EISD860101 -0.905 FAUJ830101 -0.909 ROSM880105 -0.955 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.5 3.0 0.2 3.0 -1.0 0.2 3.0 0.0 -0.5 -1.8 - -1.8 3.0 -1.3 -2.5 0.0 0.3 -0.4 -3.4 -2.3 -1.5 -// -H HUTJ700101 -D Heat capacity (Hutchens, 1970) -R -A Hutchens, J.O. -T Heat capacities, absolute entropies, and entropies of formation of amino - acids and related compounds -J In "Handbook of Biochemistry", 2nd ed. (Sober, H.A., ed.), Chemical Rubber - Co., Cleveland, Ohio, pp. B60-B61 (1970) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 29.22 26.37 38.30 37.09 50.70 44.02 41.84 23.71 59.64 45.00 - 48.03 57.10 69.32 48.52 36.13 32.40 35.20 56.92 51.73 40.35 -// -H HUTJ700102 -D Absolute entropy (Hutchens, 1970) -R -A Hutchens, J.O. -T Heat capacities, absolute entropies, and entropies of formation of amino - acids and related compounds -J In "Handbook of Biochemistry", 2nd ed. (Sober, H.A., ed.), Chemical Rubber - Co., Cleveland, Ohio, pp. B60-B61 (1970) -C HUTJ700103 0.867 LEVM760105 0.864 LEVM760102 0.835 - FAUJ880104 0.835 CHOC760101 0.819 CHAM820101 0.815 - FAUJ880103 0.807 FAUJ880106 0.806 CHOC750101 0.802 - RADA880103 -0.812 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 30.88 68.43 41.70 40.66 53.83 46.62 44.98 24.74 65.99 49.71 - 50.62 63.21 55.32 51.06 39.21 35.65 36.50 60.00 51.15 42.75 -// -H HUTJ700103 -D Entropy of formation (Hutchens, 1970) -R -A Hutchens, J.O. -T Heat capacities, absolute entropies, and entropies of formation of amino - acids and related compounds -J In "Handbook of Biochemistry", 2nd ed. (Sober, H.A., ed.), Chemical Rubber - Co., Cleveland, Ohio, pp. B60-B61 (1970) -C HUTJ700102 0.867 EISD860102 0.841 FAUJ880104 0.839 - LEVM760105 0.834 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 154.33 341.01 207.90 194.91 219.79 235.51 223.16 127.90 242.54 233.21 - 232.30 300.46 202.65 204.74 179.93 174.06 205.80 237.01 229.15 207.60 -// -H ISOY800101 -D Normalized relative frequency of alpha-helix (Isogai et al., 1980) -R PMID:7378550 -A Isogai, Y., Nemethy, G., Rackovsky, S., Leach, S.J. and Scheraga,H.A -T Characterization of multiple bends in proteins -J Biopolymers 19, 1183-1210 (1980) Recalculated by Kidera using a different set - of proteins -C MAXF760101 0.982 PALJ810102 0.965 KANM800101 0.963 - CHOP780201 0.959 ROBB760101 0.957 KANM800103 0.931 - LEVM780101 0.929 PRAM900102 0.929 TANS770101 0.906 - LEVM780104 0.904 RACS820108 0.904 QIAN880106 0.903 - GEIM800101 0.903 AURR980109 0.894 GEIM800104 0.891 - QIAN880107 0.887 PALJ810101 0.882 PALJ810109 0.874 - AURR980112 0.870 NAGK730101 0.862 AURR980114 0.857 - AURR980108 0.856 AURR980110 0.855 AURR980115 0.844 - ROBB760103 0.841 CRAJ730101 0.840 BURA740101 0.839 - QIAN880105 0.828 AURR980113 0.815 AURR980111 0.801 - CHAM830101 -0.815 NAGK730103 -0.821 MUNV940101 -0.875 - MUNV940102 -0.877 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.53 1.17 0.60 1.00 0.89 1.27 1.63 0.44 1.03 1.07 - 1.32 1.26 1.66 1.22 0.25 0.65 0.86 1.05 0.70 0.93 -// -H ISOY800102 -D Normalized relative frequency of extended structure (Isogai et al., 1980) -R PMID:7378550 -A Isogai, Y., Nemethy, G., Rackovsky, S., Leach, S.J. and Scheraga,H.A -T Characterization of multiple bends in proteins -J Biopolymers 19, 1183-1210 (1980) Recalculated by Kidera using a different set - of proteins -C MAXF760102 0.931 TANS770103 0.929 ROBB760105 0.847 - GEIM800105 0.843 PALJ810103 0.807 WOEC730101 -0.803 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.86 0.98 0.74 0.69 1.39 0.89 0.66 0.70 1.06 1.31 - 1.01 0.77 1.06 1.16 1.16 1.09 1.24 1.17 1.28 1.40 -// -H ISOY800103 -D Normalized relative frequency of bend (Isogai et al., 1980) -R PMID:7378550 -A Isogai, Y., Nemethy, G., Rackovsky, S., Leach, S.J. and Scheraga,H.A -T Characterization of multiple bends in proteins -J Biopolymers 19, 1183-1210 (1980) Recalculated by Kidera using a different set - of proteins -C LEVM780106 0.941 PRAM900104 0.934 CHOP780203 0.933 - LEVM780103 0.932 GEIM800108 0.930 GEIM800111 0.929 - PALJ810105 0.928 CHOP780216 0.921 QIAN880133 0.908 - TANS770110 0.897 QIAN880132 0.892 CHOP780101 0.885 - CHAM830101 0.881 CHOP780210 0.829 QIAN880134 0.828 - PALJ810116 0.814 PALJ810114 0.809 PALJ810106 0.807 - ROBB760112 0.807 AVBF000102 -0.821 SUEM840101 -0.850 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.78 1.06 1.56 1.50 0.60 0.78 0.97 1.73 0.83 0.40 - 0.57 1.01 0.30 0.67 1.55 1.19 1.09 0.74 1.14 0.44 -// -H ISOY800104 -D Normalized relative frequency of bend R (Isogai et al., 1980) -R PMID:7378550 -A Isogai, Y., Nemethy, G., Rackovsky, S., Leach, S.J. and Scheraga,H.A -T Characterization of multiple bends in proteins -J Biopolymers 19, 1183-1210 (1980) Recalculated by Kidera using a different set - of proteins -C TANS770104 0.918 CHOP780213 0.916 QIAN880134 0.893 - MUNV940104 0.866 FINA910102 0.844 MUNV940105 0.844 - QIAN880135 0.837 ONEK900102 0.828 GEOR030109 0.812 - ROBB760104 -0.817 ROBB760103 -0.830 PTIO830101 -0.832 - BUNA790101 -0.842 QIAN880108 -0.847 BLAM930101 -0.860 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.09 0.97 1.14 0.77 0.50 0.83 0.92 1.25 0.67 0.66 - 0.44 1.25 0.45 0.50 2.96 1.21 1.33 0.62 0.94 0.56 -// -H ISOY800105 -D Normalized relative frequency of bend S (Isogai et al., 1980) -R PMID:7378550 -A Isogai, Y., Nemethy, G., Rackovsky, S., Leach, S.J. and Scheraga,H.A -T Characterization of multiple bends in proteins -J Biopolymers 19, 1183-1210 (1980) Recalculated by Kidera using a different set - of proteins -C CHOP780214 0.923 TANS770105 0.836 ISOY800108 0.812 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.35 0.75 2.12 2.16 0.50 0.73 0.65 2.40 1.19 0.12 - 0.58 0.83 0.22 0.89 0.43 1.24 0.85 0.62 1.44 0.43 -// -H ISOY800106 -D Normalized relative frequency of helix end (Isogai et al., 1980) -R PMID:7378550 -A Isogai, Y., Nemethy, G., Rackovsky, S., Leach, S.J. and Scheraga,H.A -T Characterization of multiple bends in proteins -J Biopolymers 19, 1183-1210 (1980) Recalculated by Kidera using a different set - of proteins -C MAXF760106 0.849 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.09 1.07 0.88 1.24 1.04 1.09 1.14 0.27 1.07 0.97 - 1.30 1.20 0.55 0.80 1.78 1.20 0.99 1.03 0.69 0.77 -// -H ISOY800107 -D Normalized relative frequency of double bend (Isogai et al., 1980) -R PMID:7378550 -A Isogai, Y., Nemethy, G., Rackovsky, S., Leach, S.J. and Scheraga,H.A -T Characterization of multiple bends in proteins -J Biopolymers 19, 1183-1210 (1980) Recalculated by Kidera using a different set - of proteins -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.34 2.78 0.92 1.77 1.44 0.79 2.54 0.95 0.00 0.52 - 1.05 0.79 0.00 0.43 0.37 0.87 1.14 1.79 0.73 0.00 -// -H ISOY800108 -D Normalized relative frequency of coil (Isogai et al., 1980) -R PMID:7378550 -A Isogai, Y., Nemethy, G., Rackovsky, S., Leach, S.J. and Scheraga,H.A -T Characterization of multiple bends in proteins -J Biopolymers 19, 1183-1210 (1980) Recalculated by Kidera using a different set - of proteins -C MAXF760104 0.945 RICJ880115 0.889 RACS820109 0.848 - RACS820106 0.831 TANS770107 0.827 AURR980117 0.822 - TANS770109 0.816 ISOY800105 0.812 MAXF760105 0.810 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.47 0.52 2.16 1.15 0.41 0.95 0.64 3.03 0.89 0.62 - 0.53 0.98 0.68 0.61 0.63 1.03 0.39 0.63 0.83 0.76 -// -H JANJ780101 -D Average accessible surface area (Janin et al., 1978) -R PMID:731698 -A Janin, J., Wodak, S., Levitt, M. and Maigret, B. -T Conformation of amino acid side-chains in proteins -J J. Mol. Biol. 125, 357-386 (1978) -C GUYH850104 0.989 JANJ780103 0.985 CHOC760102 0.973 - OOBM770101 0.953 GUYH850105 0.923 PRAM900101 0.901 - ENGD860101 0.901 ROSM880102 0.853 FAUJ880109 0.850 - KIDA850101 0.843 MEIH800102 0.843 KUHL950101 0.839 - PUNT030101 0.824 ROSM880101 0.822 GUYH850101 0.821 - FASG890101 0.813 EISD860103 -0.808 BIOV880102 -0.809 - MEIH800103 -0.811 JANJ790101 -0.824 RADA880104 -0.825 - NADH010104 -0.832 ROSG850102 -0.836 RADA880101 -0.844 - KYTJ820101 -0.852 CHOC760104 -0.854 WOLR790101 -0.856 - OLSK800101 -0.858 JURD980101 -0.862 WOLR810101 -0.864 - JACR890101 -0.865 NADH010103 -0.868 WARP780101 -0.869 - DESM900102 -0.878 CHOC760103 -0.892 EISD840101 -0.907 - RADA880107 -0.917 NADH010102 -0.924 JANJ780102 -0.949 - JANJ790102 -0.989 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 27.8 94.7 60.1 60.6 15.5 68.7 68.2 24.5 50.7 22.8 - 27.6 103.0 33.5 25.5 51.5 42.0 45.0 34.7 55.2 23.7 -// -H JANJ780102 -D Percentage of buried residues (Janin et al., 1978) -R PMID:731698 -A Janin, J., Wodak, S., Levitt, M. and Maigret, B. -T Conformation of amino acid side-chains in proteins -J J. Mol. Biol. 125, 357-386 (1978) -C JANJ790102 0.966 CHOC760103 0.950 NADH010102 0.949 - JANJ790101 0.941 DESM900102 0.935 JURD980101 0.928 - NADH010103 0.923 KYTJ820101 0.922 ROSG850102 0.909 - OLSK800101 0.905 CHOC760104 0.903 NADH010104 0.898 - MEIH800103 0.897 NADH010101 0.892 CORJ870101 0.885 - EISD860103 0.883 PONP800103 0.882 WARP780101 0.878 - PONP800102 0.875 BIOV880101 0.875 EISD840101 0.874 - RADA880108 0.869 PONP800108 0.863 BIOV880102 0.862 - RADA880107 0.856 RADA880101 0.855 CASG920101 0.853 - DESM900101 0.853 NISK800101 0.853 PONP800101 0.851 - WOLR810101 0.851 MANP780101 0.842 WOLR790101 0.833 - PONP930101 0.825 FAUJ830101 0.825 NADH010105 0.814 - NISK860101 0.813 MIYS850101 0.806 BASU050103 0.803 - CIDH920104 0.803 GRAR740102 -0.809 MIYS990104 -0.811 - KRIW790102 -0.818 RACS770103 -0.828 KIDA850101 -0.828 - PUNT030102 -0.830 MIYS990103 -0.834 ROSM880101 -0.835 - KRIW790101 -0.837 MIYS990105 -0.846 PUNT030101 -0.848 - ENGD860101 -0.860 PRAM900101 -0.860 RACS770102 -0.869 - ROSM880102 -0.870 GUYH850101 -0.872 KUHL950101 -0.890 - GUYH850105 -0.898 FASG890101 -0.903 MEIH800102 -0.907 - CHOC760102 -0.935 JANJ780101 -0.949 JANJ780103 -0.957 - OOBM770101 -0.968 GUYH850104 -0.968 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 51. 5. 22. 19. 74. 16. 16. 52. 34. 66. - 60. 3. 52. 58. 25. 35. 30. 49. 24. 64. -// -H JANJ780103 -D Percentage of exposed residues (Janin et al., 1978) -R PMID:731698 -A Janin, J., Wodak, S., Levitt, M. and Maigret, B. -T Conformation of amino acid side-chains in proteins -J J. Mol. Biol. 125, 357-386 (1978) -C JANJ780101 0.985 GUYH850104 0.983 OOBM770101 0.965 - CHOC760102 0.959 GUYH850105 0.885 ENGD860101 0.884 - PRAM900101 0.884 MEIH800102 0.873 KRIW790102 0.848 - PUNT030101 0.848 RACS770103 0.847 KIDA850101 0.842 - FASG890101 0.838 ROSM880102 0.838 GUYH850101 0.829 - KUHL950101 0.826 RACS770102 0.823 MIYS990105 0.816 - VINM940104 0.811 ROSM880101 0.810 KRIW790101 0.805 - NADH010101 -0.804 RADA880108 -0.805 WOLR790101 -0.806 - JACR890101 -0.809 PONP800103 -0.812 RADA880101 -0.817 - EISD860103 -0.819 WOLR810101 -0.822 CASG920101 -0.825 - CORJ870101 -0.826 BIOV880101 -0.829 JANJ790101 -0.832 - DESM900101 -0.838 OLSK800101 -0.845 KYTJ820101 -0.845 - CHOC760104 -0.851 JURD980101 -0.853 RADA880107 -0.856 - BIOV880102 -0.860 NADH010104 -0.860 MEIH800103 -0.866 - ROSG850102 -0.879 EISD840101 -0.881 CHOC760103 -0.888 - WARP780101 -0.890 NADH010103 -0.892 DESM900102 -0.908 - NADH010102 -0.938 JANJ780102 -0.957 JANJ790102 -0.980 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 15. 67. 49. 50. 5. 56. 55. 10. 34. 13. - 16. 85. 20. 10. 45. 32. 32. 17. 41. 14. -// -H JANJ790101 -D Ratio of buried and accessible molar fractions (Janin, 1979) -R PMID:763335 -A Janin, J. -T Surface and inside volumes in globular proteins -J Nature 277, 491-492 (1979) -C JANJ780102 0.941 PONP800102 0.897 CORJ870101 0.891 - CHOC760103 0.887 CHOC760104 0.886 PONP800103 0.886 - PONP800108 0.881 NADH010103 0.879 NISK800101 0.875 - NADH010102 0.872 NADH010104 0.871 JURD980101 0.868 - KYTJ820101 0.867 PONP800101 0.866 JANJ790102 0.860 - ROSG850102 0.857 DESM900102 0.855 NADH010101 0.847 - NADH010105 0.843 MANP780101 0.842 MEIH800103 0.838 - EISD860103 0.829 OLSK800101 0.828 CASG920101 0.828 - BIOV880101 0.827 RADA880108 0.824 PONP930101 0.816 - CHOC760102 -0.809 KRIW790101 -0.810 KUHL950101 -0.811 - KRIW710101 -0.815 MEIH800102 -0.821 JANJ780101 -0.824 - JANJ780103 -0.832 GUYH850104 -0.862 OOBM770101 -0.871 - FASG890101 -0.885 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.7 0.1 0.4 0.4 4.6 0.3 0.3 1.8 0.8 3.1 - 2.4 0.05 1.9 2.2 0.6 0.8 0.7 1.6 0.5 2.9 -// -H JANJ790102 -D Transfer free energy (Janin, 1979) -R PMID:763335 -A Janin, J. -T Surface and inside volumes in globular proteins -J Nature 277, 491-492 (1979) -C JANJ780102 0.966 NADH010102 0.945 RADA880107 0.906 - CHOC760103 0.905 EISD840101 0.900 NADH010103 0.899 - DESM900102 0.897 ROSG850102 0.892 JURD980101 0.879 - WARP780101 0.877 OLSK800101 0.870 NADH010104 0.868 - KYTJ820101 0.866 JANJ790101 0.860 BIOV880102 0.856 - RADA880108 0.853 MEIH800103 0.853 BIOV880101 0.848 - PONP800103 0.844 JACR890101 0.840 RADA880101 0.839 - EISD860103 0.838 CHOC760104 0.835 WOLR810101 0.828 - FAUJ830101 0.826 CORJ870101 0.825 CASG920101 0.822 - PONP800102 0.822 DESM900101 0.818 WOLR790101 0.818 - NADH010101 0.808 ROSM880105 0.805 PONP800108 0.802 - MIYS990103 -0.804 MIYS990105 -0.820 FAUJ880109 -0.822 - ROSM880101 -0.824 KRIW790101 -0.825 RACS770103 -0.834 - KUHL950101 -0.844 PUNT030101 -0.846 KRIW790102 -0.847 - RACS770102 -0.851 KIDA850101 -0.858 GUYH850101 -0.865 - ROSM880102 -0.866 FASG890101 -0.875 ENGD860101 -0.890 - PRAM900101 -0.890 MEIH800102 -0.894 GUYH850105 -0.913 - OOBM770101 -0.963 CHOC760102 -0.969 JANJ780103 -0.980 - JANJ780101 -0.989 GUYH850104 -0.999 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.3 -1.4 -0.5 -0.6 0.9 -0.7 -0.7 0.3 -0.1 0.7 - 0.5 -1.8 0.4 0.5 -0.3 -0.1 -0.2 0.3 -0.4 0.6 -// -H JOND750101 -D Hydrophobicity (Jones, 1975) -R PMID:1127956 -A Jones, D.D. -T Amino acid properties and side-chain orientation in proteins: A cross - correlation approach -J J. Theor. Biol. 50, 167-183 (1975) -C ARGP820101 1.000 SIMZ760101 0.966 GOLD730101 0.935 - TAKK010101 0.906 MEEJ810101 0.891 ROSM880104 0.872 - CIDH920105 0.866 LEVM760106 0.864 CIDH920102 0.861 - MEEJ800102 0.855 MEEJ810102 0.852 ZHOH040101 0.841 - CIDH920103 0.826 PLIV810101 0.819 CIDH920104 0.818 - LEVM760107 0.806 GUYH850103 -0.807 PARJ860101 -0.834 - WOLS870101 -0.837 BULH740101 -0.853 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.87 0.85 0.09 0.66 1.52 0.00 0.67 0.10 0.87 3.15 - 2.17 1.64 1.67 2.87 2.77 0.07 0.07 3.77 2.67 1.87 -// -H JOND750102 -D pK (-COOH) (Jones, 1975) -R PMID:1127956 -A Jones, D.D. -T Amino acid properties and side-chain orientation in proteins: A cross - correlation approach -J J. Theor. Biol. 50, 167-183 (1975) Original reference of this data: McMeekin, - T.L., Groves, M.L. and Hipp, N.J. In "Amino Acids and Serum Proteins" - (Stekol, J.A., ed.), American Chemical Society, Washington, D.C., p. 54 - (1964) -C FASG760105 0.833 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.34 1.18 2.02 2.01 1.65 2.17 2.19 2.34 1.82 2.36 - 2.36 2.18 2.28 1.83 1.99 2.21 2.10 2.38 2.20 2.32 -// -H JOND920101 -D Relative frequency of occurrence (Jones et al., 1992) -R PMID:1633570 -A Jones, D.T., Taylor, W.R. and Thornton, J.M. -T The rapid generation of mutation data matrices from protein sequences -J CABIOS 8, 275-282 (1992) -C CEDJ970102 0.995 NAKH900101 0.993 CEDJ970104 0.983 - CEDJ970101 0.968 DAYM780101 0.954 JUKT750101 0.953 - FUKS010110 0.944 FUKS010112 0.943 JUNJ780101 0.932 - CEDJ970103 0.911 KUMS000102 0.909 NAKH920101 0.900 - NAKH920107 0.893 NAKH920106 0.889 NAKH920104 0.887 - NAKH920103 0.881 NAKH900109 0.878 KUMS000101 0.863 - FUKS010109 0.861 NAKH900102 0.846 CEDJ970105 0.834 - FUKS010111 0.832 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.077 0.051 0.043 0.052 0.020 0.041 0.062 0.074 0.023 0.053 - 0.091 0.059 0.024 0.040 0.051 0.069 0.059 0.014 0.032 0.066 -// -H JOND920102 -D Relative mutability (Jones et al., 1992) -R PMID:1633570 -A Jones, D.T., Taylor, W.R. and Thornton, J.M. -T The rapid generation of mutation data matrices from protein sequences -J CABIOS 8, 275-282 (1992) -C DAYM780201 0.889 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 100. 83. 104. 86. 44. 84. 77. 50. 91. 103. - 54. 72. 93. 51. 58. 117. 107. 25. 50. 98. -// -H JUKT750101 -D Amino acid distribution (Jukes et al., 1975) -R PMID:237322 -A Jukes, T.H., Holmquist, R. and Moise, H. -T Amino acid composition of proteins: Selection against the genetic code -J Science 189, 50-51 (1975) -C JUNJ780101 0.980 DAYM780101 0.975 CEDJ970101 0.973 - JOND920101 0.953 KUMS000102 0.948 CEDJ970104 0.942 - CEDJ970102 0.942 NAKH900101 0.941 FUKS010111 0.927 - FUKS010110 0.908 KUMS000101 0.879 FUKS010112 0.875 - NAKH920107 0.862 NAKH920101 0.849 NAKH920103 0.837 - CEDJ970103 0.835 NAKH920106 0.831 NAKH920104 0.827 - NAKH900109 0.815 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 5.3 2.6 3.0 3.6 1.3 2.4 3.3 4.8 1.4 3.1 - 4.7 4.1 1.1 2.3 2.5 4.5 3.7 0.8 2.3 4.2 -// -H JUNJ780101 -D Sequence frequency (Jungck, 1978) -R PMID:691072 -A Jungck, J.R. -T The genetic code as a periodic table -J J. Mol. Evol. 11, 211-224 (1978) -C DAYM780101 0.986 JUKT750101 0.980 CEDJ970101 0.968 - JOND920101 0.932 KUMS000102 0.927 CEDJ970104 0.921 - CEDJ970102 0.920 NAKH900101 0.918 FUKS010111 0.906 - FUKS010110 0.868 NAKH920107 0.856 KUMS000101 0.854 - NAKH900102 0.853 FUKS010112 0.836 NAKH920106 0.829 - NAKH920101 0.826 NAKH920103 0.820 NAKH920104 0.807 - CEDJ970103 0.806 CEDJ970105 0.803 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 685. 382. 397. 400. 241. 313. 427. 707. 155. 394. - 581. 575. 132. 303. 366. 593. 490. 99. 292. 553. -// -H KANM800101 -D Average relative probability of helix (Kanehisa-Tsong, 1980) -R PMID:7426680 -A Kanehisa, M.I. and Tsong, T.Y. -T Local hydrophobicity stabilizes secondary structures in proteins -J Biopolymers 19, 1617-1628 (1980) -C ISOY800101 0.963 PALJ810102 0.962 LEVM780104 0.958 - CHOP780201 0.956 MAXF760101 0.950 ROBB760101 0.945 - GEIM800101 0.942 LEVM780101 0.942 PRAM900102 0.942 - PALJ810101 0.928 TANS770101 0.927 GEIM800104 0.916 - RACS820108 0.914 KANM800103 0.912 NAGK730101 0.883 - AURR980115 0.858 BURA740101 0.855 QIAN880106 0.854 - QIAN880107 0.854 AURR980109 0.852 AURR980114 0.852 - PALJ810109 0.849 AURR980112 0.847 CRAJ730101 0.842 - AURR980110 0.830 QIAN880105 0.827 MUNV940102 -0.843 - MUNV940101 -0.846 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.36 1.00 0.89 1.04 0.82 1.14 1.48 0.63 1.11 1.08 - 1.21 1.22 1.45 1.05 0.52 0.74 0.81 0.97 0.79 0.94 -// -H KANM800102 -D Average relative probability of beta-sheet (Kanehisa-Tsong, 1980) -R PMID:7426680 -A Kanehisa, M.I. and Tsong, T.Y. -T Local hydrophobicity stabilizes secondary structures in proteins -J Biopolymers 19, 1617-1628 (1980) -C GEIM800107 0.955 PALJ810104 0.948 CHOP780202 0.945 - LIFS790101 0.940 LEVM780105 0.938 ROBB760106 0.938 - PALJ810103 0.932 KANM800104 0.928 PTIO830102 0.917 - GEIM800105 0.916 QIAN880121 0.900 ROBB760105 0.898 - QIAN880120 0.896 QIAN880119 0.888 NAGK730102 0.878 - PALJ810112 0.869 BASU050103 0.869 PONP930101 0.866 - LIFS790103 0.863 AVBF000101 0.859 BASU050101 0.856 - LEVM780102 0.856 PRAM900103 0.856 PONP800108 0.849 - CORJ870101 0.839 PALJ810110 0.836 MANP780101 0.833 - PONP800101 0.829 GEIM800106 0.821 NISK860101 0.819 - PONP800102 0.815 NISK800101 0.809 CHOP780208 0.804 - PONP800103 0.803 LIFS790102 0.801 QIAN880118 0.801 - PUNT030102 -0.803 MIYS990104 -0.808 OOBM770103 -0.812 - GEIM800110 -0.814 MIYS990103 -0.823 MUNV940103 -0.916 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.81 0.85 0.62 0.71 1.17 0.98 0.53 0.88 0.92 1.48 - 1.24 0.77 1.05 1.20 0.61 0.92 1.18 1.18 1.23 1.66 -// -H KANM800103 -D Average relative probability of inner helix (Kanehisa-Tsong, 1980) -R PMID:7426680 -A Kanehisa, M.I. and Tsong, T.Y. -T Local hydrophobicity stabilizes secondary structures in proteins -J Biopolymers 19, 1617-1628 (1980) -C AURR980109 0.944 ISOY800101 0.931 PALJ810102 0.916 - AURR980114 0.916 KANM800101 0.912 CHOP780201 0.912 - QIAN880107 0.908 AURR980113 0.905 MAXF760101 0.901 - BEGF750101 0.893 QIAN880106 0.889 ROBB760103 0.887 - ROBB760101 0.886 GEIM800101 0.881 AURR980112 0.871 - LEVM780104 0.859 RACS820108 0.858 AURR980108 0.857 - PRAM900102 0.850 LEVM780101 0.850 TANS770101 0.843 - PALJ810101 0.836 RICJ880109 0.829 QIAN880108 0.829 - QIAN880109 0.824 FINA770101 0.823 QIAN880110 0.820 - SUEM840101 0.820 QIAN880105 0.820 BURA740101 0.810 - CHOP780216 -0.808 GEIM800111 -0.812 PRAM900104 -0.814 - LEVM780103 -0.816 MUNV940102 -0.823 CHOP780101 -0.824 - MUNV940101 -0.826 PALJ810106 -0.840 NAGK730103 -0.847 - CHAM830101 -0.889 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.45 1.15 0.64 0.91 0.70 1.14 1.29 0.53 1.13 1.23 - 1.56 1.27 1.83 1.20 0.21 0.48 0.77 1.17 0.74 1.10 -// -H KANM800104 -D Average relative probability of inner beta-sheet (Kanehisa-Tsong, 1980) -R PMID:7426680 -A Kanehisa, M.I. and Tsong, T.Y. -T Local hydrophobicity stabilizes secondary structures in proteins -J Biopolymers 19, 1617-1628 (1980) -C KANM800102 0.928 ROBB760105 0.885 ROBB760106 0.877 - GEIM800107 0.876 GEIM800105 0.861 PTIO830102 0.858 - PALJ810104 0.851 BASU050101 0.850 PONP800108 0.849 - BASU050103 0.848 LEVM780105 0.841 QIAN880119 0.841 - CHOP780202 0.839 LIFS790101 0.834 PONP930101 0.833 - CORJ870101 0.833 QIAN880121 0.829 MANP780101 0.827 - JURD980101 0.826 KYTJ820101 0.824 PALJ810103 0.823 - PONP800101 0.823 PALJ810112 0.813 PONP800102 0.813 - LIFS790102 0.809 QIAN880120 0.803 MUNV940103 -0.857 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.75 0.79 0.33 0.31 1.46 0.75 0.46 0.83 0.83 1.87 - 1.56 0.66 0.86 1.37 0.52 0.82 1.36 0.79 1.08 2.00 -// -H KARP850101 -D Flexibility parameter for no rigid neighbors (Karplus-Schulz, 1985) -R -A Karplus, P.A. and Schulz, G.E. -T Prediction of chain flexibility in proteins -J Naturwiss. 72, 212-213 (1985) -C VINM940102 0.874 VINM940103 0.837 RACS770101 0.837 - FUKS010103 0.834 MEIH800101 0.832 MIYS990104 0.822 - VINM940101 0.821 PARS000101 0.816 GUYH850102 0.811 - CIDH920104 -0.801 BIOV880102 -0.804 RADA880108 -0.804 - ROSG850101 -0.807 MIYS850101 -0.811 MEEJ810101 -0.818 - BASU050102 -0.819 BIOV880101 -0.825 NISK860101 -0.828 - ZHOH040101 -0.833 WERD780101 -0.842 ZHOH040103 -0.846 - CIDH920101 -0.864 CIDH920105 -0.866 CIDH920102 -0.873 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.041 1.038 1.117 1.033 0.960 1.165 1.094 1.142 0.982 1.002 - 0.967 1.093 0.947 0.930 1.055 1.169 1.073 0.925 0.961 0.982 -// -H KARP850102 -D Flexibility parameter for one rigid neighbor (Karplus-Schulz, 1985) -R -A Karplus, P.A. and Schulz, G.E. -T Prediction of chain flexibility in proteins -J Naturwiss. 72, 212-213 (1985) -C KRIW790101 0.917 MIYS990104 0.909 MIYS990103 0.901 - MIYS990105 0.888 VINM940101 0.885 MEIH800101 0.884 - GUYH850102 0.882 FASG890101 0.871 RACS770101 0.869 - CORJ870108 0.868 VINM940103 0.863 KRIW710101 0.855 - PARS000101 0.852 RACS770102 0.852 KRIW790102 0.843 - GUYH850101 0.840 MEIH800102 0.837 FUKS010103 0.835 - VINM940102 0.834 MIYS990102 0.828 MIYS990101 0.825 - FUKS010104 0.822 OOBM770103 0.820 BHAR880101 0.806 - PUNT030101 0.805 BASU050103 -0.806 NADH010102 -0.807 - DESM900102 -0.815 PONP800106 -0.820 BASU050102 -0.825 - CIDH920101 -0.828 DESM900101 -0.829 CORJ870104 -0.830 - CIDH920104 -0.833 NADH010103 -0.834 CORJ870105 -0.834 - NADH010104 -0.835 ZHOH040103 -0.836 CIDH920105 -0.839 - BAEK050101 -0.839 CORJ870103 -0.850 CIDH920103 -0.852 - BIOV880102 -0.859 MANP780101 -0.863 CORJ870101 -0.865 - CORJ870107 -0.866 PONP800103 -0.870 CORJ870106 -0.870 - MIYS850101 -0.878 RADA880108 -0.879 BIOV880101 -0.880 - NISK800101 -0.885 PONP800102 -0.887 PONP800101 -0.889 - PONP930101 -0.893 ROSG850102 -0.897 CASG920101 -0.901 - NISK860101 -0.901 WERD780101 -0.909 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.946 1.028 1.006 1.089 0.878 1.025 1.036 1.042 0.952 0.892 - 0.961 1.082 0.862 0.912 1.085 1.048 1.051 0.917 0.930 0.927 -// -H KARP850103 -D Flexibility parameter for two rigid neighbors (Karplus-Schulz, 1985) -R -A Karplus, P.A. and Schulz, G.E. -T Prediction of chain flexibility in proteins -J Naturwiss. 72, 212-213 (1985) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.892 0.901 0.930 0.932 0.925 0.885 0.933 0.923 0.894 0.872 - 0.921 1.057 0.804 0.914 0.932 0.923 0.934 0.803 0.837 0.913 -// -H KHAG800101 -D The Kerr-constant increments (Khanarian-Moore, 1980) -R -A Khanarian, G. and Moore, W.J. -T The Kerr effect of amino acids in water -J Aust. J. Chem. 33, 1727-1741 (1980) (Cys Lys Tyr !) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 49.1 133. -3.6 0. 0. 20. 0. 64.6 75.7 18.9 - 15.6 0. 6.8 54.7 43.8 44.4 31.0 70.5 0. 29.5 -// -H KLEP840101 -D Net charge (Klein et al., 1984) -R PMID:6547351 -A Klein, P., Kanehisa, M. and DeLisi, C. -T Prediction of protein function from sequence properties: Discriminant - analysis of a data base -J Biochim. Biophys. Acta 787, 221-226 (1984) -C ZIMJ680104 0.941 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0. 1. 0. -1. 0. 0. -1. 0. 0. 0. - 0. 1. 0. 0. 0. 0. 0. 0. 0. 0. -// -H KRIW710101 -D Side chain interaction parameter (Krigbaum-Rubin, 1971) -R PMID:5553983 -A Krigbaum, W.R. and Rubin, B.H. -T Local interactions as structure determinant for globular proteins -J Biochim. Biophys. Acta 229, 368-383 (1971) -C KRIW790101 0.908 FASG890101 0.865 MIYS990103 0.856 - KARP850102 0.855 KRIW790102 0.839 MIYS990104 0.837 - GUYH850101 0.831 GUYH850102 0.811 MIYS990105 0.801 - DESM900101 -0.807 CASG920101 -0.808 CORJ870101 -0.812 - BIOV880101 -0.813 JANJ790101 -0.815 WERD780101 -0.819 - NADH010102 -0.825 NISK800101 -0.831 PONP800106 -0.841 - NADH010105 -0.842 NADH010106 -0.846 RADA880108 -0.847 - PONP800101 -0.850 ROSG850102 -0.852 NADH010103 -0.860 - NADH010104 -0.874 PONP800102 -0.887 PONP800103 -0.890 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 4.60 6.50 5.90 5.70 -1.00 6.10 5.60 7.60 4.50 2.60 - 3.25 7.90 1.40 3.20 7.00 5.25 4.80 4.00 4.35 3.40 -// -H KRIW790101 -D Side chain interaction parameter (Krigbaum-Komoriya, 1979) -R PMID:760806 -A Krigbaum, W.R. and Komoriya, A. -T Local interactions as a structure determinant for protein molecules: II -J Biochim. Biophys. Acta 576, 204-228 (1979) -C MIYS990104 0.945 MIYS990103 0.944 MIYS990105 0.925 - KARP850102 0.917 FASG890101 0.914 KRIW790102 0.914 - KRIW710101 0.908 VINM940101 0.890 GUYH850101 0.885 - GUYH850102 0.878 MEIH800102 0.876 VINM940103 0.875 - MIYS990102 0.873 RACS770102 0.871 MIYS990101 0.870 - MEIH800101 0.869 OOBM770103 0.865 GRAR740102 0.847 - VINM940102 0.834 PUNT030101 0.833 CORJ870108 0.833 - MONM990101 0.830 RACS770101 0.828 FUKS010104 0.828 - PUNT030102 0.826 GUYH850104 0.822 OOBM770101 0.816 - JANJ780103 0.805 PARS000101 0.804 CORJ870104 -0.801 - PTIO830102 -0.801 QIAN880121 -0.803 KYTJ820101 -0.805 - JANJ790101 -0.810 CIDH920105 -0.816 CIDH920103 -0.819 - BASU050101 -0.821 JURD980101 -0.824 JANJ790102 -0.825 - CORJ870106 -0.825 NADH010101 -0.827 CORJ870103 -0.830 - CORJ870107 -0.832 JANJ780102 -0.837 DESM900101 -0.847 - MEIH800103 -0.850 DESM900102 -0.859 PONP800108 -0.860 - BAEK050101 -0.860 BASU050103 -0.860 NADH010106 -0.861 - FAUJ830101 -0.865 BASU050102 -0.867 CIDH920104 -0.867 - MANP780101 -0.870 BIOV880102 -0.876 PONP800101 -0.888 - NISK800101 -0.896 RADA880108 -0.897 NADH010105 -0.898 - WERD780101 -0.899 CORJ870101 -0.902 ZHOH040103 -0.905 - NISK860101 -0.907 PONP930101 -0.909 MIYS850101 -0.910 - BIOV880101 -0.910 CASG920101 -0.911 PONP800102 -0.915 - NADH010102 -0.929 PONP800103 -0.930 ROSG850102 -0.935 - NADH010103 -0.954 NADH010104 -0.958 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 4.32 6.55 6.24 6.04 1.73 6.13 6.17 6.09 5.66 2.31 - 3.93 7.92 2.44 2.59 7.19 5.37 5.16 2.78 3.58 3.31 -// -H KRIW790102 -D Fraction of site occupied by water (Krigbaum-Komoriya, 1979) -R PMID:760806 -A Krigbaum, W.R. and Komoriya, A. -T Local interactions as a structure determinant for protein molecules: II -J Biochim. Biophys. Acta 576, 204-228 (1979) -C KRIW790101 0.914 MIYS990103 0.899 MEIH800102 0.898 - RACS770102 0.895 RACS770103 0.889 MIYS990104 0.889 - MIYS990105 0.887 FASG890101 0.882 GUYH850101 0.864 - FUKS010104 0.853 VINM940101 0.853 GUYH850104 0.849 - JANJ780103 0.848 KARP850102 0.843 GUYH850102 0.841 - KRIW710101 0.839 VINM940103 0.836 MEIH800101 0.835 - MIYS990102 0.826 OOBM770103 0.824 OOBM770101 0.822 - MIYS990101 0.821 RACS770101 0.814 PUNT030101 0.811 - PONP800101 -0.804 CORJ870103 -0.812 CORJ870107 -0.816 - JANJ780102 -0.818 PONP930101 -0.821 PONP800102 -0.830 - DESM900101 -0.835 CORJ870101 -0.838 JANJ790102 -0.847 - DESM900102 -0.852 PONP800103 -0.853 NISK860101 -0.855 - RADA880108 -0.856 CASG920101 -0.865 BIOV880101 -0.869 - MIYS850101 -0.869 WERD780101 -0.875 BIOV880102 -0.878 - NADH010104 -0.882 MEIH800103 -0.885 NADH010103 -0.887 - NADH010102 -0.890 ROSG850102 -0.922 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.28 0.34 0.31 0.33 0.11 0.39 0.37 0.28 0.23 0.12 - 0.16 0.59 0.08 0.10 0.46 0.27 0.26 0.15 0.25 0.22 -// -H KRIW790103 -D Side chain volume (Krigbaum-Komoriya, 1979) -R PMID:760806 -A Krigbaum, W.R. and Komoriya, A. -T Local interactions as a structure determinant for protein molecules: II -J Biochim. Biophys. Acta 576, 204-228 (1979) (Gly Pro 7.8) -C GOLD730102 0.994 BIGC670101 0.993 GRAR740103 0.989 - TSAJ990101 0.988 TSAJ990102 0.987 CHOC750101 0.982 - FAUJ880103 0.965 CHAM820101 0.963 HARY940101 0.956 - CHOC760101 0.948 PONJ960101 0.943 ROSG850101 0.920 - FASG760101 0.910 LEVM760105 0.900 DAWD720101 0.893 - ZHOH040102 0.884 LEVM760102 0.884 RADA880106 0.883 - CHAM830106 0.876 LEVM760106 0.862 LEVM760107 0.860 - FAUJ880106 0.845 MCMT640101 0.810 RADA880103 -0.871 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 27.5 105.0 58.7 40.0 44.6 80.7 62.0 0.0 79.0 93.5 - 93.5 100.0 94.1 115.5 41.9 29.3 51.3 145.5 117.3 71.5 -// -H KYTJ820101 -D Hydropathy index (Kyte-Doolittle, 1982) -R PMID:7108955 -A Kyte, J. and Doolittle, R.F. -T A simple method for displaying the hydropathic character of a protein -J J. Mol. Biol. 157, 105-132 (1982) -C JURD980101 0.996 CHOC760103 0.964 OLSK800101 0.942 - JANJ780102 0.922 NADH010102 0.920 NADH010101 0.918 - DESM900102 0.898 EISD860103 0.897 CHOC760104 0.889 - NADH010103 0.885 WOLR810101 0.885 RADA880101 0.884 - MANP780101 0.881 EISD840101 0.878 PONP800103 0.870 - WOLR790101 0.869 NAKH920108 0.868 JANJ790101 0.867 - JANJ790102 0.866 BASU050103 0.863 PONP800102 0.861 - MEIH800103 0.856 NADH010104 0.856 PONP800101 0.851 - PONP800108 0.850 CORJ870101 0.848 WARP780101 0.845 - COWR900101 0.845 PONP930101 0.844 RADA880108 0.842 - ROSG850102 0.841 DESM900101 0.837 BLAS910101 0.836 - BIOV880101 0.829 RADA880107 0.828 BASU050101 0.826 - KANM800104 0.824 LIFS790102 0.824 CIDH920104 0.824 - MIYS850101 0.821 RADA880104 0.819 NAKH900111 0.817 - CORJ870104 0.812 NISK800101 0.812 FAUJ830101 0.811 - ROSM880105 0.806 ARGP820103 0.806 CORJ870103 0.806 - NADH010105 0.804 NAKH920105 0.803 ARGP820102 0.803 - CORJ870107 0.801 MIYS990104 -0.800 CORJ870108 -0.802 - KRIW790101 -0.805 MIYS990105 -0.818 MIYS990103 -0.833 - CHOC760102 -0.838 MIYS990101 -0.840 MIYS990102 -0.840 - MONM990101 -0.842 GUYH850101 -0.843 FASG890101 -0.844 - RACS770102 -0.844 ROSM880101 -0.845 JANJ780103 -0.845 - ENGD860101 -0.850 PRAM900101 -0.850 JANJ780101 -0.852 - GRAR740102 -0.859 PUNT030102 -0.862 GUYH850104 -0.869 - MEIH800102 -0.871 PUNT030101 -0.872 ROSM880102 -0.878 - KUHL950101 -0.883 GUYH850105 -0.883 OOBM770101 -0.899 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.8 -4.5 -3.5 -3.5 2.5 -3.5 -3.5 -0.4 -3.2 4.5 - 3.8 -3.9 1.9 2.8 -1.6 -0.8 -0.7 -0.9 -1.3 4.2 -// -H LAWE840101 -D Transfer free energy, CHP/water (Lawson et al., 1984) -R PMID:6699000 -A Lawson, E.Q., Sadler, A.J., Harmatz, D., Brandau, D.T., Micanovic, R. - MacElroy, R.D. and Middaught, C.R. -T A simple experimental model for hydrophobic interactions in proteins -J J. Biol. Chem. 259, 2910-2912 (1984) -C GOLD730101 0.829 SIMZ760101 0.815 ZIMJ680105 0.809 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.48 -0.06 -0.87 -0.75 -0.32 -0.32 -0.71 0.00 -0.51 0.81 - 1.02 -0.09 0.81 1.03 2.03 0.05 -0.35 0.66 1.24 0.56 -// -H LEVM760101 -D Hydrophobic parameter (Levitt, 1976) -R PMID:957439 -A Levitt, M. -T A simplified representation of protein conformations for rapid simulation of - protein folfing -J J. Mol. Biol. 104, 59-107 (1976) -C HOPT810101 0.985 KIDA850101 0.915 ENGD860101 0.881 - PRAM900101 0.881 ROSM880101 0.876 WOEC730101 0.872 - FUKS010104 0.869 GRAR740102 0.865 PUNT030102 0.848 - WOLS870101 0.845 FUKS010102 0.837 PUNT030101 0.835 - MIYS990105 0.828 VHEG790101 0.825 ROSM880102 0.823 - VINM940101 0.815 KUHL950101 0.807 PARJ860101 0.806 - OOBM770103 0.805 MIYS990104 0.801 PLIV810101 -0.801 - BASU050103 -0.808 ZHOH040103 -0.811 WIMW960101 -0.812 - RADA880108 -0.824 BIOV880101 -0.831 JACR890101 -0.832 - RADA880101 -0.838 RADA880102 -0.838 ZIMJ680105 -0.844 - BIOV880102 -0.847 MEEJ800102 -0.855 EISD840101 -0.859 - BLAS910101 -0.889 FAUJ830101 -0.919 EISD860101 -0.921 - ROSM880105 -0.954 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.5 3.0 0.2 2.5 -1.0 0.2 2.5 0.0 -0.5 -1.8 - -1.8 3.0 -1.3 -2.5 -1.4 0.3 -0.4 -3.4 -2.3 -1.5 -// -H LEVM760102 -D Distance between C-alpha and centroid of side chain (Levitt, 1976) -R PMID:957439 -A Levitt, M. -T A simplified representation of protein conformations for rapid simulation of - protein folfing -J J. Mol. Biol. 104, 59-107 (1976) -C LEVM760105 0.987 CHOC760101 0.972 FASG760101 0.966 - CHAM830106 0.962 FAUJ880103 0.947 CHOC750101 0.933 - PONJ960101 0.930 TSAJ990102 0.918 CHAM820101 0.915 - TSAJ990101 0.910 HARY940101 0.905 FAUJ880106 0.900 - BIGC670101 0.896 GOLD730102 0.893 GRAR740103 0.885 - KRIW790103 0.884 WOLS870102 0.881 DAWD720101 0.873 - RADA880106 0.871 OOBM770102 0.869 FAUJ880104 0.867 - CHAM830105 0.843 HUTJ700102 0.835 RADA880103 -0.913 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.77 3.72 1.98 1.99 1.38 2.58 2.63 0.00 2.76 1.83 - 2.08 2.94 2.34 2.97 1.42 1.28 1.43 3.58 3.36 1.49 -// -H LEVM760103 -D Side chain angle theta(AAR) (Levitt, 1976) -R PMID:957439 -A Levitt, M. -T A simplified representation of protein conformations for rapid simulation of - protein folfing -J J. Mol. Biol. 104, 59-107 (1976) (Gly missing) -C AVBF000102 0.816 RICJ880115 -0.829 LEVM760104 -0.840 - KIMC930101 -0.861 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 121.9 121.4 117.5 121.2 113.7 118.0 118.2 0. 118.2 118.9 - 118.1 122.0 113.1 118.2 81.9 117.9 117.1 118.4 110.0 121.7 -// -H LEVM760104 -D Side chain torsion angle phi(AAAR) (Levitt, 1976) -R PMID:957439 -A Levitt, M. -T A simplified representation of protein conformations for rapid simulation of - protein folfing -J J. Mol. Biol. 104, 59-107 (1976) -C KIMC930101 0.842 PRAM820102 0.812 CHAM810101 -0.818 - LEVM760103 -0.840 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 243.2 206.6 207.1 215.0 209.4 205.4 213.6 300.0 219.9 217.9 - 205.6 210.9 204.0 203.7 237.4 232.0 226.7 203.7 195.6 220.3 -// -H LEVM760105 -D Radius of gyration of side chain (Levitt, 1976) -R PMID:957439 -A Levitt, M. -T A simplified representation of protein conformations for rapid simulation of - protein folfing -J J. Mol. Biol. 104, 59-107 (1976) (Gly 0.089) -C LEVM760102 0.987 CHOC760101 0.968 CHAM830106 0.958 - FASG760101 0.951 FAUJ880103 0.945 CHOC750101 0.939 - PONJ960101 0.928 TSAJ990102 0.928 TSAJ990101 0.922 - HARY940101 0.919 CHAM820101 0.915 BIGC670101 0.913 - GOLD730102 0.911 GRAR740103 0.900 KRIW790103 0.900 - DAWD720101 0.898 FAUJ880104 0.896 FAUJ880106 0.889 - RADA880106 0.871 OOBM770102 0.868 HUTJ700102 0.864 - WOLS870102 0.836 HUTJ700103 0.834 CHAM830105 0.829 - RADA880103 -0.893 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.77 2.38 1.45 1.43 1.22 1.75 1.77 0.58 1.78 1.56 - 1.54 2.08 1.80 1.90 1.25 1.08 1.24 2.21 2.13 1.29 -// -H LEVM760106 -D van der Waals parameter R0 (Levitt, 1976) -R PMID:957439 -A Levitt, M. -T A simplified representation of protein conformations for rapid simulation of - protein folfing -J J. Mol. Biol. 104, 59-107 (1976) -C ZHOH040102 0.905 ROSG850101 0.896 ZHOH040101 0.883 - BIGC670101 0.876 GOLD730102 0.875 ZIMJ680102 0.873 - CIDH920102 0.873 ARGP820101 0.865 JOND750101 0.864 - KRIW790103 0.862 TSAJ990101 0.849 SIMZ760101 0.848 - GRAR740103 0.846 CHOC750101 0.841 TSAJ990102 0.841 - TAKK010101 0.841 PLIV810101 0.830 HARY940101 0.829 - CIDH920105 0.828 GOLD730101 0.827 MEEJ810101 0.827 - CIDH920101 0.826 CHAM820101 0.818 BASU050102 0.805 - ROBB790101 0.804 LEVM760107 0.804 BULH740101 -0.818 - GUYH850103 -0.822 FUKS010103 -0.829 PARJ860101 -0.832 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 5.2 6.0 5.0 5.0 6.1 6.0 6.0 4.2 6.0 7.0 - 7.0 6.0 6.8 7.1 6.2 4.9 5.0 7.6 7.1 6.4 -// -H LEVM760107 -D van der Waals parameter epsilon (Levitt, 1976) -R PMID:957439 -A Levitt, M. -T A simplified representation of protein conformations for rapid simulation of - protein folfing -J J. Mol. Biol. 104, 59-107 (1976) -C CHAM820101 0.891 FAUJ880103 0.875 TSAJ990101 0.866 - GOLD730102 0.865 BIGC670101 0.863 TSAJ990102 0.861 - GARJ730101 0.860 KRIW790103 0.860 CHOC750101 0.858 - ZHOH040101 0.855 ROSG850101 0.852 NOZY710101 0.845 - ZHOH040102 0.843 GRAR740103 0.841 PONJ960101 0.827 - TAKK010101 0.819 SNEP660103 0.818 HARY940101 0.815 - FASG760101 0.815 CHOC760101 0.807 JOND750101 0.806 - ARGP820101 0.806 LEVM760106 0.804 WEBA780101 -0.923 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.025 0.20 0.10 0.10 0.10 0.10 0.10 0.025 0.10 0.19 - 0.19 0.20 0.19 0.39 0.17 0.025 0.10 0.56 0.39 0.15 -// -H LEVM780101 -D Normalized frequency of alpha-helix, with weights (Levitt, 1978) -R PMID:708713 -A Levitt, M. -T Conformational preferences of amino acids in globular proteins -J Biochemistry 17, 4277-4285 (1978) -C PRAM900102 1.000 LEVM780104 0.964 PALJ810101 0.943 - KANM800101 0.942 ISOY800101 0.929 MAXF760101 0.924 - ROBB760101 0.916 GEIM800101 0.912 GEIM800104 0.907 - RACS820108 0.904 PALJ810102 0.902 PALJ810109 0.898 - NAGK730101 0.894 CRAJ730101 0.887 CHOP780201 0.873 - TANS770101 0.854 KANM800103 0.850 QIAN880107 0.829 - QIAN880106 0.827 BURA740101 0.805 NAGK730103 -0.809 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.29 0.96 0.90 1.04 1.11 1.27 1.44 0.56 1.22 0.97 - 1.30 1.23 1.47 1.07 0.52 0.82 0.82 0.99 0.72 0.91 -// -H LEVM780102 -D Normalized frequency of beta-sheet, with weights (Levitt, 1978) -R PMID:708713 -A Levitt, M. -T Conformational preferences of amino acids in globular proteins -J Biochemistry 17, 4277-4285 (1978) -C PRAM900103 1.000 PALJ810112 0.913 LEVM780105 0.899 - PALJ810104 0.868 PTIO830102 0.865 LIFS790101 0.864 - QIAN880120 0.858 KANM800102 0.856 PALJ810103 0.846 - GEIM800107 0.842 BEGF750102 0.834 QIAN880119 0.834 - CHOP780202 0.833 AVBF000101 0.815 QIAN880121 0.805 - MUNV940103 -0.848 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.90 0.99 0.76 0.72 0.74 0.80 0.75 0.92 1.08 1.45 - 1.02 0.77 0.97 1.32 0.64 0.95 1.21 1.14 1.25 1.49 -// -H LEVM780103 -D Normalized frequency of reverse turn, with weights (Levitt, 1978) -R PMID:708713 -A Levitt, M. -T Conformational preferences of amino acids in globular proteins -J Biochemistry 17, 4277-4285 (1978) -C PRAM900104 1.000 LEVM780106 0.984 GEIM800111 0.952 - CHOP780216 0.952 QIAN880133 0.948 QIAN880134 0.935 - ISOY800103 0.932 QIAN880132 0.931 GEIM800108 0.931 - CHOP780203 0.927 CHAM830101 0.909 PALJ810105 0.909 - QIAN880135 0.906 CHOP780101 0.893 TANS770110 0.875 - CHOP780210 0.852 PALJ810106 0.848 RACS770101 0.808 - AURR980109 -0.814 KANM800103 -0.816 QIAN880108 -0.820 - QIAN880107 -0.834 AVBF000102 -0.834 ROBB760103 -0.843 - FAUJ880102 -0.846 QIAN880109 -0.848 PTIO830101 -0.860 - SUEM840101 -0.864 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.77 0.88 1.28 1.41 0.81 0.98 0.99 1.64 0.68 0.51 - 0.58 0.96 0.41 0.59 1.91 1.32 1.04 0.76 1.05 0.47 -// -H LEVM780104 -D Normalized frequency of alpha-helix, unweighted (Levitt, 1978) -R PMID:708713 -A Levitt, M. -T Conformational preferences of amino acids in globular proteins -J Biochemistry 17, 4277-4285 (1978) -C PALJ810101 0.988 PRAM900102 0.964 LEVM780101 0.964 - KANM800101 0.958 GEIM800101 0.950 NAGK730101 0.918 - ROBB760101 0.911 TANS770101 0.908 PALJ810102 0.906 - MAXF760101 0.904 ISOY800101 0.904 RACS820108 0.889 - CHOP780201 0.886 GEIM800104 0.872 CRAJ730101 0.869 - KANM800103 0.859 BURA740101 0.833 QIAN880107 0.822 - PALJ810109 0.819 AURR980115 0.818 QIAN880106 0.804 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.32 0.98 0.95 1.03 0.92 1.10 1.44 0.61 1.31 0.93 - 1.31 1.25 1.39 1.02 0.58 0.76 0.79 0.97 0.73 0.93 -// -H LEVM780105 -D Normalized frequency of beta-sheet, unweighted (Levitt, 1978) -R PMID:708713 -A Levitt, M. -T Conformational preferences of amino acids in globular proteins -J Biochemistry 17, 4277-4285 (1978) -C PALJ810103 0.980 KANM800102 0.938 CHOP780202 0.930 - LIFS790101 0.928 GEIM800105 0.926 PALJ810104 0.921 - QIAN880120 0.913 QIAN880119 0.903 PRAM900103 0.899 - LEVM780102 0.899 LIFS790103 0.897 PTIO830102 0.894 - GEIM800107 0.884 QIAN880121 0.876 PALJ810112 0.870 - ROBB760106 0.869 ROBB760105 0.842 KANM800104 0.841 - AVBF000101 0.824 QIAN880118 0.819 MUNV940103 -0.891 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.86 0.97 0.73 0.69 1.04 1.00 0.66 0.89 0.85 1.47 - 1.04 0.77 0.93 1.21 0.68 1.02 1.27 1.26 1.31 1.43 -// -H LEVM780106 -D Normalized frequency of reverse turn, unweighted (Levitt, 1978) -R PMID:708713 -A Levitt, M. -T Conformational preferences of amino acids in globular proteins -J Biochemistry 17, 4277-4285 (1978) -C LEVM780103 0.984 PRAM900104 0.983 QIAN880133 0.971 - CHOP780216 0.953 GEIM800111 0.951 QIAN880132 0.943 - ISOY800103 0.941 CHOP780203 0.935 QIAN880134 0.932 - GEIM800108 0.932 QIAN880135 0.902 PALJ810105 0.902 - CHAM830101 0.900 TANS770110 0.892 CHOP780101 0.890 - PALJ810106 0.850 MUNV940103 0.815 CHOP780210 0.812 - GEIM800110 0.809 AVBF000101 -0.805 LIFS790101 -0.806 - QIAN880119 -0.810 QIAN880107 -0.813 QIAN880109 -0.815 - QIAN880120 -0.831 PTIO830101 -0.854 AVBF000102 -0.860 - FAUJ880102 -0.865 SUEM840101 -0.878 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.79 0.90 1.25 1.47 0.79 0.92 1.02 1.67 0.81 0.50 - 0.57 0.99 0.51 0.77 1.78 1.30 0.97 0.79 0.93 0.46 -// -H LEWP710101 -D Frequency of occurrence in beta-bends (Lewis et al., 1971) -R PMID:5289387 -A Lewis, P. N., Momany, F.A. and Scheraga, H.A. -T Folding of polypeptide chains in proteins: A proposed mechanism for folding -J Proc. Natl. Acad. Sci. USA 68, 2293-2297 (1971) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.22 0.28 0.42 0.73 0.20 0.26 0.08 0.58 0.14 0.22 - 0.19 0.27 0.38 0.08 0.46 0.55 0.49 0.43 0.46 0.08 -// -H LIFS790101 -D Conformational preference for all beta-strands (Lifson-Sander, 1979) -R PMID:503185 -A Lifson, S. and Sander, C. -T Antiparallel and parallel beta-strands differ in amino acid residue - preference -J Nature 282, 109-111 (1979) -C QIAN880120 0.969 CHOP780202 0.947 LIFS790103 0.944 - PTIO830102 0.941 KANM800102 0.940 QIAN880121 0.930 - PALJ810104 0.929 QIAN880119 0.929 LEVM780105 0.928 - PALJ810103 0.912 PONP930101 0.908 ROBB760106 0.906 - GEIM800107 0.888 BASU050101 0.886 ROBB760105 0.867 - BASU050103 0.865 PRAM900103 0.864 LEVM780102 0.864 - BASU050102 0.861 MANP780101 0.859 NISK860101 0.859 - AVBF000101 0.857 GEIM800105 0.855 PALJ810112 0.845 - CORJ870106 0.836 KANM800104 0.834 CIDH920104 0.832 - CORJ870105 0.830 CIDH920105 0.828 PONP800108 0.828 - NISK800101 0.827 CORJ870101 0.826 PONP800101 0.823 - CHOP780208 0.820 CORJ870107 0.820 PALJ810110 0.817 - SWER830101 0.815 CIDH920103 0.815 CORJ870102 0.815 - ZHOH040103 0.815 VENT840101 0.814 CIDH920102 0.808 - BEGF750102 0.807 LIFS790102 0.803 PONP800107 0.801 - GEIM800111 -0.801 QIAN880134 -0.804 LEVM780106 -0.806 - QIAN880132 -0.806 MEIH800101 -0.809 PUNT030102 -0.809 - MIYS990101 -0.811 CORJ870108 -0.811 MIYS990102 -0.813 - VINM940101 -0.834 MIYS990103 -0.838 VINM940102 -0.843 - MIYS990104 -0.843 PARS000101 -0.844 QIAN880133 -0.848 - OOBM770103 -0.855 GEIM800110 -0.862 MUNV940103 -0.941 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.92 0.93 0.60 0.48 1.16 0.95 0.61 0.61 0.93 1.81 - 1.30 0.70 1.19 1.25 0.40 0.82 1.12 1.54 1.53 1.81 -// -H LIFS790102 -D Conformational preference for parallel beta-strands (Lifson-Sander, 1979) -R PMID:503185 -A Lifson, S. and Sander, C. -T Antiparallel and parallel beta-strands differ in amino acid residue - preference -J Nature 282, 109-111 (1979) -C PTIO830102 0.874 MANP780101 0.870 PONP800107 0.849 - PONP930101 0.833 JURD980101 0.824 KYTJ820101 0.824 - OLSK800101 0.818 CHOC760103 0.810 KANM800104 0.809 - PONP800101 0.804 LIFS790101 0.803 KANM800102 0.801 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.00 0.68 0.54 0.50 0.91 0.28 0.59 0.79 0.38 2.60 - 1.42 0.59 1.49 1.30 0.35 0.70 0.59 0.89 1.08 2.63 -// -H LIFS790103 -D Conformational preference for antiparallel beta-strands (Lifson-Sander, 1979) -R PMID:503185 -A Lifson, S. and Sander, C. -T Antiparallel and parallel beta-strands differ in amino acid residue - preference -J Nature 282, 109-111 (1979) -C LIFS790101 0.944 QIAN880120 0.939 CHOP780202 0.908 - LEVM780105 0.897 QIAN880121 0.882 PALJ810103 0.877 - QIAN880119 0.877 KANM800102 0.863 PALJ810104 0.860 - GEIM800105 0.832 ROBB760106 0.827 BASU050102 0.826 - GEIM800107 0.823 PTIO830102 0.822 GEIM800106 0.814 - AVBF000101 0.814 ZHOH040101 0.801 OOBM770103 -0.807 - VINM940101 -0.829 PARS000101 -0.861 VINM940102 -0.862 - GEIM800110 -0.889 MUNV940103 -0.902 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.90 1.02 0.62 0.47 1.24 1.18 0.62 0.56 1.12 1.54 - 1.26 0.74 1.09 1.23 0.42 0.87 1.30 1.75 1.68 1.53 -// -H MANP780101 -D Average surrounding hydrophobicity (Manavalan-Ponnuswamy, 1978) -R PMID:703834 -A Manavalan, P. and Ponnuswamy, P.K. -T Hydrophobic character of amino acid residues in globular proteins -J Nature 275, 673-674 (1978) -C PONP930101 0.967 PONP800101 0.963 PONP800102 0.945 - NISK800101 0.940 PONP800108 0.935 NISK860101 0.930 - BASU050101 0.925 BASU050103 0.923 CIDH920104 0.918 - CORJ870101 0.918 PONP800103 0.913 MIYS850101 0.909 - CORJ870107 0.908 CORJ870104 0.908 CORJ870103 0.906 - CIDH920103 0.905 ROSG850102 0.903 RADA880108 0.900 - BIOV880101 0.899 JURD980101 0.887 KYTJ820101 0.881 - BASU050102 0.879 CIDH920105 0.879 NADH010103 0.878 - NADH010104 0.873 PONP800107 0.871 LIFS790102 0.870 - CORJ870106 0.867 ZHOH040103 0.864 NADH010102 0.863 - PTIO830102 0.861 LIFS790101 0.859 CHOC760103 0.859 - PLIV810101 0.856 WERD780101 0.853 CORJ870105 0.853 - CASG920101 0.848 BIOV880102 0.847 NADH010101 0.847 - FAUJ830101 0.843 JANJ790101 0.842 NADH010105 0.842 - JANJ780102 0.842 MEIH800103 0.839 ROBB790101 0.834 - KANM800102 0.833 KANM800104 0.827 EISD860103 0.826 - ROBB760106 0.824 SWER830101 0.821 CORJ870102 0.818 - OLSK800101 0.817 DESM900102 0.816 GUOD860101 0.815 - PONP800106 0.813 QIAN880120 0.806 PALJ810104 0.805 - CHOP780202 0.805 ROBB760105 0.805 ROSM880105 0.803 - BLAS910101 0.802 QIAN880121 0.802 OOBM770101 -0.806 - WOLS870101 -0.809 MUNV940103 -0.815 VINM940102 -0.821 - PUNT030101 -0.824 GUYH850103 -0.833 VINM940101 -0.836 - GUYH850101 -0.838 PARJ860101 -0.841 GUYH850102 -0.850 - OOBM770103 -0.859 KARP850102 -0.863 RACS770102 -0.865 - MEIH800102 -0.865 GRAR740102 -0.868 KRIW790101 -0.870 - PUNT030102 -0.873 RACS770101 -0.878 MEIH800101 -0.897 - FASG890101 -0.904 MIYS990105 -0.906 MIYS990104 -0.909 - CORJ870108 -0.911 MIYS990101 -0.913 MIYS990102 -0.915 - MIYS990103 -0.918 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 12.97 11.72 11.42 10.85 14.63 11.76 11.89 12.43 12.16 15.67 - 14.90 11.36 14.39 14.00 11.37 11.23 11.69 13.93 13.42 15.71 -// -H MAXF760101 -D Normalized frequency of alpha-helix (Maxfield-Scheraga, 1976) -R PMID:990270 -A Maxfield, F.R. and Scheraga, H.A. -T Status of empirical methods for the prediction of protein backbone topography -J Biochemistry 15, 5138-5153 (1976) Recalculated by Kidera using a different - set of proteins Reported values normalized by the total number -C ISOY800101 0.982 PALJ810102 0.959 CHOP780201 0.956 - ROBB760101 0.956 KANM800101 0.950 TANS770101 0.930 - PRAM900102 0.924 LEVM780101 0.924 LEVM780104 0.904 - KANM800103 0.901 GEIM800104 0.897 GEIM800101 0.895 - PALJ810101 0.889 QIAN880107 0.885 QIAN880106 0.881 - NAGK730101 0.877 PALJ810109 0.876 AURR980109 0.865 - AURR980110 0.860 RACS820108 0.860 AURR980114 0.853 - BURA740101 0.852 AURR980115 0.852 AURR980108 0.841 - AURR980112 0.838 CRAJ730101 0.826 QIAN880105 0.811 - AURR980111 0.811 FINA770101 0.810 NAGK730103 -0.801 - MUNV940102 -0.829 MUNV940101 -0.833 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.43 1.18 0.64 0.92 0.94 1.22 1.67 0.46 0.98 1.04 - 1.36 1.27 1.53 1.19 0.49 0.70 0.78 1.01 0.69 0.98 -// -H MAXF760102 -D Normalized frequency of extended structure (Maxfield-Scheraga, 1976) -R PMID:990270 -A Maxfield, F.R. and Scheraga, H.A. -T Status of empirical methods for the prediction of protein backbone topography -J Biochemistry 15, 5138-5153 (1976) Recalculated by Kidera using a different - set of proteins Reported values normalized by the total number -C ISOY800102 0.931 TANS770103 0.891 GEIM800105 0.819 - RACS820111 0.815 WOEC730101 -0.842 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.86 0.94 0.74 0.72 1.17 0.89 0.62 0.97 1.06 1.24 - 0.98 0.79 1.08 1.16 1.22 1.04 1.18 1.07 1.25 1.33 -// -H MAXF760103 -D Normalized frequency of zeta R (Maxfield-Scheraga, 1976) -R PMID:990270 -A Maxfield, F.R. and Scheraga, H.A. -T Status of empirical methods for the prediction of protein backbone topography -J Biochemistry 15, 5138-5153 (1976) Recalculated by Kidera using a different - set of proteins Reported values normalized by the total number -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.64 0.62 3.14 1.92 0.32 0.80 1.01 0.63 2.05 0.92 - 0.37 0.89 1.07 0.86 0.50 1.01 0.92 1.00 1.31 0.87 -// -H MAXF760104 -D Normalized frequency of left-handed alpha-helix (Maxfield-Scheraga, 1976) -R PMID:990270 -A Maxfield, F.R. and Scheraga, H.A. -T Status of empirical methods for the prediction of protein backbone topography -J Biochemistry 15, 5138-5153 (1976) Recalculated by Kidera using a different - set of proteins Reported values normalized by the total number -C ISOY800108 0.945 RICJ880115 0.919 TANS770107 0.913 - MAXF760105 0.850 AURR980117 0.849 RACS820109 0.844 - TANS770109 0.821 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.17 0.76 2.62 1.08 0.95 0.91 0.28 5.02 0.57 0.26 - 0.21 1.17 0.00 0.28 0.12 0.57 0.23 0.00 0.97 0.24 -// -H MAXF760105 -D Normalized frequency of zeta L (Maxfield-Scheraga, 1976) -R PMID:990270 -A Maxfield, F.R. and Scheraga, H.A. -T Status of empirical methods for the prediction of protein backbone topography -J Biochemistry 15, 5138-5153 (1976) Recalculated by Kidera using a different - set of proteins Reported values normalized by the total number -C TANS770109 0.878 MAXF760104 0.850 ISOY800108 0.810 - RICJ880115 0.802 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.13 0.48 1.11 1.18 0.38 0.41 1.02 3.84 0.30 0.40 - 0.65 1.13 0.00 0.45 0.00 0.81 0.71 0.93 0.38 0.48 -// -H MAXF760106 -D Normalized frequency of alpha region (Maxfield-Scheraga, 1976) -R PMID:990270 -A Maxfield, F.R. and Scheraga, H.A. -T Status of empirical methods for the prediction of protein backbone topography -J Biochemistry 15, 5138-5153 (1976) Recalculated by Kidera using a different - set of proteins Reported values normalized by the total number -C ISOY800106 0.849 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.00 1.18 0.87 1.39 1.09 1.13 1.04 0.46 0.71 0.68 - 1.01 1.05 0.36 0.65 1.95 1.56 1.23 1.10 0.87 0.58 -// -H MCMT640101 -D Refractivity (McMeekin et al., 1964), Cited by Jones (1975) -R -A McMeekin, T.L., Groves, M.L. and Hipp, N.J. -T -J In "Amino Acids and Serum Proteins" (Stekol, J.A., ed.), American Chemical - Society, Washington, D.C., p. 54 (1964) -C CHAM820101 0.871 ROSG850101 0.857 FAUJ880103 0.847 - FASG760101 0.845 CHOC750101 0.822 GRAR740103 0.817 - BIGC670101 0.814 GOLD730102 0.814 KRIW790103 0.810 - CHOC760101 0.809 FUKS010111 -0.806 RADA880103 -0.833 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 4.34 26.66 13.28 12.00 35.77 17.56 17.26 0.00 21.81 19.06 - 18.78 21.29 21.64 29.40 10.93 6.35 11.01 42.53 31.53 13.92 -// -H MEEJ800101 -D Retention coefficient in HPLC, pH7.4 (Meek, 1980) -R PMID:6929513 -A Meek, J.L. -T Prediction of peptide retention times in high-pressure liquid chromatography - on the basis of amino acid composition -J Proc. Natl. Acad. Sci. USA 77, 1632-1636 (1980) -C MEEJ800102 0.886 ZIMJ680105 0.842 BROC820102 0.840 - WIMW960101 0.838 GOLD730101 0.808 PARJ860101 -0.806 - WOLS870101 -0.823 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.5 0.8 0.8 -8.2 -6.8 -4.8 -16.9 0.0 -3.5 13.9 - 8.8 0.1 4.8 13.2 6.1 1.2 2.7 14.9 6.1 2.7 -// -H MEEJ800102 -D Retention coefficient in HPLC, pH2.1 (Meek, 1980) -R PMID:6929513 -A Meek, J.L. -T Prediction of peptide retention times in high-pressure liquid chromatography - on the basis of amino acid composition -J Proc. Natl. Acad. Sci. USA 77, 1632-1636 (1980) -C ZIMJ680105 0.921 RADA880102 0.900 NOZY710101 0.895 - TAKK010101 0.891 EISD860101 0.890 MEEJ800101 0.886 - MEEJ810102 0.881 BROC820101 0.877 MEEJ810101 0.871 - PLIV810101 0.867 GOLD730101 0.866 GUOD860101 0.866 - SIMZ760101 0.861 FAUJ830101 0.858 BROC820102 0.857 - CIDH920102 0.856 ARGP820101 0.855 JOND750101 0.855 - BLAS910101 0.849 ROSM880105 0.841 CIDH920105 0.840 - ZHOH040101 0.838 WIMW960101 0.821 ZHOH040102 0.808 - ROBB790101 0.807 WEBA780101 -0.808 GUYH850103 -0.809 - KIDA850101 -0.823 HOPT810101 -0.826 LEVM760101 -0.855 - BULH740101 -0.875 PARJ860101 -0.902 WOLS870101 -0.925 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.1 -4.5 -1.6 -2.8 -2.2 -2.5 -7.5 -0.5 0.8 11.8 - 10.0 -3.2 7.1 13.9 8.0 -3.7 1.5 18.1 8.2 3.3 -// -H MEEJ810101 -D Retention coefficient in NaClO4 (Meek-Rossetti, 1981) -R -A Meek, J.L. and Rossetti, Z.L. -T Factors affecting retention and resolution of peptides in high-performance - liquid chromatography -J J. Chromatogr. 211, 15-28 (1981) -C MEEJ810102 0.987 ZHOH040101 0.935 GUOD860101 0.931 - ZHOH040103 0.921 PLIV810101 0.914 ROSM880104 0.911 - FAUJ830101 0.902 BASU050102 0.898 CIDH920105 0.892 - ARGP820101 0.891 JOND750101 0.891 CIDH920102 0.887 - NOZY710101 0.882 CIDH920104 0.878 MEEJ800102 0.871 - MIYS850101 0.863 ROBB790101 0.861 BIOV880101 0.855 - NISK860101 0.848 CIDH920103 0.837 SIMZ760101 0.836 - TAKK010101 0.836 BLAS910101 0.831 LEVM760106 0.827 - WERD780101 0.825 GOLD730101 0.824 COWR900101 0.823 - BIOV880102 0.822 VENT840101 0.813 BASU050101 0.810 - CORJ870102 0.807 SWER830101 0.806 EISD860101 0.805 - ZHOH040102 0.804 RADA880108 0.804 ROSM880105 0.802 - MEIH800101 -0.809 GUYH850102 -0.813 KARP850101 -0.818 - MIYS990104 -0.831 WEBA780101 -0.831 GRAR740102 -0.839 - VINM940102 -0.839 MIYS990105 -0.839 KIDA850101 -0.850 - OOBM770103 -0.861 GUYH850103 -0.864 MIYS990102 -0.866 - MIYS990101 -0.867 BULH740101 -0.876 WOLS870101 -0.906 - PARJ860101 -0.920 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.1 -0.4 -4.2 -1.6 7.1 -2.9 0.7 -0.2 -0.7 8.5 - 11.0 -1.9 5.4 13.4 4.4 -3.2 -1.7 17.1 7.4 5.9 -// -H MEEJ810102 -D Retention coefficient in NaH2PO4 (Meek-Rossetti, 1981) -R -A Meek, J.L. and Rossetti, Z.L. -T Factors affecting retention and resolution of peptides in high-performance - liquid chromatography -J J. Chromatogr. 211, 15-28 (1981) -C MEEJ810101 0.987 GUOD860101 0.949 ZHOH040101 0.922 - ZHOH040103 0.902 NOZY710101 0.899 PLIV810101 0.898 - FAUJ830101 0.890 ROSM880104 0.885 MEEJ800102 0.881 - BASU050102 0.871 ARGP820101 0.853 JOND750101 0.852 - WILM950101 0.849 COWR900101 0.849 MIYS850101 0.844 - CIDH920105 0.844 CIDH920102 0.843 CIDH920104 0.837 - VENT840101 0.831 BLAS910101 0.830 BIOV880101 0.824 - ROBB790101 0.821 BROC820101 0.820 TAKK010101 0.819 - RADA880102 0.813 NISK860101 0.810 WILM950102 0.809 - EISD860101 0.808 SIMZ760101 0.808 GOLD730101 0.806 - ROSM880105 0.804 MIYS990104 -0.807 GRAR740102 -0.811 - MIYS990105 -0.817 GUYH850103 -0.823 OOBM770103 -0.831 - KIDA850101 -0.851 MIYS990102 -0.853 WEBA780101 -0.854 - MIYS990101 -0.854 BULH740101 -0.880 PARJ860101 -0.897 - WOLS870101 -0.905 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.0 -2.0 -3.0 -0.5 4.6 -2.0 1.1 0.2 -2.2 7.0 - 9.6 -3.0 4.0 12.6 3.1 -2.9 -0.6 15.1 6.7 4.6 -// -H MEIH800101 -D Average reduced distance for C-alpha (Meirovitch et al., 1980) -R -A Meirovitch, H., Rackovsky, S. and Scheraga, H.A. -T Empirical studies of hydrophobicity. 1. Effect of protein size on the - hydrophobic behavior of amino acids -J Macromolecules 13, 1398-1405 (1980) Database taken from group C -C RACS770101 0.973 RACS770102 0.963 MEIH800102 0.952 - MIYS990102 0.941 MIYS990101 0.940 MIYS990104 0.925 - MIYS990103 0.923 FASG890101 0.919 MIYS990105 0.912 - PARJ860101 0.905 VINM940101 0.900 GUYH850102 0.899 - OOBM770103 0.897 GUYH850101 0.893 CORJ870108 0.889 - KARP850102 0.884 VINM940103 0.875 GUYH850103 0.873 - KRIW790101 0.869 PUNT030101 0.860 WOLS870101 0.852 - PUNT030102 0.837 RACS770103 0.837 KRIW790102 0.835 - VINM940102 0.833 KARP850101 0.832 FUKS010103 0.832 - GRAR740102 0.824 PARS000101 0.813 RICJ880111 -0.802 - ROSM880105 -0.802 DESM900102 -0.804 NADH010105 -0.806 - LIFS790101 -0.809 MEEJ810101 -0.809 EISD860103 -0.810 - RADA880102 -0.816 PONP800108 -0.825 ZHOH040101 -0.827 - PTIO830102 -0.828 CORJ870102 -0.829 SWER830101 -0.830 - BEGF750102 -0.832 GUOD860101 -0.833 NADH010102 -0.847 - NISK800101 -0.852 CORJ870101 -0.855 PONP800103 -0.856 - CORJ870104 -0.862 CIDH920101 -0.863 FAUJ830101 -0.863 - NADH010104 -0.867 CIDH920102 -0.867 NADH010103 -0.868 - ROBB790101 -0.868 PONP800102 -0.870 CORJ870103 -0.871 - CASG920101 -0.875 MEIH800103 -0.875 CORJ870106 -0.882 - CORJ870105 -0.883 BASU050101 -0.887 PONP800101 -0.888 - BASU050102 -0.892 PLIV810101 -0.896 MANP780101 -0.897 - CORJ870107 -0.897 ZHOH040103 -0.898 CIDH920103 -0.905 - BASU050103 -0.906 PONP800107 -0.909 PONP930101 -0.916 - CIDH920104 -0.917 CIDH920105 -0.923 ROSG850102 -0.930 - BIOV880102 -0.937 RADA880108 -0.940 WERD780101 -0.943 - BIOV880101 -0.949 MIYS850101 -0.957 NISK860101 -0.960 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.93 0.98 0.98 1.01 0.88 1.02 1.02 1.01 0.89 0.79 - 0.85 1.05 0.84 0.78 1.00 1.02 0.99 0.83 0.93 0.81 -// -H MEIH800102 -D Average reduced distance for side chain (Meirovitch et al., 1980) -R -A Meirovitch, H., Rackovsky, S. and Scheraga, H.A. -T Empirical studies of hydrophobicity. 1. Effect of protein size on the - hydrophobic behavior of amino acids -J Macromolecules 13, 1398-1405 (1980) Database taken from group C (Gly 0.067) -C RACS770102 0.987 MEIH800101 0.952 FASG890101 0.951 - GUYH850101 0.934 MIYS990103 0.917 MIYS990102 0.916 - MIYS990105 0.914 MIYS990101 0.913 RACS770101 0.905 - MIYS990104 0.903 RACS770103 0.903 PUNT030101 0.901 - KRIW790102 0.898 GUYH850104 0.892 OOBM770101 0.881 - KRIW790101 0.876 JANJ780103 0.873 VINM940101 0.872 - CORJ870108 0.860 ROSM880102 0.859 OOBM770103 0.859 - GUYH850102 0.856 PUNT030102 0.849 JANJ780101 0.843 - VINM940103 0.841 CHOC760102 0.839 KARP850102 0.837 - GRAR740102 0.836 KIDA850101 0.834 PARJ860101 0.831 - KUHL950101 0.822 FUKS010104 0.822 WOLS870101 0.813 - GUYH850105 0.811 VINM940104 0.808 NAKH900110 -0.802 - BASU050102 -0.812 NADH010101 -0.818 JANJ790101 -0.821 - ROSM880105 -0.821 DESM900101 -0.822 BASU050101 -0.825 - CIDH920103 -0.825 WARP780101 -0.826 CIDH920105 -0.826 - EISD840101 -0.829 CORJ870106 -0.835 PONP800108 -0.836 - CORJ870105 -0.839 CORJ870104 -0.840 NISK800101 -0.844 - ZHOH040103 -0.848 PLIV810101 -0.849 CORJ870103 -0.855 - OLSK800101 -0.858 PONP800107 -0.858 MANP780101 -0.865 - CIDH920104 -0.868 CORJ870107 -0.871 KYTJ820101 -0.871 - FAUJ830101 -0.875 PONP800101 -0.877 CORJ870101 -0.878 - CASG920101 -0.879 JURD980101 -0.879 BASU050103 -0.880 - PONP930101 -0.881 EISD860103 -0.882 PONP800102 -0.883 - PONP800103 -0.891 CHOC760103 -0.894 JANJ790102 -0.894 - DESM900102 -0.898 NADH010104 -0.900 WERD780101 -0.903 - JANJ780102 -0.907 NADH010103 -0.916 NISK860101 -0.920 - NADH010102 -0.928 MIYS850101 -0.934 MEIH800103 -0.941 - BIOV880102 -0.951 RADA880108 -0.953 BIOV880101 -0.956 - ROSG850102 -0.959 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.94 1.09 1.04 1.08 0.84 1.11 1.12 1.01 0.92 0.76 - 0.82 1.23 0.83 0.73 1.04 1.04 1.02 0.87 1.03 0.81 -// -H MEIH800103 -D Average side chain orientation angle (Meirovitch et al., 1980) -R -A Meirovitch, H., Rackovsky, S. and Scheraga, H.A. -T Empirical studies of hydrophobicity. 1. Effect of protein size on the - hydrophobic behavior of amino acids -J Macromolecules 13, 1398-1405 (1980) Database taken from group C (Gly 7.4) -C ROSG850102 0.948 BIOV880101 0.934 DESM900102 0.924 - RADA880108 0.916 BIOV880102 0.916 NISK860101 0.909 - MIYS850101 0.908 NADH010102 0.907 CORJ870101 0.902 - NADH010103 0.901 JANJ780102 0.897 WERD780101 0.895 - PONP800103 0.895 NADH010104 0.890 PONP800102 0.885 - CORJ870107 0.883 CASG920101 0.881 CORJ870103 0.880 - NISK800101 0.871 EISD860103 0.870 PONP800101 0.869 - CHOC760103 0.865 PONP930101 0.863 PONP800108 0.862 - JURD980101 0.861 KYTJ820101 0.856 CORJ870104 0.856 - CIDH920104 0.853 DESM900101 0.853 JANJ790102 0.853 - FAUJ830101 0.849 MANP780101 0.839 JANJ790101 0.838 - WARP780101 0.835 BASU050103 0.832 CORJ870105 0.827 - OLSK800101 0.826 NADH010101 0.824 CORJ870106 0.822 - ZHOH040103 0.820 NADH010105 0.816 PLIV810101 0.811 - CIDH920105 0.804 CIDH920103 0.802 ROBB790101 0.801 - BASU050102 0.801 WOEC730101 -0.802 CHOC760102 -0.802 - PARJ860101 -0.808 KUHL950101 -0.809 JANJ780101 -0.811 - KIDA850101 -0.813 PUNT030102 -0.815 ROSM880102 -0.829 - VINM940103 -0.830 RACS770101 -0.845 KRIW790101 -0.850 - GUYH850102 -0.854 GUYH850104 -0.854 VINM940101 -0.861 - GRAR740102 -0.866 OOBM770103 -0.866 JANJ780103 -0.866 - CORJ870108 -0.870 MEIH800101 -0.875 GUYH850101 -0.880 - PUNT030101 -0.882 KRIW790102 -0.885 MIYS990101 -0.891 - MIYS990102 -0.893 MIYS990104 -0.894 OOBM770101 -0.896 - MIYS990103 -0.906 RACS770102 -0.918 MIYS990105 -0.919 - RACS770103 -0.919 FASG890101 -0.924 MEIH800102 -0.941 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 87. 81. 70. 71. 104. 66. 72. 90. 90. 105. - 104. 65. 100. 108. 78. 83. 83. 94. 83. 94. -// -H MIYS850101 -D Effective partition energy (Miyazawa-Jernigan, 1985) -R -A Miyazawa, S. and Jernigan, R.L. -T Estimation of effective interresidue contact energies from protein crystal - structures: Quasi-chemical approximation -J Macromolecules 18, 534-552 (1985) -C BIOV880101 0.960 NISK860101 0.960 RADA880108 0.950 - PLIV810101 0.944 ROSG850102 0.937 WERD780101 0.934 - BIOV880102 0.930 CIDH920105 0.916 CIDH920104 0.915 - FAUJ830101 0.914 ZHOH040103 0.914 CORJ870107 0.911 - PONP930101 0.910 MANP780101 0.909 MEIH800103 0.908 - GUOD860101 0.908 CIDH920103 0.906 BASU050102 0.904 - BASU050103 0.899 PONP800103 0.898 NADH010104 0.897 - NADH010103 0.896 ROBB790101 0.895 CORJ870104 0.892 - PONP800101 0.892 CORJ870103 0.892 PONP800102 0.891 - SWER830101 0.889 BASU050101 0.888 CORJ870102 0.887 - CORJ870106 0.884 PONP800107 0.884 CORJ870105 0.879 - NADH010102 0.878 CIDH920102 0.873 NISK800101 0.864 - MEEJ810101 0.863 CASG920101 0.863 CORJ870101 0.861 - EISD860103 0.858 ZHOH040101 0.855 PONP800108 0.847 - MEEJ810102 0.844 NADH010105 0.844 ROSM880105 0.844 - CIDH920101 0.843 EISD860101 0.842 JURD980101 0.837 - DESM900102 0.831 BLAS910101 0.829 RADA880102 0.824 - COWR900101 0.824 ROSM880104 0.824 ARGP820103 0.822 - KYTJ820101 0.821 NADH010101 0.815 PONP800106 0.812 - CHOC760103 0.810 NOZY710101 0.810 PTIO830102 0.807 - BEGF750102 0.806 JANJ780102 0.806 NAKH900110 0.804 - HOPT810101 -0.800 KARP850101 -0.811 RACS770103 -0.818 - PARS000101 -0.821 ROSM880102 -0.825 FUKS010103 -0.828 - KIDA850101 -0.831 VINM940102 -0.832 BULH740101 -0.838 - VINM940103 -0.849 PUNT030102 -0.868 KRIW790102 -0.869 - KARP850102 -0.878 VINM940101 -0.883 GUYH850102 -0.884 - PUNT030101 -0.892 GRAR740102 -0.895 GUYH850103 -0.897 - WOLS870101 -0.899 GUYH850101 -0.909 OOBM770103 -0.910 - KRIW790101 -0.910 CORJ870108 -0.910 PARJ860101 -0.929 - MEIH800102 -0.934 FASG890101 -0.938 RACS770101 -0.940 - RACS770102 -0.943 MIYS990105 -0.951 MIYS990103 -0.952 - MIYS990104 -0.953 MEIH800101 -0.957 MIYS990101 -0.977 - MIYS990102 -0.978 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.36 1.92 1.70 1.67 3.36 1.75 1.74 2.06 2.41 4.17 - 3.93 1.23 4.22 4.37 1.89 1.81 2.04 3.82 2.91 3.49 -// -H NAGK730101 -D Normalized frequency of alpha-helix (Nagano, 1973) -R PMID:4728695 -A Nagano, K. -T Local analysis of the mechanism of protein folding. I. Prediction of helices, - loops, and beta-structures from primary structure -J J. Mol. Biol. 75, 401-420 (1973) -C PALJ810101 0.953 CRAJ730101 0.925 TANS770101 0.925 - LEVM780104 0.918 GEIM800101 0.912 ROBB760101 0.910 - PRAM900102 0.894 LEVM780101 0.894 CHOP780201 0.886 - KANM800101 0.883 BURA740101 0.883 MAXF760101 0.877 - PALJ810102 0.876 ISOY800101 0.862 GEIM800104 0.828 - RACS820108 0.820 NAGK730103 -0.870 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.29 0.83 0.77 1.00 0.94 1.10 1.54 0.72 1.29 0.94 - 1.23 1.23 1.23 1.23 0.70 0.78 0.87 1.06 0.63 0.97 -// -H NAGK730102 -D Normalized frequency of bata-structure (Nagano, 1973) -R PMID:4728695 -A Nagano, K. -T Local analysis of the mechanism of protein folding. I. Prediction of helices, - loops, and beta-structures from primary structure -J J. Mol. Biol. 75, 401-420 (1973) -C ROBB760106 0.887 KANM800102 0.878 PALJ810104 0.867 - CHOP780208 0.860 CHOP780202 0.858 BASU050103 0.837 - BEGF750102 0.833 GEIM800107 0.830 ROBB760105 0.815 - CRAJ730102 0.815 PTIO830102 0.811 PUNT030102 -0.836 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.96 0.67 0.72 0.90 1.13 1.18 0.33 0.90 0.87 1.54 - 1.26 0.81 1.29 1.37 0.75 0.77 1.23 1.13 1.07 1.41 -// -H NAGK730103 -D Normalized frequency of coil (Nagano, 1973) -R PMID:4728695 -A Nagano, K. -T Local analysis of the mechanism of protein folding. I. Prediction of helices, - loops, and beta-structures from primary structure -J J. Mol. Biol. 75, 401-420 (1973) -C CHAM830101 0.857 CHOP780101 0.827 CHOP780216 0.819 - CHOP780210 0.814 ROBB760113 0.811 PALJ810105 0.804 - TANS770101 -0.800 MAXF760101 -0.801 PALJ810101 -0.808 - LEVM780101 -0.809 PRAM900102 -0.809 PALJ810102 -0.818 - ISOY800101 -0.821 BURA740101 -0.830 CHOP780201 -0.837 - KANM800103 -0.847 CRAJ730101 -0.850 ROBB760101 -0.861 - NAGK730101 -0.870 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.72 1.33 1.38 1.04 1.01 0.81 0.75 1.35 0.76 0.80 - 0.63 0.84 0.62 0.58 1.43 1.34 1.03 0.87 1.35 0.83 -// -H NAKH900101 -D AA composition of total proteins (Nakashima et al., 1990) -R PMID:2235995 -A Nakashima, H., Nishikawa, K. and Ooi, T. -T Distinct character in hydrophobicity of amino acid composition of - mitochondrial proteins -J Proteins 8, 173-178 (1990) -C JOND920101 0.993 CEDJ970102 0.988 CEDJ970104 0.978 - CEDJ970101 0.954 FUKS010112 0.948 FUKS010110 0.946 - JUKT750101 0.941 DAYM780101 0.940 JUNJ780101 0.918 - CEDJ970103 0.908 NAKH920101 0.907 NAKH920106 0.900 - KUMS000102 0.894 FUKS010109 0.868 NAKH900109 0.866 - NAKH920107 0.863 CEDJ970105 0.860 NAKH900102 0.858 - NAKH920104 0.857 KUMS000101 0.856 NAKH920103 0.854 - FUKS010111 0.812 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 7.99 5.86 4.33 5.14 1.81 3.98 6.10 6.91 2.17 5.48 - 9.16 6.01 2.50 3.83 4.95 6.84 5.77 1.34 3.15 6.65 -// -H NAKH900102 -D SD of AA composition of total proteins (Nakashima et al., 1990) -R PMID:2235995 -A Nakashima, H., Nishikawa, K. and Ooi, T. -T Distinct character in hydrophobicity of amino acid composition of - mitochondrial proteins -J Proteins 8, 173-178 (1990) -C CEDJ970105 0.903 DAYM780101 0.883 NAKH920106 0.872 - CEDJ970104 0.860 NAKH900101 0.858 NAKH920101 0.854 - JUNJ780101 0.853 JOND920101 0.846 CEDJ970102 0.841 - CEDJ970101 0.832 RACS820105 -0.839 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 3.73 3.34 2.33 2.23 2.30 2.36 3. 3.36 1.55 2.52 - 3.40 3.36 1.37 1.94 3.18 2.83 2.63 1.15 1.76 2.53 -// -H NAKH900103 -D AA composition of mt-proteins (Nakashima et al., 1990) -R PMID:2235995 -A Nakashima, H., Nishikawa, K. and Ooi, T. -T Distinct character in hydrophobicity of amino acid composition of - mitochondrial proteins -J Proteins 8, 173-178 (1990) -C NAKH900105 0.992 NAKH900112 0.966 NAKH900107 0.927 - FUKS010108 0.864 NAKH900111 0.832 NAKH920105 0.829 - NAKH920108 0.826 CEDJ970103 0.815 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 5.74 1.92 5.25 2.11 1.03 2.30 2.63 5.66 2.30 9.12 - 15.36 3.20 5.30 6.51 4.79 7.55 7.51 2.51 4.08 5.12 -// -H NAKH900104 -D Normalized composition of mt-proteins (Nakashima et al., 1990) -R PMID:2235995 -A Nakashima, H., Nishikawa, K. and Ooi, T. -T Distinct character in hydrophobicity of amino acid composition of - mitochondrial proteins -J Proteins 8, 173-178 (1990) -C NAKH900106 0.986 NAKH900108 0.849 EISD860101 0.812 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.60 -1.18 0.39 -1.36 -0.34 -0.71 -1.16 -0.37 0.08 1.44 - 1.82 -0.84 2.04 1.38 -0.05 0.25 0.66 1.02 0.53 -0.60 -// -H NAKH900105 -D AA composition of mt-proteins from animal (Nakashima et al., 1990) -R PMID:2235995 -A Nakashima, H., Nishikawa, K. and Ooi, T. -T Distinct character in hydrophobicity of amino acid composition of - mitochondrial proteins -J Proteins 8, 173-178 (1990) -C NAKH900103 0.992 NAKH900112 0.974 NAKH900107 0.870 - FUKS010108 0.846 NAKH900111 0.815 NAKH920105 0.806 - NAKH920108 0.801 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 5.88 1.54 4.38 1.70 1.11 2.30 2.60 5.29 2.33 8.78 - 16.52 2.58 6.00 6.58 5.29 7.68 8.38 2.89 3.51 4.66 -// -H NAKH900106 -D Normalized composition from animal (Nakashima et al., 1990) -R PMID:2235995 -A Nakashima, H., Nishikawa, K. and Ooi, T. -T Distinct character in hydrophobicity of amino acid composition of - mitochondrial proteins -J Proteins 8, 173-178 (1990) -C NAKH900104 0.986 EISD860101 0.812 ARGP820103 0.810 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.57 -1.29 0.02 -1.54 -0.30 -0.71 -1.17 -0.48 0.10 1.31 - 2.16 -1.02 2.55 1.42 0.11 0.30 0.99 1.35 0.20 -0.79 -// -H NAKH900107 -D AA composition of mt-proteins from fungi and plant (Nakashima et al., 1990) -R PMID:2235995 -A Nakashima, H., Nishikawa, K. and Ooi, T. -T Distinct character in hydrophobicity of amino acid composition of - mitochondrial proteins -J Proteins 8, 173-178 (1990) -C NAKH900103 0.927 NAKH900105 0.870 NAKH900112 0.850 - FUKS010108 0.830 CEDJ970103 0.820 NAKH920108 0.816 - NAKH920105 0.814 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 5.39 2.81 7.31 3.07 0.86 2.31 2.70 6.52 2.23 9.94 - 12.64 4.67 3.68 6.34 3.62 7.24 5.44 1.64 5.42 6.18 -// -H NAKH900108 -D Normalized composition from fungi and plant (Nakashima et al., 1990) -R PMID:2235995 -A Nakashima, H., Nishikawa, K. and Ooi, T. -T Distinct character in hydrophobicity of amino acid composition of - mitochondrial proteins -J Proteins 8, 173-178 (1990) -C NAKH900104 0.849 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.70 -0.91 1.28 -0.93 -0.41 -0.71 -1.13 -0.12 0.04 1.77 - 1.02 -0.40 0.86 1.29 -0.42 0.14 -0.13 0.26 1.29 -0.19 -// -H NAKH900109 -D AA composition of membrane proteins (Nakashima et al., 1990) -R PMID:2235995 -A Nakashima, H., Nishikawa, K. and Ooi, T. -T Distinct character in hydrophobicity of amino acid composition of - mitochondrial proteins -J Proteins 8, 173-178 (1990) -C CEDJ970103 0.970 FUKS010106 0.927 FUKS010107 0.903 - FUKS010105 0.892 NAKH900111 0.890 JOND920101 0.878 - FUKS010108 0.872 NAKH900101 0.866 CEDJ970102 0.865 - CEDJ970101 0.861 FUKS010110 0.853 KUMS000102 0.837 - NAKH920105 0.823 CEDJ970104 0.821 JUKT750101 0.815 - NAKH920108 0.811 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 9.25 3.96 3.71 3.89 1.07 3.17 4.80 8.51 1.88 6.47 - 10.94 3.50 3.14 6.36 4.36 6.26 5.66 2.22 3.28 7.55 -// -H NAKH900110 -D Normalized composition of membrane proteins (Nakashima et al., 1990) -R PMID:2235995 -A Nakashima, H., Nishikawa, K. and Ooi, T. -T Distinct character in hydrophobicity of amino acid composition of - mitochondrial proteins -J Proteins 8, 173-178 (1990) -C ROSM880105 0.859 EISD840101 0.838 BROC820101 0.830 - BIOV880102 0.829 EISD860101 0.820 GUOD860101 0.805 - MIYS850101 0.804 BLAS910101 0.801 MEIH800102 -0.802 - KIDA850101 -0.808 PARJ860101 -0.808 ROSM880101 -0.812 - HOPT810101 -0.812 WOLS870101 -0.832 VHEG790101 -0.848 - PUNT030101 -0.886 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.34 -0.57 -0.27 -0.56 -0.32 -0.34 -0.43 0.48 -0.19 0.39 - 0.52 -0.75 0.47 1.30 -0.19 -0.20 -0.04 0.77 0.07 0.36 -// -H NAKH900111 -D Transmembrane regions of non-mt-proteins (Nakashima et al., 1990) -R PMID:2235995 -A Nakashima, H., Nishikawa, K. and Ooi, T. -T Distinct character in hydrophobicity of amino acid composition of - mitochondrial proteins -J Proteins 8, 173-178 (1990) -C NAKH920108 0.975 NAKH920105 0.958 FUKS010108 0.954 - FUKS010106 0.933 FUKS010105 0.911 NAKH900109 0.890 - NAKH900112 0.878 FUKS010107 0.867 CEDJ970103 0.865 - NAKH900103 0.832 KYTJ820101 0.817 NAKH900105 0.815 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 10.17 1.21 1.36 1.18 1.48 1.57 1.15 8.87 1.07 10.91 - 16.22 1.04 4.12 9.60 2.24 5.38 5.61 2.67 2.68 11.44 -// -H NAKH900112 -D Transmembrane regions of mt-proteins (Nakashima et al., 1990) -R PMID:2235995 -A Nakashima, H., Nishikawa, K. and Ooi, T. -T Distinct character in hydrophobicity of amino acid composition of - mitochondrial proteins -J Proteins 8, 173-178 (1990) -C NAKH900105 0.974 NAKH900103 0.966 FUKS010108 0.896 - NAKH920105 0.881 NAKH920108 0.879 NAKH900111 0.878 - NAKH900107 0.850 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.61 0.41 1.84 0.59 0.83 1.20 1.63 4.88 1.14 12.91 - 21.66 1.15 7.17 7.76 3.51 6.84 8.89 2.11 2.57 6.30 -// -H NAKH900113 -D Ratio of average and computed composition (Nakashima et al., 1990) -R PMID:2235995 -A Nakashima, H., Nishikawa, K. and Ooi, T. -T Distinct character in hydrophobicity of amino acid composition of - mitochondrial proteins -J Proteins 8, 173-178 (1990) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.61 0.40 0.73 0.75 0.37 0.61 1.50 3.12 0.46 1.61 - 1.37 0.62 1.59 1.24 0.67 0.68 0.92 1.63 0.67 1.30 -// -H NAKH920101 -D AA composition of CYT of single-spanning proteins (Nakashima-Nishikawa, 1992) -R PMID:1607012 -A Nakashima, H. and Nishikawa, K. -T The amino acid composition is different between the cytoplasmic and - extracellular sides in membrane proteins -J FEBS Lett. 303, 141-146 (1992) -C CEDJ970105 0.942 NAKH920106 0.929 NAKH920102 0.929 - CEDJ970104 0.920 NAKH900101 0.907 JOND920101 0.900 - CEDJ970102 0.898 DAYM780101 0.882 FUKS010112 0.856 - NAKH900102 0.854 CEDJ970101 0.850 JUKT750101 0.849 - FUKS010110 0.833 JUNJ780101 0.826 NAKH920104 0.822 - NAKH920103 0.811 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 8.63 6.75 4.18 6.24 1.03 4.76 7.82 6.80 2.70 3.48 - 8.44 6.25 2.14 2.73 6.28 8.53 4.43 0.80 2.54 5.44 -// -H NAKH920102 -D AA composition of CYT2 of single-spanning proteins (Nakashima-Nishikawa, - 1992) -R PMID:1607012 -A Nakashima, H. and Nishikawa, K. -T The amino acid composition is different between the cytoplasmic and - extracellular sides in membrane proteins -J FEBS Lett. 303, 141-146 (1992) -C NAKH920101 0.929 CEDJ970105 0.843 CEDJ970104 0.834 - NAKH920106 0.832 DAYM780101 0.802 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 10.88 6.01 5.75 6.13 0.69 4.68 9.34 7.72 2.15 1.80 - 8.03 6.11 3.79 2.93 7.21 7.25 3.51 0.47 1.01 4.57 -// -H NAKH920103 -D AA composition of EXT of single-spanning proteins (Nakashima-Nishikawa, 1992) -R PMID:1607012 -A Nakashima, H. and Nishikawa, K. -T The amino acid composition is different between the cytoplasmic and - extracellular sides in membrane proteins -J FEBS Lett. 303, 141-146 (1992) -C CEDJ970102 0.906 NAKH920104 0.904 NAKH920107 0.882 - JOND920101 0.881 CEDJ970104 0.863 NAKH900101 0.854 - DAYM780101 0.851 CEDJ970101 0.843 FUKS010112 0.842 - JUKT750101 0.837 JUNJ780101 0.820 NAKH920101 0.811 - NAKH920106 0.809 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 5.15 4.38 4.81 5.75 3.24 4.45 7.05 6.38 2.69 4.40 - 8.11 5.25 1.60 3.52 5.65 8.04 7.41 1.68 3.42 7.00 -// -H NAKH920104 -D AA composition of EXT2 of single-spanning proteins (Nakashima-Nishikawa, - 1992) -R PMID:1607012 -A Nakashima, H. and Nishikawa, K. -T The amino acid composition is different between the cytoplasmic and - extracellular sides in membrane proteins -J FEBS Lett. 303, 141-146 (1992) -C CEDJ970102 0.905 NAKH920103 0.904 NAKH920107 0.889 - JOND920101 0.887 FUKS010112 0.882 CEDJ970104 0.865 - CEDJ970101 0.859 NAKH900101 0.857 NAKH920106 0.829 - JUKT750101 0.827 NAKH920101 0.822 DAYM780101 0.819 - JUNJ780101 0.807 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 5.04 3.73 5.94 5.26 2.20 4.50 6.07 7.09 2.99 4.32 - 9.88 6.31 1.85 3.72 6.22 8.05 5.20 2.10 3.32 6.19 -// -H NAKH920105 -D AA composition of MEM of single-spanning proteins (Nakashima-Nishikawa, 1992) -R PMID:1607012 -A Nakashima, H. and Nishikawa, K. -T The amino acid composition is different between the cytoplasmic and - extracellular sides in membrane proteins -J FEBS Lett. 303, 141-146 (1992) -C FUKS010108 0.968 NAKH920108 0.959 NAKH900111 0.958 - FUKS010106 0.931 FUKS010105 0.929 NAKH900112 0.881 - CEDJ970103 0.836 FUKS010107 0.833 NAKH900103 0.829 - NAKH900109 0.823 NAKH900107 0.814 NAKH900105 0.806 - KYTJ820101 0.803 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 9.90 0.09 0.94 0.35 2.55 0.87 0.08 8.14 0.20 15.25 - 22.28 0.16 1.85 6.47 2.38 4.17 4.33 2.21 3.42 14.34 -// -H NAKH920106 -D AA composition of CYT of multi-spanning proteins (Nakashima-Nishikawa, 1992) -R PMID:1607012 -A Nakashima, H. and Nishikawa, K. -T The amino acid composition is different between the cytoplasmic and - extracellular sides in membrane proteins -J FEBS Lett. 303, 141-146 (1992) -C CEDJ970105 0.930 NAKH920101 0.929 CEDJ970104 0.923 - FUKS010112 0.921 NAKH900101 0.900 JOND920101 0.889 - CEDJ970102 0.886 NAKH900102 0.872 DAYM780101 0.856 - NAKH920102 0.832 JUKT750101 0.831 NAKH920104 0.829 - JUNJ780101 0.829 CEDJ970101 0.826 FUKS010110 0.824 - FUKS010104 0.818 FUKS010109 0.814 NAKH920103 0.809 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.69 6.65 4.49 4.97 1.70 5.39 7.76 6.32 2.11 4.51 - 8.23 8.36 2.46 3.59 5.20 7.40 5.18 1.06 2.75 5.27 -// -H NAKH920107 -D AA composition of EXT of multi-spanning proteins (Nakashima-Nishikawa, 1992) -R PMID:1607012 -A Nakashima, H. and Nishikawa, K. -T The amino acid composition is different between the cytoplasmic and - extracellular sides in membrane proteins -J FEBS Lett. 303, 141-146 (1992) -C JOND920101 0.893 CEDJ970102 0.891 NAKH920104 0.889 - NAKH920103 0.882 NAKH900101 0.863 JUKT750101 0.862 - DAYM780101 0.861 CEDJ970101 0.860 CEDJ970104 0.857 - JUNJ780101 0.856 FUKS010111 0.841 KUMS000102 0.839 - FUKS010112 0.824 FUKS010110 0.810 KUMS000101 0.800 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 5.08 4.75 5.75 5.96 2.95 4.24 6.04 8.20 2.10 4.95 - 8.03 4.93 2.61 4.36 4.84 6.41 5.87 2.31 4.55 6.07 -// -H NAKH920108 -D AA composition of MEM of multi-spanning proteins (Nakashima-Nishikawa, 1992) -R PMID:1607012 -A Nakashima, H. and Nishikawa, K. -T The amino acid composition is different between the cytoplasmic and - extracellular sides in membrane proteins -J FEBS Lett. 303, 141-146 (1992) -C NAKH900111 0.975 NAKH920105 0.959 FUKS010108 0.948 - FUKS010106 0.898 FUKS010105 0.890 NAKH900112 0.879 - KYTJ820101 0.868 JURD980101 0.858 NAKH900103 0.826 - CHOC760103 0.824 FUKS010107 0.817 NAKH900107 0.816 - NAKH900109 0.811 CEDJ970103 0.811 NAKH900105 0.801 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 9.36 0.27 2.31 0.94 2.56 1.14 0.94 6.17 0.47 13.73 - 16.64 0.58 3.93 10.99 1.96 5.58 4.68 2.20 3.13 12.43 -// -H NISK800101 -D 8 A contact number (Nishikawa-Ooi, 1980) -R PMID:7440060 -A Nishikawa, K. and Ooi, T. -T Prediction of the surface-interior diagram of globular proteins by an - empirical method -J Int. J. Peptide Protein Res. 16, 19-32 (1980) -C PONP800108 0.976 CORJ870101 0.976 PONP800102 0.965 - PONP800101 0.960 PONP930101 0.956 NISK860101 0.943 - ROSG850102 0.942 PONP800103 0.941 MANP780101 0.940 - CASG920101 0.935 BIOV880101 0.920 NADH010104 0.909 - NADH010103 0.908 RADA880108 0.902 CIDH920104 0.900 - BASU050103 0.896 WERD780101 0.891 ZHOH040103 0.888 - CORJ870103 0.886 CORJ870107 0.884 BASU050102 0.884 - NADH010102 0.881 BAEK050101 0.881 BASU050101 0.876 - JANJ790101 0.875 BIOV880102 0.873 MEIH800103 0.871 - CORJ870104 0.868 MIYS850101 0.864 NADH010105 0.860 - CORJ870106 0.857 CIDH920103 0.855 CIDH920105 0.854 - JANJ780102 0.853 DESM900102 0.852 FAUJ830101 0.849 - DESM900101 0.837 CORJ870105 0.834 ROBB790101 0.830 - LIFS790101 0.827 QIAN880121 0.818 JURD980101 0.816 - NADH010101 0.813 KYTJ820101 0.812 KANM800102 0.809 - QIAN880122 0.808 RACS770101 -0.805 GUYH850101 -0.811 - MUNV940103 -0.813 PARS000102 -0.814 RACS770102 -0.818 - GUYH850103 -0.828 KRIW710101 -0.831 PARS000101 -0.832 - VINM940103 -0.836 MEIH800102 -0.844 OOBM770101 -0.845 - MEIH800101 -0.852 PUNT030102 -0.855 MIYS990101 -0.860 - MIYS990102 -0.863 GRAR740102 -0.879 CORJ870108 -0.880 - KARP850102 -0.885 OOBM770103 -0.894 KRIW790101 -0.896 - VINM940102 -0.900 GUYH850102 -0.914 VINM940101 -0.922 - FASG890101 -0.923 MIYS990105 -0.935 MIYS990103 -0.938 - MIYS990104 -0.938 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.23 -0.26 -0.94 -1.13 1.78 -0.57 -0.75 -0.07 0.11 1.19 - 1.03 -1.05 0.66 0.48 -0.76 -0.67 -0.36 0.90 0.59 1.24 -// -H NISK860101 -D 14 A contact number (Nishikawa-Ooi, 1986) -R PMID:3818558 -A Nishikawa, K. and Ooi, T. -T Radial locations of amino acid residues in a globular protein: Correlation - with the sequence -J J. Biochem. 100, 1043-1047 (1986) Values supplied by the author -C BIOV880101 0.972 WERD780101 0.966 ROSG850102 0.962 - PONP930101 0.961 MIYS850101 0.960 BASU050102 0.951 - RADA880108 0.950 ZHOH040103 0.946 CIDH920104 0.944 - NISK800101 0.943 BIOV880102 0.939 CIDH920105 0.938 - CASG920101 0.938 BASU050103 0.937 CORJ870101 0.935 - MANP780101 0.930 PONP800101 0.930 CORJ870107 0.928 - BASU050101 0.926 PONP800102 0.924 PONP800108 0.921 - NADH010104 0.915 CORJ870103 0.914 ROBB790101 0.912 - PONP800103 0.910 NADH010103 0.910 MEIH800103 0.909 - CIDH920103 0.909 CORJ870106 0.908 FAUJ830101 0.906 - CORJ870104 0.901 CORJ870105 0.901 CIDH920102 0.897 - PLIV810101 0.892 BAEK050101 0.886 CIDH920101 0.882 - NADH010102 0.878 ZHOH040101 0.871 SWER830101 0.865 - CORJ870102 0.864 NADH010105 0.863 LIFS790101 0.859 - MEEJ810101 0.848 PONP800107 0.847 DESM900102 0.843 - GUOD860101 0.840 QIAN880120 0.837 ROSM880105 0.836 - CHOP780202 0.832 QIAN880121 0.829 PTIO830102 0.825 - KANM800102 0.819 JANJ780102 0.813 GEIM800107 0.813 - EISD860103 0.811 NADH010101 0.810 ROBB760106 0.810 - MEEJ810102 0.810 PALJ810104 0.809 JURD980101 0.808 - BLAS910101 0.803 ROSM880104 0.801 HOPT810101 -0.822 - WOEC730101 -0.822 KARP850101 -0.828 FUKS010104 -0.832 - RACS770103 -0.837 MUNV940103 -0.840 WOLS870101 -0.848 - FUKS010103 -0.850 PUNT030101 -0.854 KRIW790102 -0.855 - GUYH850101 -0.877 PARS000101 -0.884 PUNT030102 -0.885 - GRAR740102 -0.900 KARP850102 -0.901 VINM940103 -0.903 - KRIW790101 -0.907 RACS770102 -0.913 GUYH850103 -0.914 - PARJ860101 -0.916 VINM940102 -0.919 CORJ870108 -0.920 - MEIH800102 -0.920 RACS770101 -0.923 FASG890101 -0.949 - OOBM770103 -0.949 GUYH850102 -0.950 MIYS990101 -0.957 - VINM940101 -0.959 MEIH800101 -0.960 MIYS990102 -0.960 - MIYS990105 -0.972 MIYS990103 -0.974 MIYS990104 -0.980 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.22 -0.93 -2.65 -4.12 4.66 -2.76 -3.64 -1.62 1.28 5.58 - 5.01 -4.18 3.51 5.27 -3.03 -2.84 -1.20 5.20 2.15 4.45 -// -H NOZY710101 -D Transfer energy, organic solvent/water (Nozaki-Tanford, 1971) -R PMID:5555568 -A Nozaki, Y. and Tanford, C. -T The solubility of amino acids and two glycine peptides in aqueous ethanol and - dioxane solutions -J J. Biol. Chem. 246, 2211-2217 (1971) Missing values filled with zeros -C ZHOH040101 0.932 RADA880102 0.917 MEEJ810102 0.899 - VENT840101 0.897 ZHOH040102 0.897 MEEJ800102 0.895 - CIDH920102 0.889 TAKK010101 0.884 GUOD860101 0.884 - MEEJ810101 0.882 CIDH920105 0.857 ROSM880104 0.847 - BASU050102 0.847 LEVM760107 0.845 ZHOH040103 0.842 - PLIV810101 0.839 CORJ870102 0.838 ZIMJ680105 0.837 - SWER830101 0.836 ROSG850101 0.834 BROC820101 0.829 - EISD860101 0.822 GARJ730101 0.821 WIMW960101 0.818 - MIYS850101 0.810 SIMZ760101 0.807 FAUJ830101 0.803 - ARGP820101 0.800 MIYS990102 -0.819 MIYS990101 -0.821 - OOBM770103 -0.828 PARS000101 -0.829 WOLS870101 -0.874 - WEBA780101 -0.890 BULH740101 -0.892 PARJ860101 -0.900 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.5 0.0 0.0 0.0 0.0 0.0 0.0 0.0 0.5 1.8 - 1.8 0.0 1.3 2.5 0.0 0.0 0.4 3.4 2.3 1.5 -// -H OOBM770101 -D Average non-bonded energy per atom (Oobatake-Ooi, 1977) -R PMID:904331 -A Oobatake, M. and Ooi, T. -T An analysis of non-bonded energy of proteins -J J. Theor. Biol. 67, 567-584 (1977) Last two calcualted by Kidera; multiplied - by the number of heavy atoms -C GUYH850104 0.966 JANJ780103 0.965 JANJ780101 0.953 - CHOC760102 0.925 ENGD860101 0.907 PRAM900101 0.907 - MEIH800102 0.881 KUHL950101 0.876 GUYH850105 0.874 - RACS770103 0.871 FASG890101 0.868 ROSM880102 0.867 - PUNT030101 0.865 ROSM880101 0.854 GUYH850101 0.848 - PUNT030102 0.845 MIYS990105 0.844 KIDA850101 0.843 - GRAR740102 0.841 RACS770102 0.838 MIYS990103 0.827 - KRIW790102 0.822 KRIW790101 0.816 MIYS990104 0.806 - WOEC730101 0.804 MANP780101 -0.806 JACR890101 -0.812 - ROSM880105 -0.824 WOLR790101 -0.831 FAUJ830101 -0.832 - PONP800101 -0.835 CASG920101 -0.838 NISK800101 -0.845 - WOLR810101 -0.847 PONP800108 -0.851 RADA880107 -0.854 - CHOC760104 -0.857 BIOV880101 -0.858 NADH010101 -0.861 - PONP800102 -0.862 RADA880101 -0.863 RADA880108 -0.864 - NADH010104 -0.871 JANJ790101 -0.871 CORJ870101 -0.875 - BIOV880102 -0.877 OLSK800101 -0.878 EISD840101 -0.878 - EISD860103 -0.880 PONP800103 -0.880 DESM900101 -0.894 - MEIH800103 -0.896 KYTJ820101 -0.899 CHOC760103 -0.902 - NADH010103 -0.902 JURD980101 -0.903 ROSG850102 -0.903 - WARP780101 -0.937 NADH010102 -0.944 DESM900102 -0.950 - JANJ790102 -0.963 JANJ780102 -0.968 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -1.895 -1.475 -1.560 -1.518 -2.035 -1.521 -1.535 -1.898 -1.755 -1.951 - -1.966 -1.374 -1.963 -1.864 -1.699 -1.753 -1.767 -1.869 -1.686 -1.981 -// -H OOBM770102 -D Short and medium range non-bonded energy per atom (Oobatake-Ooi, 1977) -R PMID:904331 -A Oobatake, M. and Ooi, T. -T An analysis of non-bonded energy of proteins -J J. Theor. Biol. 67, 567-584 (1977) Last two calcualted by Kidera; multiplied - by the number of heavy atoms -C LEVM760102 0.869 LEVM760105 0.868 CHAM830106 0.858 - CHOC760101 0.824 FASG760101 0.821 FAUJ880103 0.801 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -1.404 -0.921 -1.178 -1.162 -1.365 -1.116 -1.163 -1.364 -1.215 -1.189 - -1.315 -1.074 -1.303 -1.135 -1.236 -1.297 -1.252 -1.030 -1.030 -1.254 -// -H OOBM770103 -D Long range non-bonded energy per atom (Oobatake-Ooi, 1977) -R PMID:904331 -A Oobatake, M. and Ooi, T. -T An analysis of non-bonded energy of proteins -J J. Theor. Biol. 67, 567-584 (1977) Last two calcualted by Kidera; multiplied - by the number of heavy atoms -C MIYS990105 0.936 VINM940101 0.936 MIYS990104 0.931 - MIYS990103 0.908 GUYH850103 0.906 GUYH850102 0.904 - MEIH800101 0.897 GRAR740102 0.896 PARJ860101 0.891 - VINM940102 0.891 MIYS990102 0.891 MIYS990101 0.887 - FASG890101 0.869 KRIW790101 0.865 PARS000101 0.864 - MEIH800102 0.859 WOLS870101 0.852 FUKS010104 0.849 - VINM940103 0.845 WOEC730101 0.835 RACS770101 0.835 - HOPT810101 0.833 CORJ870108 0.829 RACS770102 0.828 - PUNT030102 0.828 KRIW790102 0.824 RACS770103 0.823 - KARP850102 0.820 MUNV940103 0.805 LEVM760101 0.805 - PTIO830102 -0.801 LIFS790103 -0.807 BAEK050101 -0.810 - KANM800102 -0.812 WIMW960101 -0.814 CORJ870104 -0.814 - CIDH920101 -0.818 PONP800107 -0.819 CHOP780202 -0.820 - QIAN880120 -0.824 CORJ870106 -0.826 ROSM880105 -0.828 - NOZY710101 -0.828 MEEJ810102 -0.831 CORJ870102 -0.832 - CORJ870105 -0.833 SWER830101 -0.833 NADH010102 -0.838 - GUOD860101 -0.838 CORJ870103 -0.839 PONP800101 -0.848 - BASU050101 -0.850 CORJ870107 -0.851 PLIV810101 -0.852 - PONP800102 -0.854 LIFS790101 -0.855 MANP780101 -0.859 - MEEJ810101 -0.861 NADH010103 -0.861 ZHOH040101 -0.862 - NADH010104 -0.863 CIDH920103 -0.863 PONP800103 -0.865 - MEIH800103 -0.866 BASU050103 -0.866 CIDH920102 -0.877 - RADA880108 -0.878 BASU050102 -0.893 NISK800101 -0.894 - PONP800108 -0.896 FAUJ830101 -0.899 CIDH920105 -0.904 - WERD780101 -0.906 CORJ870101 -0.907 ZHOH040103 -0.907 - ROBB790101 -0.909 MIYS850101 -0.910 CIDH920104 -0.912 - PONP930101 -0.914 CASG920101 -0.914 ROSG850102 -0.916 - BIOV880101 -0.920 BIOV880102 -0.925 NISK860101 -0.949 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.491 -0.554 -0.382 -0.356 -0.670 -0.405 -0.371 -0.534 -0.540 -0.762 - -0.650 -0.300 -0.659 -0.729 -0.463 -0.455 -0.515 -0.839 -0.656 -0.728 -// -H OOBM770104 -D Average non-bonded energy per residue (Oobatake-Ooi, 1977) -R PMID:904331 -A Oobatake, M. and Ooi, T. -T An analysis of non-bonded energy of proteins -J J. Theor. Biol. 67, 567-584 (1977) Last two calcualted by Kidera; multiplied - by the number of heavy atoms -C OOBM770105 0.980 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -9.475 -16.225 -12.480 -12.144 -12.210 -13.689 -13.815 -7.592 -17.550 -15.608 - -15.728 -12.366 -15.704 -20.504 -11.893 -10.518 -12.369 -26.166 -20.232 -13.867 -// -H OOBM770105 -D Short and medium range non-bonded energy per residue (Oobatake-Ooi, 1977) -R PMID:904331 -A Oobatake, M. and Ooi, T. -T An analysis of non-bonded energy of proteins -J J. Theor. Biol. 67, 567-584 (1977) Last two calcualted by Kidera; multiplied - by the number of heavy atoms -C OOBM770104 0.980 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -7.020 -10.131 -9.424 -9.296 -8.190 -10.044 -10.467 -5.456 -12.150 -9.512 - -10.520 -9.666 -10.424 -12.485 -8.652 -7.782 -8.764 -14.420 -12.360 -8.778 -// -H OOBM850101 -D Optimized beta-structure-coil equilibrium constant (Oobatake et al., 1985) -R -A Oobatake, M., Kubota, Y. and Ooi, T. -T Optimization of amino acid parameters for correspondence of sequence to - tertiary structures of proteuins -J Bull. Inst. Chem. Res., Kyoto Univ. 63, 82-94 (1985) -C QIAN880119 0.825 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.01 0.84 0.03 -2.05 1.98 1.02 0.93 0.12 -0.14 3.70 - 2.73 2.55 1.75 2.68 0.41 1.47 2.39 2.49 2.23 3.50 -// -H OOBM850102 -D Optimized propensity to form reverse turn (Oobatake et al., 1985) -R -A Oobatake, M., Kubota, Y. and Ooi, T. -T Optimization of amino acid parameters for correspondence of sequence to - tertiary structures of proteuins -J Bull. Inst. Chem. Res., Kyoto Univ. 63, 82-94 (1985) -C ZASB820101 -0.853 GARJ730101 -0.877 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.34 0.95 2.49 3.32 1.07 1.49 2.20 2.07 1.27 0.66 - 0.54 0.61 0.70 0.80 2.12 0.94 1.09 -4.65 -0.17 1.32 -// -H OOBM850103 -D Optimized transfer energy parameter (Oobatake et al., 1985) -R -A Oobatake, M., Kubota, Y. and Ooi, T. -T Optimization of amino acid parameters for correspondence of sequence to - tertiary structures of proteuins -J Bull. Inst. Chem. Res., Kyoto Univ. 63, 82-94 (1985) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.46 -1.54 1.31 -0.33 0.20 -1.12 0.48 0.64 -1.31 3.28 - 0.43 -1.71 0.15 0.52 -0.58 -0.83 -1.52 1.25 -2.21 0.54 -// -H OOBM850104 -D Optimized average non-bonded energy per atom (Oobatake et al., 1985) -R -A Oobatake, M., Kubota, Y. and Ooi, T. -T Optimization of amino acid parameters for correspondence of sequence to - tertiary structures of proteuins -J Bull. Inst. Chem. Res., Kyoto Univ. 63, 82-94 (1985) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -2.49 2.55 2.27 8.86 -3.13 1.79 4.04 -0.56 4.22 -10.87 - -7.16 -9.97 -4.96 -6.64 5.19 -1.60 -4.75 -17.84 9.25 -3.97 -// -H OOBM850105 -D Optimized side chain interaction parameter (Oobatake et al., 1985) -R -A Oobatake, M., Kubota, Y. and Ooi, T. -T Optimization of amino acid parameters for correspondence of sequence to - tertiary structures of proteuins -J Bull. Inst. Chem. Res., Kyoto Univ. 63, 82-94 (1985) -C QIAN880127 -0.813 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 4.55 5.97 5.56 2.85 -0.78 4.15 5.16 9.14 4.48 2.10 - 3.24 10.68 2.18 4.37 5.14 6.78 8.60 1.97 2.40 3.81 -// -H PALJ810101 -D Normalized frequency of alpha-helix from LG (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. -C LEVM780104 0.988 NAGK730101 0.953 GEIM800101 0.951 - LEVM780101 0.943 PRAM900102 0.943 KANM800101 0.928 - TANS770101 0.918 ROBB760101 0.914 CRAJ730101 0.891 - PALJ810102 0.889 MAXF760101 0.889 ISOY800101 0.882 - CHOP780201 0.881 RACS820108 0.872 BURA740101 0.850 - GEIM800104 0.841 KANM800103 0.836 NAGK730103 -0.808 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.30 0.93 0.90 1.02 0.92 1.04 1.43 0.63 1.33 0.87 - 1.30 1.23 1.32 1.09 0.63 0.78 0.80 1.03 0.71 0.95 -// -H PALJ810102 -D Normalized frequency of alpha-helix from CF (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. -C CHOP780201 0.981 ISOY800101 0.965 KANM800101 0.962 - MAXF760101 0.959 ROBB760101 0.946 TANS770101 0.923 - KANM800103 0.916 GEIM800101 0.910 LEVM780104 0.906 - PRAM900102 0.902 LEVM780101 0.902 BURA740101 0.900 - PALJ810101 0.889 AURR980112 0.888 GEIM800104 0.886 - RACS820108 0.881 AURR980109 0.877 NAGK730101 0.876 - CRAJ730101 0.872 AURR980108 0.871 QIAN880106 0.871 - PALJ810109 0.864 QIAN880107 0.856 AURR980114 0.848 - AURR980111 0.830 AURR980115 0.827 AURR980110 0.812 - BEGF750101 0.811 CHAM830101 -0.808 CRAJ730103 -0.809 - MUNV940101 -0.815 NAGK730103 -0.818 MUNV940102 -0.824 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.32 1.04 0.74 0.97 0.70 1.25 1.48 0.59 1.06 1.01 - 1.22 1.13 1.47 1.10 0.57 0.77 0.86 1.02 0.72 1.05 -// -H PALJ810103 -D Normalized frequency of beta-sheet from LG (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. -C LEVM780105 0.980 GEIM800105 0.945 CHOP780202 0.937 - KANM800102 0.932 LIFS790101 0.912 PALJ810104 0.907 - GEIM800107 0.890 ROBB760106 0.886 QIAN880120 0.886 - LIFS790103 0.877 QIAN880121 0.875 ROBB760105 0.869 - PTIO830102 0.867 QIAN880119 0.861 PRAM900103 0.846 - LEVM780102 0.846 QIAN880118 0.845 PALJ810112 0.841 - TANS770103 0.824 KANM800104 0.823 ISOY800102 0.807 - MUNV940103 -0.857 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.81 1.03 0.81 0.71 1.12 1.03 0.59 0.94 0.85 1.47 - 1.03 0.77 0.96 1.13 0.75 1.02 1.19 1.24 1.35 1.44 -// -H PALJ810104 -D Normalized frequency of beta-sheet from CF (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. -C CHOP780202 0.970 KANM800102 0.948 PTIO830102 0.937 - LIFS790101 0.929 GEIM800107 0.928 LEVM780105 0.921 - QIAN880121 0.910 PALJ810103 0.907 ROBB760106 0.894 - QIAN880120 0.886 BASU050103 0.882 BASU050101 0.873 - LEVM780102 0.868 PRAM900103 0.868 NAGK730102 0.867 - LIFS790103 0.860 PONP930101 0.857 GEIM800105 0.856 - KANM800104 0.851 CHOP780209 0.849 PALJ810112 0.849 - ROBB760105 0.835 VENT840101 0.831 BASU050102 0.826 - QIAN880119 0.822 AVBF000101 0.818 CRAJ730102 0.817 - SWER830101 0.809 CORJ870102 0.809 NISK860101 0.809 - MANP780101 0.805 BEGF750102 0.801 VINM940101 -0.801 - MIYS990104 -0.810 MIYS990103 -0.811 MUNV940103 -0.888 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.90 0.75 0.82 0.75 1.12 0.95 0.44 0.83 0.86 1.59 - 1.24 0.75 0.94 1.41 0.46 0.70 1.20 1.28 1.45 1.73 -// -H PALJ810105 -D Normalized frequency of turn from LG (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. -C ISOY800103 0.928 LEVM780103 0.909 PRAM900104 0.906 - LEVM780106 0.902 PALJ810116 0.891 CHOP780216 0.881 - CHOP780203 0.878 GEIM800108 0.873 CHOP780101 0.868 - TANS770110 0.860 GEIM800111 0.855 QIAN880133 0.843 - QIAN880132 0.830 CHAM830101 0.826 PALJ810106 0.809 - NAGK730103 0.804 CHOP780210 0.803 AVBF000102 -0.815 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.84 0.91 1.48 1.28 0.69 1. 0.78 1.76 0.53 0.55 - 0.49 0.95 0.52 0.88 1.47 1.29 1.05 0.88 1.28 0.51 -// -H PALJ810106 -D Normalized frequency of turn from CF (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. -C CHOP780101 0.977 CHAM830101 0.939 TANS770110 0.925 - CHOP780203 0.907 CHOP780210 0.905 CHOP780216 0.904 - ROBB760113 0.895 CRAJ730103 0.884 ROBB760108 0.882 - ROBB760110 0.864 GEIM800108 0.862 QIAN880133 0.860 - BEGF750103 0.859 QIAN880132 0.859 LEVM780106 0.850 - LEVM780103 0.848 GEIM800111 0.844 PRAM900104 0.844 - QIAN880131 0.809 PALJ810105 0.809 ISOY800103 0.807 - CHOP780212 0.801 QIAN880107 -0.821 SUEM840101 -0.832 - KANM800103 -0.840 AURR980114 -0.842 AURR980109 -0.845 - BEGF750101 -0.859 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.65 0.93 1.45 1.47 1.43 0.94 0.75 1.53 0.96 0.57 - 0.56 0.95 0.71 0.72 1.51 1.46 0.96 0.90 1.12 0.55 -// -H PALJ810107 -D Normalized frequency of alpha-helix in all-alpha class (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. -C GEIM800102 0.919 GEIM800109 -0.909 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.08 0.93 1.05 0.86 1.22 0.95 1.09 0.85 1.02 0.98 - 1.04 1.01 1.11 0.96 0.91 0.95 1.15 1.17 0.80 1.03 -// -H PALJ810108 -D Normalized frequency of alpha-helix in alpha+beta class (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.34 0.91 0.83 1.06 1.27 1.13 1.69 0.47 1.11 0.84 - 1.39 1.08 0.90 1.02 0.48 1.05 0.74 0.64 0.73 1.18 -// -H PALJ810109 -D Normalized frequency of alpha-helix in alpha/beta class (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. -C GEIM800104 0.937 PRAM900102 0.898 LEVM780101 0.898 - MAXF760101 0.876 ISOY800101 0.874 PALJ810102 0.864 - KANM800101 0.849 LEVM780104 0.819 AURR980112 0.817 - GEIM800101 0.816 CHOP780201 0.814 CRAJ730101 0.811 - ROBB760101 0.805 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.15 1.06 0.87 1. 1.03 1.43 1.37 0.64 0.95 0.99 - 1.22 1.20 1.45 0.92 0.72 0.84 0.97 1.11 0.72 0.82 -// -H PALJ810110 -D Normalized frequency of beta-sheet in all-beta class (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. -C GEIM800106 0.851 ROBB760106 0.836 KANM800102 0.836 - BEGF750102 0.834 GEIM800107 0.826 QIAN880120 0.824 - QIAN880119 0.824 LIFS790101 0.817 AVBF000101 0.816 - CHOP780202 0.808 ROBB760105 0.804 GEIM800110 -0.840 - MUNV940103 -0.845 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.89 1.06 0.67 0.71 1.04 1.06 0.72 0.87 1.04 1.14 - 1.02 1. 1.41 1.32 0.69 0.86 1.15 1.06 1.35 1.66 -// -H PALJ810111 -D Normalized frequency of beta-sheet in alpha+beta class (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.82 0.99 1.27 0.98 0.71 1.01 0.54 0.94 1.26 1.67 - 0.94 0.73 1.30 1.56 0.69 0.65 0.98 1.25 1.26 1.22 -// -H PALJ810112 -D Normalized frequency of beta-sheet in alpha/beta class (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. -C PRAM900103 0.913 LEVM780102 0.913 GEIM800107 0.905 - LEVM780105 0.870 KANM800102 0.869 PALJ810104 0.849 - LIFS790101 0.845 PALJ810103 0.841 GEIM800105 0.830 - CHOP780202 0.815 KANM800104 0.813 QIAN880121 0.812 - PTIO830102 0.811 MUNV940103 -0.830 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.98 1.03 0.66 0.74 1.01 0.63 0.59 0.90 1.17 1.38 - 1.05 0.83 0.82 1.23 0.73 0.98 1.20 1.26 1.23 1.62 -// -H PALJ810113 -D Normalized frequency of turn in all-alpha class (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. - (Arg Cys Leu Trp missing) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.69 0. 1.52 2.42 0. 1.44 0.63 2.64 0.22 0.43 - 0. 1.18 0.88 2.20 1.34 1.43 0.28 0. 1.53 0.14 -// -H PALJ810114 -D Normalized frequency of turn in all-beta class (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. - (Met missing) -C ISOY800103 0.809 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.87 1.30 1.36 1.24 0.83 1.06 0.91 1.69 0.91 0.27 - 0.67 0.66 0. 0.47 1.54 1.08 1.12 1.24 0.54 0.69 -// -H PALJ810115 -D Normalized frequency of turn in alpha+beta class (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. -C ROBB760112 0.885 QIAN880132 0.804 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.91 0.77 1.32 0.90 0.50 1.06 0.53 1.61 1.08 0.36 - 0.77 1.27 0.76 0.37 1.62 1.34 0.87 1.10 1.24 0.52 -// -H PALJ810116 -D Normalized frequency of turn in alpha/beta class (Palau et al., 1981) -R PMID:7118409 -A Palau, J., Argos, P. and Puigdomenech, P. -T Protein secondary structure -J Int. J. Peptide Protein Res. 19, 394-401 (1981) LG :a set of protein samples - formed by 44 proteins. CF :a set of protein samples formed by 33 proteins. -C PALJ810105 0.891 ISOY800103 0.814 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.92 0.90 1.57 1.22 0.62 0.66 0.92 1.61 0.39 0.79 - 0.50 0.86 0.50 0.96 1.30 1.40 1.11 0.57 1.78 0.50 -// -H PARJ860101 -D HPLC parameter (Parker et al., 1986) -R PMID:2430611 -A Parker, J.M.R., Guo, D. and Hodges, R.S. -T New hydrophilicity scale derived from high-performance liquid chromatography - peptide retention data: Correlation of predicted surface residues with - antigencity and x-ray-derived accessible sites -J Biochemistry 25, 5425-5432 (1986) -C WOLS870101 0.964 MIYS990101 0.944 MIYS990102 0.942 - BULH740101 0.909 MEIH800101 0.905 GUYH850103 0.897 - GRAR740102 0.891 OOBM770103 0.891 MIYS990105 0.878 - MIYS990104 0.877 RACS770101 0.871 PUNT030102 0.867 - MIYS990103 0.859 PUNT030101 0.845 VINM940101 0.837 - GUYH850102 0.836 RACS770102 0.834 VINM940102 0.833 - MEIH800102 0.831 CORJ870108 0.831 FASG890101 0.825 - WOEC730101 0.821 HOPT810101 0.819 PARS000101 0.812 - KIDA850101 0.809 LEVM760101 0.806 ROSM880101 0.803 - ROSM880102 0.801 WIMW960101 -0.804 MEEJ800101 -0.806 - CORJ870103 -0.807 MEIH800103 -0.808 NAKH900110 -0.808 - CORJ870106 -0.820 CORJ870104 -0.823 ROSG850102 -0.823 - SIMZ760101 -0.825 GOLD730101 -0.827 LEVM760106 -0.832 - JOND750101 -0.834 ARGP820101 -0.835 CORJ870105 -0.837 - CORJ870107 -0.838 MANP780101 -0.841 PONP930101 -0.846 - VENT840101 -0.846 BROC820101 -0.849 ZHOH040102 -0.854 - RADA880108 -0.865 PONP800107 -0.868 WERD780101 -0.869 - TAKK010101 -0.870 BLAS910101 -0.870 CIDH920101 -0.871 - ROSM880105 -0.871 BASU050103 -0.874 BIOV880102 -0.875 - EISD860101 -0.876 RADA880102 -0.883 ZIMJ680105 -0.886 - BIOV880101 -0.889 CORJ870102 -0.892 SWER830101 -0.893 - ROBB790101 -0.893 ROSM880104 -0.896 ZHOH040103 -0.897 - MEEJ810102 -0.897 BASU050101 -0.897 NOZY710101 -0.900 - MEEJ800102 -0.902 FAUJ830101 -0.907 BASU050102 -0.908 - ZHOH040101 -0.912 CIDH920104 -0.913 NISK860101 -0.916 - CIDH920103 -0.916 MEEJ810101 -0.920 GUOD860101 -0.925 - MIYS850101 -0.929 CIDH920102 -0.930 CIDH920105 -0.948 - PLIV810101 -0.958 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.1 4.2 7.0 10.0 1.4 6.0 7.8 5.7 2.1 -8.0 - -9.2 5.7 -4.2 -9.2 2.1 6.5 5.2 -10.0 -1.9 -3.7 -// -H PLIV810101 -D Partition coefficient (Pliska et al., 1981) -R -A Pliska, V., Schmidt, M. and Fauchere, J.L. -T Partition coefficients of amino acids and hydrophobic parameters pi of their - side-chains as measured by thin-layer chromatography -J J. Chromatogr. 216, 79-92 (1981) (Arg 0.25) -C MIYS850101 0.944 GUOD860101 0.943 FAUJ830101 0.931 - MEEJ810101 0.914 CIDH920105 0.914 RADA880108 0.906 - EISD860101 0.904 CIDH920103 0.899 BIOV880101 0.899 - MEEJ810102 0.898 CIDH920104 0.893 NISK860101 0.892 - ZHOH040103 0.889 BASU050103 0.880 BASU050101 0.879 - CIDH920102 0.877 BASU050102 0.876 SWER830101 0.875 - ZIMJ680105 0.875 ROBB790101 0.875 CORJ870102 0.873 - BLAS910101 0.871 MEEJ800102 0.867 ROSM880104 0.866 - PONP800107 0.866 ZHOH040101 0.864 ROSM880105 0.862 - BIOV880102 0.858 COWR900101 0.857 MANP780101 0.856 - EISD860103 0.852 RADA880102 0.845 CIDH920101 0.843 - WERD780101 0.841 ROSG850102 0.841 NOZY710101 0.839 - LEVM760106 0.830 CORJ870107 0.829 CORJ870105 0.827 - TAKK010101 0.822 CORJ870104 0.821 CORJ870106 0.820 - ARGP820101 0.820 PONP930101 0.819 JOND750101 0.819 - MEIH800103 0.811 ZHOH040102 0.809 PONP800101 0.806 - NADH010104 0.806 SIMZ760101 0.805 NADH010103 0.804 - PONP800103 0.802 LEVM760101 -0.801 GUYH850102 -0.802 - FUKS010103 -0.805 VINM940102 -0.808 ROSM880101 -0.834 - GUYH850101 -0.836 CORJ870108 -0.838 KIDA850101 -0.841 - MEIH800102 -0.849 OOBM770103 -0.852 FASG890101 -0.858 - PUNT030102 -0.858 RACS770102 -0.859 PUNT030101 -0.860 - MIYS990103 -0.861 ROSM880102 -0.864 RACS770101 -0.868 - MIYS990104 -0.869 MIYS990105 -0.869 GUYH850103 -0.881 - GRAR740102 -0.888 MEIH800101 -0.896 BULH740101 -0.912 - MIYS990102 -0.942 MIYS990101 -0.944 PARJ860101 -0.958 - WOLS870101 -0.963 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -2.89 -3.30 -3.41 -3.38 -2.49 -3.15 -2.94 -3.25 -2.84 -1.72 - -1.61 -3.31 -1.84 -1.63 -2.50 -3.30 -2.91 -1.75 -2.42 -2.08 -// -H PONP800101 -D Surrounding hydrophobicity in folded form (Ponnuswamy et al., 1980) -R PMID:7397216 -A Ponnuswamy, P.K., Prabhakaran, M. and Manavalan, P. -T Hydrophobic packing and spatial arrangement of amino acid residues in - globular proteins -J Biochim. Biophys. Acta 623, 301-316 (1980) -C PONP800102 0.990 MANP780101 0.963 NISK800101 0.960 - PONP800103 0.957 PONP930101 0.945 CORJ870101 0.939 - PONP800108 0.938 ROSG850102 0.938 RADA880108 0.934 - NISK860101 0.930 CORJ870107 0.923 BIOV880101 0.918 - CORJ870103 0.917 BASU050103 0.915 CORJ870104 0.913 - NADH010103 0.894 MIYS850101 0.892 NADH010104 0.892 - CIDH920104 0.888 CORJ870106 0.887 BASU050101 0.882 - WERD780101 0.880 CIDH920103 0.876 NADH010102 0.875 - CASG920101 0.874 PONP800106 0.871 MEIH800103 0.869 - CORJ870105 0.867 JANJ790101 0.866 BIOV880102 0.860 - DESM900102 0.858 JURD980101 0.858 CIDH920105 0.856 - NADH010105 0.853 KYTJ820101 0.851 JANJ780102 0.851 - BASU050102 0.848 DESM900101 0.847 ZHOH040103 0.847 - CHOC760103 0.830 ROBB760106 0.829 KANM800102 0.829 - NADH010101 0.826 ROBB760105 0.823 KANM800104 0.823 - LIFS790101 0.823 FAUJ830101 0.822 ROBB790101 0.822 - PTIO830102 0.819 QIAN880121 0.815 BAEK050101 0.812 - PLIV810101 0.806 CIDH920101 0.805 LIFS790102 0.804 - QIAN880122 0.801 PUNT030101 -0.800 FUKS010103 -0.801 - KRIW790102 -0.804 VINM940103 -0.813 MUNV940103 -0.819 - GUYH850103 -0.822 PUNT030102 -0.827 OOBM770101 -0.835 - VINM940102 -0.845 OOBM770103 -0.848 GRAR740102 -0.849 - KRIW710101 -0.850 RACS770101 -0.863 RACS770102 -0.870 - GUYH850102 -0.873 MEIH800102 -0.877 GUYH850101 -0.877 - VINM940101 -0.878 MIYS990101 -0.883 MIYS990102 -0.886 - KRIW790101 -0.888 MEIH800101 -0.888 KARP850102 -0.889 - MIYS990105 -0.918 MIYS990104 -0.924 CORJ870108 -0.928 - FASG890101 -0.932 MIYS990103 -0.940 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 12.28 11.49 11.00 10.97 14.93 11.28 11.19 12.01 12.84 14.77 - 14.10 10.80 14.33 13.43 11.19 11.26 11.65 12.95 13.29 15.07 -// -H PONP800102 -D Average gain in surrounding hydrophobicity (Ponnuswamy et al., 1980) -R PMID:7397216 -A Ponnuswamy, P.K., Prabhakaran, M. and Manavalan, P. -T Hydrophobic packing and spatial arrangement of amino acid residues in - globular proteins -J Biochim. Biophys. Acta 623, 301-316 (1980) -C PONP800101 0.990 PONP800103 0.986 NISK800101 0.965 - CORJ870101 0.954 ROSG850102 0.949 PONP800108 0.948 - MANP780101 0.945 RADA880108 0.938 PONP930101 0.934 - BIOV880101 0.926 NISK860101 0.924 NADH010103 0.919 - NADH010104 0.917 CORJ870103 0.907 CORJ870107 0.905 - BASU050103 0.902 NADH010102 0.901 CORJ870104 0.901 - JANJ790101 0.897 MIYS850101 0.891 CASG920101 0.889 - MEIH800103 0.885 PONP800106 0.883 WERD780101 0.883 - DESM900102 0.880 CIDH920104 0.880 JANJ780102 0.875 - DESM900101 0.871 NADH010105 0.869 JURD980101 0.869 - BIOV880102 0.867 CORJ870106 0.864 BASU050101 0.864 - KYTJ820101 0.861 ZHOH040103 0.858 CIDH920103 0.849 - BASU050102 0.843 CORJ870105 0.841 FAUJ830101 0.841 - CHOC760103 0.836 NADH010101 0.832 CIDH920105 0.831 - ROBB760105 0.828 JANJ790102 0.822 ROBB760106 0.822 - BAEK050101 0.818 KANM800102 0.815 EISD860103 0.814 - KANM800104 0.813 ROBB790101 0.807 MUNV940103 -0.802 - GUYH850103 -0.808 RACS770103 -0.809 VINM940103 -0.820 - GUYH850104 -0.824 PUNT030102 -0.827 RACS770101 -0.827 - KRIW790102 -0.830 VINM940102 -0.842 OOBM770103 -0.854 - OOBM770101 -0.862 RACS770102 -0.864 MEIH800101 -0.870 - GRAR740102 -0.871 MIYS990101 -0.874 GUYH850102 -0.874 - MIYS990102 -0.877 GUYH850101 -0.883 MEIH800102 -0.883 - VINM940101 -0.883 KARP850102 -0.887 KRIW710101 -0.887 - CORJ870108 -0.911 KRIW790101 -0.915 MIYS990105 -0.927 - MIYS990104 -0.930 FASG890101 -0.944 MIYS990103 -0.946 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 7.62 6.81 6.17 6.18 10.93 6.67 6.38 7.31 7.85 9.99 - 9.37 5.72 9.83 8.99 6.64 6.93 7.08 8.41 8.53 10.38 -// -H PONP800103 -D Average gain ratio in surrounding hydrophobicity (Ponnuswamy et al., 1980) -R PMID:7397216 -A Ponnuswamy, P.K., Prabhakaran, M. and Manavalan, P. -T Hydrophobic packing and spatial arrangement of amino acid residues in - globular proteins -J Biochim. Biophys. Acta 623, 301-316 (1980) -C PONP800102 0.986 PONP800101 0.957 ROSG850102 0.947 - CORJ870101 0.944 NISK800101 0.941 RADA880108 0.934 - NADH010103 0.932 PONP800108 0.931 BIOV880101 0.926 - NADH010104 0.926 NADH010102 0.921 MANP780101 0.913 - NISK860101 0.910 PONP930101 0.909 MIYS850101 0.898 - DESM900102 0.896 MEIH800103 0.895 CORJ870103 0.889 - DESM900101 0.887 JANJ790101 0.886 CORJ870107 0.884 - CORJ870104 0.884 PONP800106 0.883 JANJ780102 0.882 - JURD980101 0.879 BIOV880102 0.879 BASU050103 0.879 - CASG920101 0.879 WERD780101 0.876 KYTJ820101 0.870 - NADH010105 0.866 FAUJ830101 0.863 CIDH920104 0.863 - ZHOH040103 0.861 JANJ790102 0.844 BASU050101 0.842 - EISD860103 0.842 CORJ870106 0.840 CHOC760103 0.837 - NADH010101 0.833 BASU050102 0.828 ROBB760105 0.823 - CIDH920103 0.823 CORJ870105 0.821 ROBB760106 0.812 - CIDH920105 0.807 NADH010106 0.803 KANM800102 0.803 - PLIV810101 0.802 OLSK800101 0.801 PUNT030101 -0.812 - JANJ780103 -0.812 VINM940103 -0.817 RACS770103 -0.819 - VINM940102 -0.820 WOEC730101 -0.823 PUNT030102 -0.834 - GUYH850104 -0.845 KRIW790102 -0.853 GUYH850102 -0.856 - MEIH800101 -0.856 RACS770102 -0.860 OOBM770103 -0.865 - KARP850102 -0.870 MIYS990101 -0.871 MIYS990102 -0.875 - VINM940101 -0.878 OOBM770101 -0.880 GUYH850101 -0.887 - CORJ870108 -0.889 KRIW710101 -0.890 MEIH800102 -0.891 - GRAR740102 -0.897 MIYS990105 -0.928 MIYS990104 -0.929 - KRIW790101 -0.930 FASG890101 -0.936 MIYS990103 -0.943 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.63 2.45 2.27 2.29 3.36 2.45 2.31 2.55 2.57 3.08 - 2.98 2.12 3.18 3.02 2.46 2.60 2.55 2.85 2.79 3.21 -// -H PONP800104 -D Surrounding hydrophobicity in alpha-helix (Ponnuswamy et al., 1980) -R PMID:7397216 -A Ponnuswamy, P.K., Prabhakaran, M. and Manavalan, P. -T Hydrophobic packing and spatial arrangement of amino acid residues in - globular proteins -J Biochim. Biophys. Acta 623, 301-316 (1980) -C CHOC760104 0.844 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 13.65 11.28 12.24 10.98 14.49 11.30 12.55 15.36 11.59 14.63 - 14.01 11.96 13.40 14.08 11.51 11.26 13.00 12.06 12.64 12.88 -// -H PONP800105 -D Surrounding hydrophobicity in beta-sheet (Ponnuswamy et al., 1980) -R PMID:7397216 -A Ponnuswamy, P.K., Prabhakaran, M. and Manavalan, P. -T Hydrophobic packing and spatial arrangement of amino acid residues in - globular proteins -J Biochim. Biophys. Acta 623, 301-316 (1980) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 14.60 13.24 11.79 13.78 15.90 12.02 13.59 14.18 15.35 14.10 - 16.49 13.28 16.23 14.18 14.10 13.36 14.50 13.90 14.76 16.30 -// -H PONP800106 -D Surrounding hydrophobicity in turn (Ponnuswamy et al., 1980) -R PMID:7397216 -A Ponnuswamy, P.K., Prabhakaran, M. and Manavalan, P. -T Hydrophobic packing and spatial arrangement of amino acid residues in - globular proteins -J Biochim. Biophys. Acta 623, 301-316 (1980) -C PONP800102 0.883 PONP800103 0.883 PONP800101 0.871 - CORJ870104 0.842 RADA880108 0.835 CORJ870107 0.834 - CORJ870103 0.821 MANP780101 0.813 MIYS850101 0.812 - CORJ870106 0.807 ROSG850102 0.807 MIYS990103 -0.807 - KARP850102 -0.820 FASG890101 -0.823 GUYH850101 -0.826 - KRIW710101 -0.841 CORJ870108 -0.859 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 10.67 11.05 10.85 10.21 14.15 11.71 11.71 10.95 12.07 12.95 - 13.07 9.93 15.00 13.27 10.62 11.18 10.53 11.41 11.52 13.86 -// -H PONP800107 -D Accessibility reduction ratio (Ponnuswamy et al., 1980) -R PMID:7397216 -A Ponnuswamy, P.K., Prabhakaran, M. and Manavalan, P. -T Hydrophobic packing and spatial arrangement of amino acid residues in - globular proteins -J Biochim. Biophys. Acta 623, 301-316 (1980) -C MIYS850101 0.884 MANP780101 0.871 PLIV810101 0.866 - GUOD860101 0.854 PONP930101 0.851 LIFS790102 0.849 - NISK860101 0.847 PTIO830102 0.837 CIDH920103 0.833 - CIDH920104 0.832 BASU050101 0.825 CIDH920105 0.818 - BIOV880101 0.816 BIOV880102 0.814 CHOC760103 0.813 - CORJ870105 0.812 BASU050103 0.812 VENT840101 0.805 - CORJ870107 0.805 BEGF750102 0.803 ROSG850102 0.803 - LIFS790101 0.801 RADA880108 0.800 CORJ870106 0.800 - PUNT030101 -0.804 CHOP780203 -0.818 OOBM770103 -0.819 - CHOP780210 -0.820 WOLS870101 -0.852 MEIH800102 -0.858 - PARJ860101 -0.868 MIYS990101 -0.877 RACS770102 -0.878 - MIYS990102 -0.879 RACS770101 -0.905 MEIH800101 -0.909 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 3.70 2.53 2.12 2.60 3.03 2.70 3.30 3.13 3.57 7.69 - 5.88 1.79 5.21 6.60 2.12 2.43 2.60 6.25 3.03 7.14 -// -H PONP800108 -D Average number of surrounding residues (Ponnuswamy et al., 1980) -R PMID:7397216 -A Ponnuswamy, P.K., Prabhakaran, M. and Manavalan, P. -T Hydrophobic packing and spatial arrangement of amino acid residues in - globular proteins -J Biochim. Biophys. Acta 623, 301-316 (1980) -C NISK800101 0.976 CORJ870101 0.969 PONP800102 0.948 - PONP930101 0.944 PONP800101 0.938 MANP780101 0.935 - PONP800103 0.931 BASU050103 0.921 NISK860101 0.921 - ROSG850102 0.919 CIDH920104 0.909 BIOV880101 0.907 - NADH010103 0.907 NADH010104 0.902 CASG920101 0.901 - BASU050101 0.894 NADH010102 0.890 RADA880108 0.889 - ZHOH040103 0.887 JANJ790101 0.881 BASU050102 0.880 - FAUJ830101 0.875 CORJ870103 0.873 JANJ780102 0.863 - MEIH800103 0.862 CORJ870104 0.861 CORJ870107 0.859 - JURD980101 0.856 BIOV880102 0.854 KYTJ820101 0.850 - KANM800102 0.849 KANM800104 0.849 MIYS850101 0.847 - NADH010105 0.845 WERD780101 0.843 CIDH920105 0.843 - CIDH920103 0.841 DESM900102 0.833 BAEK050101 0.833 - ROBB790101 0.831 LIFS790101 0.828 NADH010101 0.820 - ROBB760105 0.820 GEIM800107 0.817 CORJ870106 0.813 - QIAN880122 0.811 BLAS910101 0.810 EISD860103 0.809 - CHOC760103 0.809 CHOP780202 0.809 ROSM880105 0.808 - ROBB760106 0.808 QIAN880121 0.802 JANJ790102 0.802 - CORJ870105 0.801 GUYH850104 -0.807 MEIH800101 -0.825 - GUYH850103 -0.828 WOEC730101 -0.831 MEIH800102 -0.836 - OOBM770101 -0.851 CORJ870108 -0.853 PUNT030102 -0.855 - KRIW790101 -0.860 MIYS990101 -0.866 MIYS990102 -0.869 - VINM940102 -0.871 GUYH850102 -0.873 VINM940101 -0.891 - OOBM770103 -0.896 GRAR740102 -0.907 FASG890101 -0.913 - MIYS990104 -0.918 MIYS990103 -0.920 MIYS990105 -0.927 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.05 5.70 5.04 4.95 7.86 5.45 5.10 6.16 5.80 7.51 - 7.37 4.88 6.39 6.62 5.65 5.53 5.81 6.98 6.73 7.62 -// -H PRAM820101 -D Intercept in regression analysis (Prabhakaran-Ponnuswamy, 1982) -R -A Prabhakaran, M. and Ponnuswamy, P.K. -T Shape and surface features of globular proteins -J Macromolecules 15, 314-320 (1982) Regression analysis of solvent contact area - and spatial position -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.305 0.227 0.322 0.335 0.339 0.306 0.282 0.352 0.215 0.278 - 0.262 0.391 0.280 0.195 0.346 0.326 0.251 0.291 0.293 0.291 -// -H PRAM820102 -D Slope in regression analysis x 1.0E1 (Prabhakaran-Ponnuswamy, 1982) -R -A Prabhakaran, M. and Ponnuswamy, P.K. -T Shape and surface features of globular proteins -J Macromolecules 15, 314-320 (1982) Regression analysis of solvent contact area - and spatial position -C LEVM760104 0.812 PRAM820103 0.802 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.175 0.083 0.090 0.140 0.074 0.093 0.135 0.201 0.125 0.100 - 0.104 0.058 0.054 0.104 0.136 0.155 0.152 0.092 0.081 0.096 -// -H PRAM820103 -D Correlation coefficient in regression analysis (Prabhakaran-Ponnuswamy, 1982) -R -A Prabhakaran, M. and Ponnuswamy, P.K. -T Shape and surface features of globular proteins -J Macromolecules 15, 314-320 (1982) Regression analysis of solvent contact area - and spatial position -C PRAM820102 0.802 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.687 0.590 0.489 0.632 0.263 0.527 0.669 0.670 0.594 0.564 - 0.541 0.407 0.328 0.577 0.600 0.692 0.713 0.632 0.495 0.529 -// -H PRAM900101 -D Hydrophobicity (Prabhakaran, 1990) -R PMID:2390062 -A Prabhakaran, M. -T The distribution of physical, chemical and conformational properties in - signal and nascent peptides -J Biochem. J. 269, 691-696 (1990) Original references: Engelman, D.M., Steitz, - T.A. and Terwilliger, T.C. Annu. Rev. Biophys. Chem. 15, 321-353 (1986) -C ENGD860101 1.000 ROSM880101 0.917 VHEG790101 0.909 - KUHL950101 0.908 OOBM770101 0.907 JANJ780101 0.901 - ROSM880102 0.892 PUNT030101 0.889 JANJ780103 0.884 - HOPT810101 0.881 GUYH850104 0.881 LEVM760101 0.881 - WOEC730101 0.871 PUNT030102 0.869 GUYH850105 0.867 - KIDA850101 0.866 GRAR740102 0.855 ZIMJ680103 0.854 - CHOC760102 0.826 MONM990101 0.820 GUYH850101 0.820 - FAUJ880109 0.815 RADA880104 -0.803 OLSK800101 -0.806 - CHOC760103 -0.814 NADH010103 -0.815 WARP780101 -0.827 - EISD860103 -0.831 NADH010101 -0.843 KYTJ820101 -0.850 - FAUJ830101 -0.853 JANJ780102 -0.860 EISD860101 -0.862 - JURD980101 -0.862 BLAS910101 -0.864 RADA880107 -0.865 - NADH010102 -0.870 WOLR790101 -0.877 WOLR810101 -0.887 - JANJ790102 -0.890 DESM900102 -0.890 ROSM880105 -0.912 - RADA880101 -0.932 EISD840101 -0.936 JACR890101 -0.948 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -6.70 51.50 20.10 38.50 -8.40 17.20 34.30 -4.20 12.60 -13. - -11.70 36.80 -14.20 -15.50 0.80 -2.50 -5. -7.90 2.90 -10.90 -// -H PRAM900102 -D Relative frequency in alpha-helix (Prabhakaran, 1990) -R PMID:2390062 -A Prabhakaran, M. -T The distribution of physical, chemical and conformational properties in - signal and nascent peptides -J Biochem. J. 269, 691-696 (1990) Original reference of these three data: - Creighton, T.E. In "Protein Structure and Melecular Properties", (Freeman, - W.H., ed.), San Francisco P.235 (1983) -C LEVM780101 1.000 LEVM780104 0.964 PALJ810101 0.943 - KANM800101 0.942 ISOY800101 0.929 MAXF760101 0.924 - ROBB760101 0.916 GEIM800101 0.912 GEIM800104 0.907 - RACS820108 0.904 PALJ810102 0.902 PALJ810109 0.898 - NAGK730101 0.894 CRAJ730101 0.887 CHOP780201 0.873 - TANS770101 0.854 KANM800103 0.850 QIAN880107 0.829 - QIAN880106 0.827 BURA740101 0.805 NAGK730103 -0.809 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.29 0.96 0.90 1.04 1.11 1.27 1.44 0.56 1.22 0.97 - 1.30 1.23 1.47 1.07 0.52 0.82 0.82 0.99 0.72 0.91 -// -H PRAM900103 -D Relative frequency in beta-sheet (Prabhakaran, 1990) -R PMID:2390062 -A Prabhakaran, M. -T The distribution of physical, chemical and conformational properties in - signal and nascent peptides -J Biochem. J. 269, 691-696 (1990) Original reference of these three data: - Creighton, T.E. In "Protein Structure and Melecular Properties", (Freeman, - W.H., ed.), San Francisco P.235 (1983) -C LEVM780102 1.000 PALJ810112 0.913 LEVM780105 0.899 - PALJ810104 0.868 PTIO830102 0.865 LIFS790101 0.864 - QIAN880120 0.858 KANM800102 0.856 PALJ810103 0.846 - GEIM800107 0.842 BEGF750102 0.834 QIAN880119 0.834 - CHOP780202 0.833 AVBF000101 0.815 QIAN880121 0.805 - MUNV940103 -0.848 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.90 0.99 0.76 0.72 0.74 0.80 0.75 0.92 1.08 1.45 - 1.02 0.77 0.97 1.32 0.64 0.95 1.21 1.14 1.25 1.49 -// -H PRAM900104 -D Relative frequency in reverse-turn (Prabhakaran, 1990) -R PMID:2390062 -A Prabhakaran, M. -T The distribution of physical, chemical and conformational properties in - signal and nascent peptides -J Biochem. J. 269, 691-696 (1990) Original reference of these three data: - Creighton, T.E. In "Protein Structure and Melecular Properties", (Freeman, - W.H., ed.), San Francisco P.235 (1983) -C LEVM780103 1.000 LEVM780106 0.983 GEIM800111 0.954 - CHOP780216 0.951 QIAN880133 0.947 QIAN880134 0.934 - ISOY800103 0.934 QIAN880132 0.932 GEIM800108 0.931 - CHOP780203 0.928 CHAM830101 0.909 PALJ810105 0.906 - QIAN880135 0.903 CHOP780101 0.891 TANS770110 0.873 - CHOP780210 0.850 PALJ810106 0.844 RACS770101 0.809 - KANM800103 -0.814 AURR980109 -0.815 QIAN880108 -0.819 - QIAN880107 -0.829 AVBF000102 -0.834 ROBB760103 -0.840 - FAUJ880102 -0.844 QIAN880109 -0.846 PTIO830101 -0.858 - SUEM840101 -0.865 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.78 0.88 1.28 1.41 0.80 0.97 1. 1.64 0.69 0.51 - 0.59 0.96 0.39 0.58 1.91 1.33 1.03 0.75 1.05 0.47 -// -H PTIO830101 -D Helix-coil equilibrium constant (Ptitsyn-Finkelstein, 1983) -R PMID:6673754 -A Ptitsyn, O.B. and Finkelstein, A.V. -T Theory of protein secondary structure and algorithm of its prediction -J Biopolymers 22, 15-25 (1983) Charged state for Arg, His, Lys, Asp, and Glu -C ROBB760103 0.903 QIAN880109 0.886 QIAN880108 0.884 - SUEM840101 0.877 BLAM930101 0.868 QIAN880111 0.857 - ONEK900101 0.847 QIAN880107 0.846 QIAN880110 0.835 - AURR980113 0.833 FAUJ880102 0.832 FINA770101 0.826 - AURR980109 0.820 ROBB760104 0.817 AURR980114 0.809 - MUNV940104 -0.807 QIAN880131 -0.826 ONEK900102 -0.830 - ISOY800104 -0.832 MUNV940105 -0.833 QIAN880132 -0.833 - CHOP780213 -0.835 GEIM800108 -0.840 CHAM830101 -0.841 - MUNV940102 -0.844 LEVM780106 -0.854 CHOP780216 -0.855 - PRAM900104 -0.858 LEVM780103 -0.860 QIAN880133 -0.864 - GEIM800111 -0.876 MUNV940101 -0.880 QIAN880135 -0.899 - QIAN880134 -0.920 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.10 0.95 0.80 0.65 0.95 1.00 1.00 0.60 0.85 1.10 - 1.25 1.00 1.15 1.10 0.10 0.75 0.75 1.10 1.10 0.95 -// -H PTIO830102 -D Beta-coil equilibrium constant (Ptitsyn-Finkelstein, 1983) -R PMID:6673754 -A Ptitsyn, O.B. and Finkelstein, A.V. -T Theory of protein secondary structure and algorithm of its prediction -J Biopolymers 22, 15-25 (1983) Charged state for Arg, His, Lys, Asp, and Glu -C LIFS790101 0.941 PALJ810104 0.937 KANM800102 0.917 - CHOP780202 0.913 QIAN880120 0.908 BASU050101 0.903 - LEVM780105 0.894 BASU050103 0.888 ROBB760106 0.882 - QIAN880121 0.880 PONP930101 0.879 ROBB760105 0.878 - LIFS790102 0.874 PALJ810103 0.867 QIAN880119 0.865 - LEVM780102 0.865 PRAM900103 0.865 AVBF000101 0.861 - MANP780101 0.861 KANM800104 0.858 SWER830101 0.856 - CORJ870102 0.854 GEIM800107 0.850 BASU050102 0.848 - VENT840101 0.842 CIDH920104 0.842 PONP800107 0.837 - NISK860101 0.825 LIFS790103 0.822 CRAJ730102 0.820 - PONP800101 0.819 CHOP780209 0.814 ZHOH040103 0.813 - CIDH920105 0.813 NAGK730102 0.811 PALJ810112 0.811 - GEIM800105 0.810 CORJ870107 0.810 CORJ870106 0.809 - CIDH920103 0.807 BEGF750102 0.807 MIYS850101 0.807 - OOBM770103 -0.801 KRIW790101 -0.801 CORJ870108 -0.812 - MIYS990104 -0.818 MIYS990103 -0.820 MEIH800101 -0.828 - MIYS990101 -0.833 MIYS990102 -0.834 MUNV940103 -0.903 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.00 0.70 0.60 0.50 1.90 1.00 0.70 0.30 0.80 4.00 - 2.00 0.70 1.90 3.10 0.20 0.90 1.70 2.20 2.80 4.00 -// -H QIAN880101 -D Weights for alpha-helix at the window position of -6 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.12 0.04 -0.10 0.01 -0.25 -0.03 -0.02 -0.02 -0.06 -0.07 - 0.05 0.26 0.00 0.05 -0.19 -0.19 -0.04 -0.06 -0.14 -0.03 -// -H QIAN880102 -D Weights for alpha-helix at the window position of -5 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.26 -0.14 -0.03 0.15 -0.15 -0.13 0.21 -0.37 0.10 -0.03 - -0.02 0.12 0.00 0.12 -0.08 0.01 -0.34 -0.01 -0.29 0.02 -// -H QIAN880103 -D Weights for alpha-helix at the window position of -4 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.64 -0.10 0.09 0.33 0.03 -0.23 0.51 -0.09 -0.23 -0.22 - 0.41 -0.17 0.13 -0.03 -0.43 -0.10 -0.07 -0.02 -0.38 -0.01 -// -H QIAN880104 -D Weights for alpha-helix at the window position of -3 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880106 0.851 QIAN880105 0.824 AURR980108 0.815 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.29 -0.03 -0.04 0.11 -0.05 0.26 0.28 -0.67 -0.26 0.00 - 0.47 -0.19 0.27 0.24 -0.34 -0.17 -0.20 0.25 -0.30 -0.01 -// -H QIAN880105 -D Weights for alpha-helix at the window position of -2 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C ROBB760101 0.874 QIAN880106 0.846 CHOP780201 0.835 - AURR980113 0.833 BEGF750101 0.833 QIAN880107 0.829 - ISOY800101 0.828 KANM800101 0.827 QIAN880104 0.824 - RACS820108 0.820 KANM800103 0.820 ROBB760103 0.811 - MAXF760101 0.811 CHAM830101 -0.803 MUNV940102 -0.816 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.68 -0.22 -0.09 -0.02 -0.15 -0.15 0.44 -0.73 -0.14 -0.08 - 0.61 0.03 0.39 0.06 -0.76 -0.26 -0.10 0.20 -0.04 0.12 -// -H QIAN880106 -D Weights for alpha-helix at the window position of -1 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C ROBB760101 0.904 ISOY800101 0.903 QIAN880107 0.896 - KANM800103 0.889 MAXF760101 0.881 CHOP780201 0.874 - PALJ810102 0.871 RACS820108 0.866 AURR980109 0.862 - ROBB760103 0.854 KANM800101 0.854 QIAN880104 0.851 - QIAN880105 0.846 AURR980112 0.839 AURR980108 0.838 - AURR980113 0.835 RICJ880109 0.834 PRAM900102 0.827 - LEVM780101 0.827 TANS770101 0.819 FINA770101 0.810 - LEVM780104 0.804 AURR980110 0.804 AURR980114 0.803 - QIAN880132 -0.813 MUNV940101 -0.835 CHAM830101 -0.856 - MUNV940102 -0.867 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.34 0.22 -0.33 0.06 -0.18 0.01 0.20 -0.88 -0.09 -0.03 - 0.20 -0.11 0.43 0.15 -0.81 -0.35 -0.37 0.07 -0.31 0.13 -// -H QIAN880107 -D Weights for alpha-helix at the window position of 0 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C KANM800103 0.908 QIAN880106 0.896 AURR980109 0.893 - ROBB760103 0.889 ISOY800101 0.887 MAXF760101 0.885 - AURR980114 0.876 QIAN880108 0.872 ROBB760101 0.867 - QIAN880109 0.865 PALJ810102 0.856 KANM800101 0.854 - QIAN880110 0.853 PTIO830101 0.846 CHOP780201 0.843 - AURR980113 0.832 RACS820108 0.831 LEVM780101 0.829 - PRAM900102 0.829 QIAN880105 0.829 LEVM780104 0.822 - BEGF750101 0.815 AURR980110 0.815 FINA770101 0.814 - TANS770101 0.804 AURR980108 0.803 SUEM840101 0.803 - AURR980112 0.802 CHOP780216 -0.808 QIAN880133 -0.809 - CHOP780101 -0.809 LEVM780106 -0.813 PALJ810106 -0.821 - PRAM900104 -0.829 LEVM780103 -0.834 CRAJ730103 -0.840 - CHAM830101 -0.858 MUNV940101 -0.880 MUNV940102 -0.882 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.57 0.23 -0.36 -0.46 -0.15 0.15 0.26 -0.71 -0.05 0.00 - 0.48 0.16 0.41 0.03 -1.12 -0.47 -0.54 -0.10 -0.35 0.31 -// -H QIAN880108 -D Weights for alpha-helix at the window position of 1 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880109 0.951 ROBB760103 0.914 QIAN880110 0.901 - PTIO830101 0.884 ROBB760104 0.879 QIAN880107 0.872 - ONEK900101 0.866 BLAM930101 0.860 KANM800103 0.829 - RACS820108 0.820 QIAN880111 0.819 PRAM900104 -0.819 - LEVM780103 -0.820 QIAN880135 -0.836 MUNV940102 -0.839 - QIAN880136 -0.843 QIAN880134 -0.845 ISOY800104 -0.847 - ONEK900102 -0.860 MUNV940101 -0.864 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.33 0.10 -0.19 -0.44 -0.03 0.19 0.21 -0.46 0.27 -0.33 - 0.57 0.23 0.79 0.48 -1.86 -0.23 -0.33 0.15 -0.19 0.24 -// -H QIAN880109 -D Weights for alpha-helix at the window position of 2 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880110 0.953 QIAN880108 0.951 QIAN880111 0.912 - PTIO830101 0.886 ROBB760104 0.871 ROBB760103 0.868 - QIAN880107 0.865 BLAM930101 0.828 KANM800103 0.824 - QIAN880112 0.824 ONEK900101 0.824 AURR980114 0.810 - AURR980109 0.807 CHOP780205 0.806 ONEK900102 -0.800 - LEVM780106 -0.815 MUNV940101 -0.841 QIAN880134 -0.841 - PRAM900104 -0.846 LEVM780103 -0.848 QIAN880135 -0.884 - QIAN880136 -0.927 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.13 0.08 -0.07 -0.71 -0.09 0.12 0.13 -0.39 0.32 0.00 - 0.50 0.37 0.63 0.15 -1.40 -0.28 -0.21 0.02 -0.10 0.17 -// -H QIAN880110 -D Weights for alpha-helix at the window position of 3 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880109 0.953 QIAN880111 0.922 QIAN880108 0.901 - QIAN880107 0.853 PTIO830101 0.835 QIAN880112 0.828 - KANM800103 0.820 AURR980114 0.819 ROBB760103 0.807 - ROBB760104 0.806 AURR980109 0.802 QIAN880136 -0.890 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.31 0.18 -0.10 -0.81 -0.26 0.41 -0.06 -0.42 0.51 -0.15 - 0.56 0.47 0.58 0.10 -1.33 -0.49 -0.44 0.14 -0.08 -0.01 -// -H QIAN880111 -D Weights for alpha-helix at the window position of 4 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880110 0.922 QIAN880109 0.912 QIAN880112 0.861 - PTIO830101 0.857 QIAN880108 0.819 QIAN880135 -0.878 - QIAN880136 -0.900 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.21 0.07 -0.04 -0.58 -0.12 0.13 -0.23 -0.15 0.37 0.31 - 0.70 0.28 0.61 -0.06 -1.03 -0.28 -0.25 0.21 0.16 0.00 -// -H QIAN880112 -D Weights for alpha-helix at the window position of 5 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880111 0.861 QIAN880113 0.859 QIAN880110 0.828 - QIAN880109 0.824 QIAN880136 -0.812 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.18 0.21 -0.03 -0.32 -0.29 -0.27 -0.25 -0.40 0.28 -0.03 - 0.62 0.41 0.21 0.05 -0.84 -0.05 -0.16 0.32 0.11 0.06 -// -H QIAN880113 -D Weights for alpha-helix at the window position of 6 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880112 0.859 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.08 0.05 -0.08 -0.24 -0.25 -0.28 -0.19 -0.10 0.29 -0.01 - 0.28 0.45 0.11 0.00 -0.42 0.07 -0.33 0.36 0.00 -0.13 -// -H QIAN880114 -D Weights for beta-sheet at the window position of -6 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880115 0.832 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.18 -0.13 0.28 0.05 -0.26 0.21 -0.06 0.23 0.24 -0.42 - -0.23 0.03 -0.42 -0.18 -0.13 0.41 0.33 -0.10 -0.10 -0.07 -// -H QIAN880115 -D Weights for beta-sheet at the window position of -5 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880114 0.832 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.01 0.02 0.41 -0.09 -0.27 0.01 0.09 0.13 0.22 -0.27 - -0.25 0.08 -0.57 -0.12 0.26 0.44 0.35 -0.15 0.15 -0.09 -// -H QIAN880116 -D Weights for beta-sheet at the window position of -4 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880126 0.823 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.19 0.03 0.02 -0.06 -0.29 0.02 -0.10 0.19 -0.16 -0.08 - -0.42 -0.09 -0.38 -0.32 0.05 0.25 0.22 -0.19 0.05 -0.15 -// -H QIAN880117 -D Weights for beta-sheet at the window position of -3 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.14 0.14 -0.27 -0.10 -0.64 -0.11 -0.39 0.46 -0.04 0.16 - -0.57 0.04 0.24 0.08 0.02 -0.12 0.00 -0.10 0.18 0.29 -// -H QIAN880118 -D Weights for beta-sheet at the window position of -2 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C PALJ810103 0.845 LEVM780105 0.819 QIAN880119 0.812 - GEIM800105 0.810 KANM800102 0.801 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.31 0.25 -0.53 -0.54 -0.06 0.07 -0.52 0.37 -0.32 0.57 - 0.09 -0.29 0.29 0.24 -0.31 0.11 0.03 0.15 0.29 0.48 -// -H QIAN880119 -D Weights for beta-sheet at the window position of -1 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880120 0.959 LIFS790101 0.929 LEVM780105 0.903 - ROBB760106 0.897 KANM800102 0.888 LIFS790103 0.877 - PTIO830102 0.865 QIAN880121 0.862 PALJ810103 0.861 - ROBB760105 0.859 AVBF000101 0.859 CHOP780202 0.855 - KANM800104 0.841 PONP930101 0.836 PRAM900103 0.834 - LEVM780102 0.834 GEIM800105 0.829 OOBM850101 0.825 - PALJ810110 0.824 PALJ810104 0.822 QIAN880118 0.812 - BEGF750102 0.811 CORJ870105 0.810 GEIM800107 0.807 - CHOP780208 0.807 BASU050101 0.805 CORJ870106 0.803 - LEVM780106 -0.810 GEIM800108 -0.810 CHOP780203 -0.814 - QIAN880131 -0.830 QIAN880133 -0.849 GEIM800110 -0.853 - QIAN880132 -0.858 MUNV940103 -0.927 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.10 0.19 -0.89 -0.89 0.13 -0.04 -0.34 -0.45 -0.34 0.95 - 0.32 -0.46 0.43 0.36 -0.91 -0.12 0.49 0.34 0.42 0.76 -// -H QIAN880120 -D Weights for beta-sheet at the window position of 0 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C LIFS790101 0.969 QIAN880119 0.959 LIFS790103 0.939 - QIAN880121 0.935 CHOP780202 0.915 LEVM780105 0.913 - PTIO830102 0.908 ROBB760106 0.908 KANM800102 0.896 - PALJ810103 0.886 PALJ810104 0.886 PONP930101 0.879 - AVBF000101 0.876 CORJ870106 0.866 ROBB760105 0.860 - PRAM900103 0.858 LEVM780102 0.858 CORJ870105 0.858 - BASU050101 0.856 GEIM800107 0.843 CORJ870107 0.840 - BASU050102 0.837 NISK860101 0.837 BEGF750102 0.829 - CORJ870102 0.825 SWER830101 0.825 GEIM800106 0.825 - PALJ810110 0.824 GEIM800105 0.822 BASU050103 0.811 - MANP780101 0.806 KANM800104 0.803 CORJ870101 0.802 - CHOP780208 0.800 CHOP780216 -0.800 QIAN880131 -0.801 - GEIM800108 -0.804 VINM940102 -0.813 GEIM800111 -0.816 - VINM940101 -0.823 OOBM770103 -0.824 MIYS990103 -0.829 - LEVM780106 -0.831 MIYS990104 -0.833 CORJ870108 -0.834 - QIAN880132 -0.839 QIAN880134 -0.842 PARS000101 -0.863 - QIAN880133 -0.863 GEIM800110 -0.898 MUNV940103 -0.959 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.25 -0.02 -0.77 -1.01 0.13 -0.12 -0.62 -0.72 -0.16 1.10 - 0.23 -0.59 0.32 0.48 -1.24 -0.31 0.17 0.45 0.77 0.69 -// -H QIAN880121 -D Weights for beta-sheet at the window position of 1 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880120 0.935 LIFS790101 0.930 CHOP780202 0.911 - PALJ810104 0.910 ROBB760106 0.907 KANM800102 0.900 - PONP930101 0.893 LIFS790103 0.882 PTIO830102 0.880 - LEVM780105 0.876 PALJ810103 0.875 GEIM800107 0.875 - QIAN880119 0.862 AVBF000101 0.855 CORJ870101 0.842 - QIAN880122 0.838 BAEK050101 0.836 ROBB760105 0.834 - NISK860101 0.829 KANM800104 0.829 BASU050103 0.828 - BASU050101 0.828 BASU050102 0.825 NISK800101 0.818 - PONP800101 0.815 PALJ810112 0.812 GEIM800105 0.811 - CHOP780209 0.809 CORJ870107 0.806 CORJ870106 0.806 - PRAM900103 0.805 LEVM780102 0.805 PONP800108 0.802 - MANP780101 0.802 QIAN880133 -0.802 KRIW790101 -0.803 - GEIM800110 -0.806 PARS000101 -0.809 VINM940101 -0.828 - MIYS990104 -0.832 QIAN880134 -0.838 MIYS990103 -0.838 - MUNV940103 -0.938 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.26 -0.09 -0.34 -0.55 0.47 -0.33 -0.75 -0.56 -0.04 0.94 - 0.25 -0.55 -0.05 0.20 -1.28 -0.28 0.08 0.22 0.53 0.67 -// -H QIAN880122 -D Weights for beta-sheet at the window position of 2 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880121 0.838 PONP930101 0.837 CORJ870101 0.826 - PONP800108 0.811 NADH010103 0.809 CORJ870103 0.808 - NISK800101 0.808 NADH010104 0.804 PONP800101 0.801 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.05 -0.11 -0.40 -0.11 0.36 -0.67 -0.35 0.14 0.02 0.47 - 0.32 -0.51 -0.10 0.20 -0.79 0.03 -0.15 0.09 0.34 0.58 -// -H QIAN880123 -D Weights for beta-sheet at the window position of 3 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.44 -0.13 0.05 -0.20 0.13 -0.58 -0.28 0.08 0.09 -0.04 - -0.12 -0.33 -0.21 -0.13 -0.48 0.27 0.47 -0.22 -0.11 0.06 -// -H QIAN880124 -D Weights for beta-sheet at the window position of 4 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.31 -0.10 0.06 0.13 -0.11 -0.47 -0.05 0.45 -0.06 -0.25 - -0.44 -0.44 -0.28 -0.04 -0.29 0.34 0.27 -0.08 0.06 0.11 -// -H QIAN880125 -D Weights for beta-sheet at the window position of 5 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.02 0.04 0.03 0.11 -0.02 -0.17 0.10 0.38 -0.09 -0.48 - -0.26 -0.39 -0.14 -0.03 -0.04 0.41 0.36 -0.01 -0.08 -0.18 -// -H QIAN880126 -D Weights for beta-sheet at the window position of 6 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880116 0.823 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.06 0.02 0.10 0.24 -0.19 -0.04 -0.04 0.17 0.19 -0.20 - -0.46 -0.43 -0.52 -0.33 0.37 0.43 0.50 -0.32 0.35 0.00 -// -H QIAN880127 -D Weights for coil at the window position of -6 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C OOBM850105 -0.813 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.05 0.06 0.00 0.15 0.30 -0.08 -0.02 -0.14 -0.07 0.26 - 0.04 -0.42 0.25 0.09 0.31 -0.11 -0.06 0.19 0.33 0.04 -// -H QIAN880128 -D Weights for coil at the window position of -5 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.19 0.17 -0.38 0.09 0.41 0.04 -0.20 0.28 -0.19 -0.06 - 0.34 -0.20 0.45 0.07 0.04 -0.23 -0.02 0.16 0.22 0.05 -// -H QIAN880129 -D Weights for coil at the window position of -4 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.43 0.06 0.00 -0.31 0.19 0.14 -0.41 -0.21 0.21 0.29 - -0.10 0.33 -0.01 0.25 0.28 -0.23 -0.26 0.15 0.09 -0.10 -// -H QIAN880130 -D Weights for coil at the window position of -3 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.19 -0.07 0.17 -0.27 0.42 -0.29 -0.22 0.17 0.17 -0.34 - -0.22 0.00 -0.53 -0.31 0.14 0.22 0.10 -0.15 -0.02 -0.33 -// -H QIAN880131 -D Weights for coil at the window position of -2 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C CHOP780216 0.873 TANS770110 0.873 QIAN880133 0.871 - CHOP780203 0.861 CHAM830101 0.860 GEIM800108 0.860 - GEIM800111 0.857 QIAN880132 0.847 QIAN880135 0.844 - QIAN880134 0.832 CHOP780210 0.826 CHOP780101 0.824 - PALJ810106 0.809 QIAN880120 -0.801 SUEM840101 -0.823 - PTIO830101 -0.826 QIAN880119 -0.830 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.25 0.12 0.61 0.60 0.18 0.09 -0.12 0.09 0.42 -0.54 - -0.55 0.14 -0.47 -0.29 0.89 0.24 0.16 -0.44 -0.19 -0.45 -// -H QIAN880132 -D Weights for coil at the window position of -1 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880133 0.957 LEVM780106 0.943 PRAM900104 0.932 - LEVM780103 0.931 CHOP780216 0.931 GEIM800111 0.929 - CHOP780203 0.928 CHAM830101 0.925 QIAN880134 0.909 - GEIM800108 0.906 TANS770110 0.903 CHOP780101 0.896 - ISOY800103 0.892 PALJ810106 0.859 CHOP780210 0.852 - QIAN880131 0.847 PALJ810105 0.830 QIAN880135 0.824 - PALJ810115 0.804 ROBB760112 0.800 AURR980109 -0.806 - LIFS790101 -0.806 AVBF000101 -0.809 QIAN880106 -0.813 - ROBB760103 -0.827 PTIO830101 -0.833 QIAN880120 -0.839 - AVBF000102 -0.849 FAUJ880102 -0.849 QIAN880119 -0.858 - SUEM840101 -0.880 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.27 -0.40 0.71 0.54 0.00 -0.08 -0.12 1.14 0.18 -0.74 - -0.54 0.45 -0.76 -0.47 1.40 0.40 -0.10 -0.46 -0.05 -0.86 -// -H QIAN880133 -D Weights for coil at the window position of 0 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C LEVM780106 0.971 QIAN880132 0.957 LEVM780103 0.948 - PRAM900104 0.947 GEIM800111 0.943 CHOP780216 0.939 - QIAN880134 0.938 GEIM800108 0.930 TANS770110 0.920 - CHOP780203 0.915 CHAM830101 0.913 ISOY800103 0.908 - QIAN880135 0.907 CHOP780101 0.897 QIAN880131 0.871 - PALJ810106 0.860 PALJ810105 0.843 MUNV940103 0.836 - GEIM800110 0.822 CHOP780210 0.820 ROBB760112 0.814 - QIAN880121 -0.802 ROBB760103 -0.807 AVBF000101 -0.807 - QIAN880107 -0.809 AVBF000102 -0.823 LIFS790101 -0.848 - QIAN880119 -0.849 FAUJ880102 -0.851 QIAN880120 -0.863 - PTIO830101 -0.864 SUEM840101 -0.879 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.42 -0.23 0.81 0.95 -0.18 -0.01 -0.09 1.24 0.05 -1.17 - -0.69 0.09 -0.86 -0.39 1.77 0.63 0.29 -0.37 -0.41 -1.32 -// -H QIAN880134 -D Weights for coil at the window position of 1 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880135 0.961 QIAN880133 0.938 LEVM780103 0.935 - PRAM900104 0.934 LEVM780106 0.932 GEIM800111 0.919 - QIAN880132 0.909 CHOP780216 0.900 MUNV940105 0.899 - MUNV940104 0.897 ISOY800104 0.893 GEIM800108 0.884 - CHOP780213 0.870 MUNV940103 0.858 GEIM800110 0.853 - CHAM830101 0.841 CHOP780203 0.838 TANS770104 0.837 - QIAN880131 0.832 ISOY800103 0.828 ROBB760104 -0.802 - LIFS790101 -0.804 AVBF000101 -0.822 BLAM930101 -0.836 - QIAN880121 -0.838 QIAN880109 -0.841 QIAN880120 -0.842 - QIAN880108 -0.845 FAUJ880102 -0.852 ROBB760103 -0.855 - PTIO830101 -0.920 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.24 -0.04 0.45 0.65 -0.38 0.01 0.07 0.85 -0.21 -0.65 - -0.80 0.17 -0.71 -0.61 2.27 0.33 0.13 -0.44 -0.49 -0.99 -// -H QIAN880135 -D Weights for coil at the window position of 2 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) (Gin !) -C QIAN880134 0.961 QIAN880133 0.907 LEVM780103 0.906 - PRAM900104 0.903 LEVM780106 0.902 GEIM800111 0.895 - CHOP780216 0.884 GEIM800108 0.877 CHOP780213 0.851 - QIAN880131 0.844 GEIM800110 0.842 QIAN880136 0.838 - ISOY800104 0.837 MUNV940105 0.829 QIAN880132 0.824 - MUNV940103 0.820 MUNV940104 0.819 CHAM830101 0.814 - CHOP780203 0.811 ROBB760103 -0.834 QIAN880108 -0.836 - QIAN880111 -0.878 QIAN880109 -0.884 PTIO830101 -0.899 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.14 0.21 0.35 0.66 -0.09 0.11 0.06 0.36 -0.31 -0.51 - -0.80 -0.14 -0.56 -0.25 1.59 0.32 0.21 -0.17 -0.35 -0.70 -// -H QIAN880136 -D Weights for coil at the window position of 3 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C QIAN880135 0.838 QIAN880112 -0.812 QIAN880108 -0.843 - QIAN880110 -0.890 QIAN880111 -0.900 QIAN880109 -0.927 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.01 -0.13 -0.11 0.78 -0.31 -0.13 0.09 0.14 -0.56 -0.09 - -0.81 -0.43 -0.49 -0.20 1.14 0.13 -0.02 -0.20 0.10 -0.11 -// -H QIAN880137 -D Weights for coil at the window position of 4 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.30 -0.09 -0.12 0.44 0.03 0.24 0.18 -0.12 -0.20 -0.07 - -0.18 0.06 -0.44 0.11 0.77 -0.09 -0.27 -0.09 -0.25 -0.06 -// -H QIAN880138 -D Weights for coil at the window position of 5 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.23 -0.20 0.06 0.34 0.19 0.47 0.28 0.14 -0.22 0.42 - -0.36 -0.15 -0.19 -0.02 0.78 -0.29 -0.30 -0.18 0.07 0.29 -// -H QIAN880139 -D Weights for coil at the window position of 6 (Qian-Sejnowski, 1988) -R PMID:3172241 -A Qian, N. and Sejnowski, T.J. -T Predicting the secondary structure of globular proteins using neural network - models -J J. Mol. Biol. 202, 865-884 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.08 -0.01 -0.06 0.04 0.37 0.48 0.36 -0.02 -0.45 0.09 - 0.24 -0.27 0.16 0.34 0.16 -0.35 -0.04 -0.06 -0.20 0.18 -// -H RACS770101 -D Average reduced distance for C-alpha (Rackovsky-Scheraga, 1977) -R PMID:271950 -A Rackovsky, S. and Scheraga, H.A. -T Hydrophobicity, hydrophilicity, and the radial and orientational - distributions of residues in native proteins -J Proc. Natl. Acad. Sci. USA 74, 5248-5251 (1977) -C MEIH800101 0.973 RACS770102 0.946 MIYS990102 0.921 - MIYS990101 0.920 MEIH800102 0.905 CORJ870108 0.891 - MIYS990103 0.887 MIYS990104 0.884 FASG890101 0.872 - PARJ860101 0.871 KARP850102 0.869 MIYS990105 0.866 - GUYH850102 0.859 GUYH850101 0.853 GUYH850103 0.844 - KARP850101 0.837 VINM940101 0.835 OOBM770103 0.835 - VINM940103 0.829 KRIW790101 0.828 CHOP780203 0.827 - PUNT030101 0.821 FUKS010103 0.819 KRIW790102 0.814 - PRAM900104 0.809 LEVM780103 0.808 PARS000101 0.804 - RACS770103 0.801 CORJ870102 -0.802 SWER830101 -0.803 - GUOD860101 -0.805 NISK800101 -0.805 NADH010103 -0.807 - CASG920101 -0.807 NADH010104 -0.813 CIDH920102 -0.825 - PONP800102 -0.827 ZHOH040103 -0.835 CIDH920101 -0.837 - ROBB790101 -0.839 BEGF750102 -0.840 MEIH800103 -0.845 - RICJ880111 -0.846 BASU050103 -0.848 BASU050101 -0.850 - BASU050102 -0.854 CORJ870104 -0.860 PONP800101 -0.863 - CIDH920104 -0.864 PLIV810101 -0.868 CORJ870103 -0.870 - BIOV880102 -0.875 CORJ870105 -0.876 MANP780101 -0.878 - CORJ870106 -0.879 ROSG850102 -0.880 CIDH920103 -0.881 - PONP930101 -0.886 RADA880108 -0.887 CIDH920105 -0.887 - BIOV880101 -0.893 CORJ870107 -0.898 PONP800107 -0.905 - WERD780101 -0.912 NISK860101 -0.923 MIYS850101 -0.940 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.934 0.962 0.986 0.994 0.900 1.047 0.986 1.015 0.882 0.766 - 0.825 1.040 0.804 0.773 1.047 1.056 1.008 0.848 0.931 0.825 -// -H RACS770102 -D Average reduced distance for side chain (Rackovsky-Scheraga, 1977) -R PMID:271950 -A Rackovsky, S. and Scheraga, H.A. -T Hydrophobicity, hydrophilicity, and the radial and orientational - distributions of residues in native proteins -J Proc. Natl. Acad. Sci. USA 74, 5248-5251 (1977) (Gly 0.080) -C MEIH800102 0.987 MEIH800101 0.963 RACS770101 0.946 - FASG890101 0.935 GUYH850101 0.934 MIYS990102 0.919 - MIYS990101 0.917 MIYS990103 0.908 KRIW790102 0.895 - PUNT030101 0.894 MIYS990105 0.893 MIYS990104 0.892 - RACS770103 0.889 KRIW790101 0.871 CORJ870108 0.863 - GUYH850102 0.853 KARP850102 0.852 GUYH850104 0.849 - VINM940101 0.844 VINM940103 0.839 OOBM770101 0.838 - PARJ860101 0.834 PUNT030102 0.828 OOBM770103 0.828 - ROSM880102 0.824 JANJ780103 0.823 CHOC760102 0.809 - WOLS870101 0.802 NADH010105 -0.800 DESM900101 -0.801 - BASU050102 -0.807 NADH010101 -0.808 BASU050101 -0.813 - NISK800101 -0.818 CIDH920105 -0.830 ZHOH040103 -0.832 - CIDH920103 -0.834 CORJ870101 -0.837 CORJ870104 -0.838 - CORJ870106 -0.839 CORJ870105 -0.839 FAUJ830101 -0.843 - KYTJ820101 -0.844 OLSK800101 -0.845 CASG920101 -0.849 - JANJ790102 -0.851 CORJ870103 -0.852 CIDH920104 -0.854 - JURD980101 -0.855 EISD860103 -0.858 PLIV810101 -0.859 - PONP800103 -0.860 BASU050103 -0.861 PONP800102 -0.864 - MANP780101 -0.865 DESM900102 -0.867 JANJ780102 -0.869 - PONP800101 -0.870 PONP930101 -0.871 CORJ870107 -0.871 - CHOC760103 -0.875 PONP800107 -0.878 NADH010104 -0.883 - NADH010103 -0.893 NADH010102 -0.899 WERD780101 -0.906 - NISK860101 -0.913 MEIH800103 -0.918 BIOV880102 -0.932 - BIOV880101 -0.937 ROSG850102 -0.940 RADA880108 -0.942 - MIYS850101 -0.943 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.941 1.112 1.038 1.071 0.866 1.150 1.100 1.055 0.911 0.742 - 0.798 1.232 0.781 0.723 1.093 1.082 1.043 0.867 1.050 0.817 -// -H RACS770103 -D Side chain orientational preference (Rackovsky-Scheraga, 1977) -R PMID:271950 -A Rackovsky, S. and Scheraga, H.A. -T Hydrophobicity, hydrophilicity, and the radial and orientational - distributions of residues in native proteins -J Proc. Natl. Acad. Sci. USA 74, 5248-5251 (1977) (Gly !) (Ratio of the numbers - of occurrences in two orientations) -C MEIH800102 0.903 RACS770102 0.889 KRIW790102 0.889 - OOBM770101 0.871 MIYS990105 0.852 JANJ780103 0.847 - FASG890101 0.842 MIYS990103 0.840 GUYH850104 0.839 - MEIH800101 0.837 MIYS990104 0.833 VINM940101 0.830 - PUNT030101 0.830 OOBM770103 0.823 GUYH850102 0.821 - GUYH850101 0.816 VINM940104 0.804 RACS770101 0.801 - CORJ870107 -0.808 PONP800102 -0.809 MIYS850101 -0.818 - PONP800103 -0.819 CORJ870103 -0.827 JANJ780102 -0.828 - NADH010104 -0.832 CORJ870101 -0.832 JANJ790102 -0.834 - DESM900101 -0.837 NISK860101 -0.837 WERD780101 -0.846 - CASG920101 -0.846 WARP780101 -0.848 NADH010103 -0.851 - BIOV880101 -0.856 RADA880108 -0.863 DESM900102 -0.868 - NADH010102 -0.876 ROSG850102 -0.901 BIOV880102 -0.906 - MEIH800103 -0.919 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.16 1.72 1.97 2.66 0.50 3.87 2.40 1.63 0.86 0.57 - 0.51 3.90 0.40 0.43 2.04 1.61 1.48 0.75 1.72 0.59 -// -H RACS820101 -D Average relative fractional occurrence in A0(i) (Rackovsky-Scheraga, 1982) -R -A Rackovsky, S. and Scheraga, H.A. -T Differential geometry and polymer conformation. 4. Conformational and - nucleation properties of individual amino acids -J Macromolecules 15, 1340-1346 (1982) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.85 2.02 0.88 1.50 0.90 1.71 1.79 1.54 1.59 0.67 - 1.03 0.88 1.17 0.85 1.47 1.50 1.96 0.83 1.34 0.89 -// -H RACS820102 -D Average relative fractional occurrence in AR(i) (Rackovsky-Scheraga, 1982) -R -A Rackovsky, S. and Scheraga, H.A. -T Differential geometry and polymer conformation. 4. Conformational and - nucleation properties of individual amino acids -J Macromolecules 15, 1340-1346 (1982) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.58 1.14 0.77 0.98 1.04 1.24 1.49 0.66 0.99 1.09 - 1.21 1.27 1.41 1.00 1.46 1.05 0.87 1.23 0.68 0.88 -// -H RACS820103 -D Average relative fractional occurrence in AL(i) (Rackovsky-Scheraga, 1982) -R -A Rackovsky, S. and Scheraga, H.A. -T Differential geometry and polymer conformation. 4. Conformational and - nucleation properties of individual amino acids -J Macromolecules 15, 1340-1346 (1982) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.82 2.60 2.07 2.64 0.00 0.00 2.62 1.63 0.00 2.32 - 0.00 2.86 0.00 0.00 0.00 1.23 2.48 0.00 1.90 1.62 -// -H RACS820104 -D Average relative fractional occurrence in EL(i) (Rackovsky-Scheraga, 1982) -R -A Rackovsky, S. and Scheraga, H.A. -T Differential geometry and polymer conformation. 4. Conformational and - nucleation properties of individual amino acids -J Macromolecules 15, 1340-1346 (1982) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.78 1.75 1.32 1.25 3.14 0.93 0.94 1.13 1.03 1.26 - 0.91 0.85 0.41 1.07 1.73 1.31 1.57 0.98 1.31 1.11 -// -H RACS820105 -D Average relative fractional occurrence in E0(i) (Rackovsky-Scheraga, 1982) -R -A Rackovsky, S. and Scheraga, H.A. -T Differential geometry and polymer conformation. 4. Conformational and - nucleation properties of individual amino acids -J Macromolecules 15, 1340-1346 (1982) -C NAKH900102 -0.839 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.88 0.99 1.02 1.16 1.14 0.93 1.01 0.70 1.87 1.61 - 1.09 0.83 1.71 1.52 0.87 1.14 0.96 1.96 1.68 1.56 -// -H RACS820106 -D Average relative fractional occurrence in ER(i) (Rackovsky-Scheraga, 1982) -R -A Rackovsky, S. and Scheraga, H.A. -T Differential geometry and polymer conformation. 4. Conformational and - nucleation properties of individual amino acids -J Macromolecules 15, 1340-1346 (1982) -C ISOY800108 0.831 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.30 0.90 2.73 1.26 0.72 0.97 1.33 3.09 1.33 0.45 - 0.96 0.71 1.89 1.20 0.83 1.16 0.97 1.58 0.86 0.64 -// -H RACS820107 -D Average relative fractional occurrence in A0(i-1) (Rackovsky-Scheraga, 1982) -R -A Rackovsky, S. and Scheraga, H.A. -T Differential geometry and polymer conformation. 4. Conformational and - nucleation properties of individual amino acids -J Macromolecules 15, 1340-1346 (1982) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.40 1.20 1.24 1.59 2.98 0.50 1.26 1.89 2.71 1.31 - 0.57 0.87 0.00 1.27 0.38 0.92 1.38 1.53 1.79 0.95 -// -H RACS820108 -D Average relative fractional occurrence in AR(i-1) (Rackovsky-Scheraga, 1982) -R -A Rackovsky, S. and Scheraga, H.A. -T Differential geometry and polymer conformation. 4. Conformational and - nucleation properties of individual amino acids -J Macromolecules 15, 1340-1346 (1982) -C KANM800101 0.914 LEVM780101 0.904 PRAM900102 0.904 - ISOY800101 0.904 ROBB760101 0.889 LEVM780104 0.889 - PALJ810102 0.881 GEIM800101 0.880 PALJ810101 0.872 - CHOP780201 0.868 QIAN880106 0.866 MAXF760101 0.860 - KANM800103 0.858 ROBB760103 0.851 GEIM800104 0.851 - TANS770101 0.845 AURR980112 0.840 CRAJ730101 0.839 - QIAN880107 0.831 QIAN880108 0.820 NAGK730101 0.820 - QIAN880105 0.820 AURR980114 0.818 BURA740101 0.809 - AURR980109 0.804 AURR980115 0.802 MUNV940101 -0.859 - MUNV940102 -0.894 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.48 1.02 0.99 1.19 0.86 1.42 1.43 0.46 1.27 1.12 - 1.33 1.36 1.41 1.30 0.25 0.89 0.81 1.27 0.91 0.93 -// -H RACS820109 -D Average relative fractional occurrence in AL(i-1) (Rackovsky-Scheraga, 1982) -R -A Rackovsky, S. and Scheraga, H.A. -T Differential geometry and polymer conformation. 4. Conformational and - nucleation properties of individual amino acids -J Macromolecules 15, 1340-1346 (1982) -C ISOY800108 0.848 MAXF760104 0.844 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.00 0.00 4.14 2.15 0.00 0.00 0.00 6.49 0.00 0.00 - 0.00 0.00 0.00 2.11 1.99 0.00 1.24 0.00 1.90 0.00 -// -H RACS820110 -D Average relative fractional occurrence in EL(i-1) (Rackovsky-Scheraga, 1982) -R -A Rackovsky, S. and Scheraga, H.A. -T Differential geometry and polymer conformation. 4. Conformational and - nucleation properties of individual amino acids -J Macromolecules 15, 1340-1346 (1982) -C MUNV940105 0.833 MUNV940104 0.831 AVBF000102 -0.801 - ROBB760104 -0.818 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.02 1.00 1.31 1.76 1.05 1.05 0.83 2.39 0.40 0.83 - 1.06 0.94 1.33 0.41 2.73 1.18 0.77 1.22 1.09 0.88 -// -H RACS820111 -D Average relative fractional occurrence in E0(i-1) (Rackovsky-Scheraga, 1982) -R -A Rackovsky, S. and Scheraga, H.A. -T Differential geometry and polymer conformation. 4. Conformational and - nucleation properties of individual amino acids -J Macromolecules 15, 1340-1346 (1982) -C TANS770103 0.841 MAXF760102 0.815 ROBB760105 0.803 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.93 1.52 0.92 0.60 1.08 0.94 0.73 0.78 1.08 1.74 - 1.03 1.00 1.31 1.51 1.37 0.97 1.38 1.12 1.65 1.70 -// -H RACS820112 -D Average relative fractional occurrence in ER(i-1) (Rackovsky-Scheraga, 1982) -R -A Rackovsky, S. and Scheraga, H.A. -T Differential geometry and polymer conformation. 4. Conformational and - nucleation properties of individual amino acids -J Macromolecules 15, 1340-1346 (1982) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.99 1.19 1.15 1.18 2.32 1.52 1.36 1.40 1.06 0.81 - 1.26 0.91 1.00 1.25 0.00 1.50 1.18 1.33 1.09 1.01 -// -H RACS820113 -D Value of theta(i) (Rackovsky-Scheraga, 1982) -R -A Rackovsky, S. and Scheraga, H.A. -T Differential geometry and polymer conformation. 4. Conformational and - nucleation properties of individual amino acids -J Macromolecules 15, 1340-1346 (1982) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 17.05 21.25 34.81 19.27 28.84 15.42 20.12 38.14 23.07 16.66 - 10.89 16.46 20.61 16.26 23.94 19.95 18.92 23.36 26.49 17.06 -// -H RACS820114 -D Value of theta(i-1) (Rackovsky-Scheraga, 1982) -R -A Rackovsky, S. and Scheraga, H.A. -T Differential geometry and polymer conformation. 4. Conformational and - nucleation properties of individual amino acids -J Macromolecules 15, 1340-1346 (1982) -C MUNV940102 0.877 ONEK900102 0.855 MUNV940101 0.828 - ROBB760103 -0.806 BLAM930101 -0.862 ONEK900101 -0.880 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 14.53 17.82 13.59 19.78 30.57 22.18 18.19 37.16 22.63 20.28 - 14.30 14.07 20.61 19.61 52.63 18.56 21.09 19.78 26.36 21.87 -// -H RADA880101 -D Transfer free energy from chx to wat (Radzicka-Wolfenden, 1988) -R -A Radzicka, A. and Wolfenden, R. -T Comparing the polarities of the amino acids: Side-chain distribution - coefficients between the vapor phase, cyclohexane, 1-octanol, and neutral - aqueous solution -J Biochemistry 27, 1664-1670 (1988) (Pro missing) -C EISD840101 0.968 WOLR810101 0.939 JACR890101 0.936 - ROSM880105 0.933 WOLR790101 0.933 BLAS910101 0.922 - NADH010101 0.902 RADA880104 0.901 JURD980101 0.893 - EISD860101 0.891 KYTJ820101 0.884 RADA880107 0.881 - FAUJ830101 0.873 JANJ780102 0.855 CHOC760103 0.853 - EISD860103 0.850 NADH010102 0.845 COWR900101 0.840 - OLSK800101 0.840 JANJ790102 0.839 DESM900102 0.828 - BASU050103 0.809 NADH010103 0.809 RADA880108 0.807 - YUTK870101 0.803 WOEC730101 -0.812 CHOC760102 -0.814 - GUYH850101 -0.815 JANJ780103 -0.817 WOLS870101 -0.823 - HOPT810101 -0.829 GUYH850104 -0.831 FAUJ880110 -0.838 - LEVM760101 -0.838 JANJ780101 -0.844 GRAR740102 -0.861 - OOBM770101 -0.863 FAUJ880109 -0.873 PUNT030102 -0.881 - KIDA850101 -0.883 PUNT030101 -0.886 GUYH850105 -0.899 - ROSM880102 -0.917 VHEG790101 -0.925 ENGD860101 -0.932 - PRAM900101 -0.932 KUHL950101 -0.950 ROSM880101 -0.978 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.81 -14.92 -6.64 -8.72 1.28 -5.54 -6.81 0.94 -4.66 4.92 - 4.92 -5.55 2.35 2.98 0. -3.40 -2.57 2.33 -0.14 4.04 -// -H RADA880102 -D Transfer free energy from oct to wat (Radzicka-Wolfenden, 1988) -R -A Radzicka, A. and Wolfenden, R. -T Comparing the polarities of the amino acids: Side-chain distribution - coefficients between the vapor phase, cyclohexane, 1-octanol, and neutral - aqueous solution -J Biochemistry 27, 1664-1670 (1988) (Pro Cys Asp missing) -C NOZY710101 0.917 EISD860101 0.912 MEEJ800102 0.900 - ROSM880105 0.870 CIDH920102 0.862 CIDH920105 0.861 - ZIMJ680105 0.851 FAUJ830101 0.846 PLIV810101 0.845 - TAKK010101 0.830 GUOD860101 0.829 ZHOH040101 0.828 - VENT840101 0.826 BLAS910101 0.826 MIYS850101 0.824 - CORJ870102 0.821 SWER830101 0.820 CIDH920103 0.819 - CIDH920104 0.817 BASU050103 0.815 MEEJ810102 0.813 - ZHOH040103 0.813 BROC820101 0.811 BASU050102 0.809 - PUNT030102 -0.811 MEIH800101 -0.816 VHEG790101 -0.818 - PUNT030101 -0.821 MIYS990102 -0.834 MIYS990101 -0.837 - LEVM760101 -0.838 BULH740101 -0.856 HOPT810101 -0.859 - WOLS870101 -0.873 PARJ860101 -0.883 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.52 -1.32 -0.01 0. 0. -0.07 -0.79 0. 0.95 2.04 - 1.76 0.08 1.32 2.09 0. 0.04 0.27 2.51 1.63 1.18 -// -H RADA880103 -D Transfer free energy from vap to chx (Radzicka-Wolfenden, 1988) -R -A Radzicka, A. and Wolfenden, R. -T Comparing the polarities of the amino acids: Side-chain distribution - coefficients between the vapor phase, cyclohexane, 1-octanol, and neutral - aqueous solution -J Biochemistry 27, 1664-1670 (1988) (Pro missing) -C FAUJ880104 -0.806 CHAM830105 -0.808 HUTJ700102 -0.812 - ROSG850101 -0.814 FAUJ880106 -0.823 MCMT640101 -0.833 - HARY940101 -0.840 GOLD730102 -0.864 BIGC670101 -0.865 - KRIW790103 -0.871 PONJ960101 -0.873 TSAJ990101 -0.875 - TSAJ990102 -0.879 GRAR740103 -0.881 CHOC750101 -0.892 - LEVM760105 -0.893 RADA880106 -0.895 CHAM830106 -0.901 - CHAM820101 -0.912 LEVM760102 -0.913 FAUJ880103 -0.923 - CHOC760101 -0.924 FASG760101 -0.954 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.13 -5. -3.04 -2.23 -2.52 -3.84 -3.43 1.45 -5.61 -2.77 - -2.64 -3.97 -3.83 -3.74 0. -1.66 -2.31 -8.21 -5.97 -2.05 -// -H RADA880104 -D Transfer free energy from chx to oct (Radzicka-Wolfenden, 1988) -R -A Radzicka, A. and Wolfenden, R. -T Comparing the polarities of the amino acids: Side-chain distribution - coefficients between the vapor phase, cyclohexane, 1-octanol, and neutral - aqueous solution -J Biochemistry 27, 1664-1670 (1988) (Pro Cys Asp missing) -C WOLR790101 0.926 RADA880105 0.918 WOLR810101 0.910 - EISD840101 0.908 RADA880101 0.901 RADA880107 0.897 - JACR890101 0.868 JURD980101 0.824 CHOC760103 0.821 - KYTJ820101 0.819 NADH010101 0.819 COWR900101 0.818 - OLSK800101 0.814 ENGD860101 -0.803 PRAM900101 -0.803 - KIDA850101 -0.805 JANJ780101 -0.825 CHOC760102 -0.830 - KUHL950101 -0.847 ROSM880102 -0.855 ROSM880101 -0.863 - GUYH850105 -0.899 FAUJ880109 -0.926 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.29 -13.60 -6.63 0. 0. -5.47 -6.02 0.94 -5.61 2.88 - 3.16 -5.63 1.03 0.89 0. -3.44 -2.84 -0.18 -1.77 2.86 -// -H RADA880105 -D Transfer free energy from vap to oct (Radzicka-Wolfenden, 1988) -R -A Radzicka, A. and Wolfenden, R. -T Comparing the polarities of the amino acids: Side-chain distribution - coefficients between the vapor phase, cyclohexane, 1-octanol, and neutral - aqueous solution -J Biochemistry 27, 1664-1670 (1988) (Pro Cys Asp missing) -C RADA880104 0.918 WOLR790101 0.903 WOLR810101 0.875 - RADA880107 0.846 GUYH850105 -0.809 FAUJ880109 -0.889 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.42 -18.60 -9.67 0. 0. -9.31 -9.45 2.39 -11.22 0.11 - 0.52 -9.60 -2.80 -2.85 0. -5.10 -5.15 -8.39 -7.74 0.81 -// -H RADA880106 -D Accessible surface area (Radzicka-Wolfenden, 1988) -R -A Radzicka, A. and Wolfenden, R. -T Comparing the polarities of the amino acids: Side-chain distribution - coefficients between the vapor phase, cyclohexane, 1-octanol, and neutral - aqueous solution -J Biochemistry 27, 1664-1670 (1988) (Pro missing) -C CHAM830106 0.922 GRAR740103 0.920 KRIW790103 0.883 - CHOC760101 0.875 LEVM760102 0.871 LEVM760105 0.871 - FASG760101 0.870 FAUJ880103 0.869 CHOC750101 0.867 - TSAJ990102 0.864 TSAJ990101 0.861 PONJ960101 0.860 - BIGC670101 0.856 GOLD730102 0.854 CHAM820101 0.847 - HARY940101 0.846 ROSG850101 0.814 RADA880103 -0.895 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 93.7 250.4 146.3 142.6 135.2 177.7 182.9 52.6 188.1 182.2 - 173.7 215.2 197.6 228.6 0. 109.5 142.1 271.6 239.9 157.2 -// -H RADA880107 -D Energy transfer from out to in(95%buried) (Radzicka-Wolfenden, 1988) -R -A Radzicka, A. and Wolfenden, R. -T Comparing the polarities of the amino acids: Side-chain distribution - coefficients between the vapor phase, cyclohexane, 1-octanol, and neutral - aqueous solution -J Biochemistry 27, 1664-1670 (1988) (Pro missing) -C EISD840101 0.927 JANJ790102 0.906 WOLR790101 0.905 - RADA880104 0.897 JACR890101 0.895 WOLR810101 0.890 - RADA880101 0.881 OLSK800101 0.874 CHOC760103 0.870 - JANJ780102 0.856 RADA880105 0.846 JURD980101 0.842 - KYTJ820101 0.828 NADH010102 0.823 EISD860103 0.812 - COWR900101 0.810 EISD860102 -0.837 KIDA850101 -0.837 - OOBM770101 -0.854 JANJ780103 -0.856 KUHL950101 -0.857 - ENGD860101 -0.865 PRAM900101 -0.865 ROSM880101 -0.867 - ROSM880102 -0.894 GUYH850104 -0.896 JANJ780101 -0.917 - CHOC760102 -0.925 GUYH850105 -0.953 FAUJ880109 -0.957 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.29 -2.71 -1.18 -1.02 0. -1.53 -0.90 -0.34 -0.94 0.24 - -0.12 -2.05 -0.24 0. 0. -0.75 -0.71 -0.59 -1.02 0.09 -// -H RADA880108 -D Mean polarity (Radzicka-Wolfenden, 1988) -R -A Radzicka, A. and Wolfenden, R. -T Comparing the polarities of the amino acids: Side-chain distribution - coefficients between the vapor phase, cyclohexane, 1-octanol, and neutral - aqueous solution -J Biochemistry 27, 1664-1670 (1988) (Pro missing) -C BIOV880101 0.981 ROSG850102 0.967 MIYS850101 0.950 - NISK860101 0.950 BIOV880102 0.942 PONP800102 0.938 - PONP800103 0.934 PONP800101 0.934 FAUJ830101 0.932 - WERD780101 0.930 BASU050103 0.926 NADH010103 0.919 - MEIH800103 0.916 NADH010104 0.915 CIDH920104 0.914 - NADH010102 0.911 PLIV810101 0.906 ZHOH040103 0.904 - CASG920101 0.903 NISK800101 0.902 MANP780101 0.900 - CIDH920105 0.898 CORJ870101 0.895 PONP930101 0.891 - CIDH920103 0.891 CORJ870107 0.889 PONP800108 0.889 - DESM900102 0.881 CORJ870104 0.880 CORJ870103 0.876 - EISD860103 0.873 BASU050102 0.870 JANJ780102 0.869 - BASU050101 0.867 ROBB790101 0.867 CORJ870106 0.863 - ROSM880105 0.861 CIDH920101 0.858 JURD980101 0.857 - CORJ870105 0.854 JANJ790102 0.853 NADH010105 0.845 - EISD860101 0.844 KYTJ820101 0.842 NADH010101 0.838 - PONP800106 0.835 CIDH920102 0.833 CHOC760103 0.830 - BLAS910101 0.826 SWER830101 0.826 JANJ790101 0.824 - CORJ870102 0.823 EISD840101 0.817 GUOD860101 0.812 - DESM900101 0.812 RADA880101 0.807 MEEJ810101 0.804 - PONP800107 0.800 KARP850101 -0.804 JANJ780103 -0.805 - FUKS010102 -0.815 LEVM760101 -0.824 WOEC730101 -0.825 - ROSM880101 -0.831 HOPT810101 -0.831 KUHL950101 -0.839 - FUKS010103 -0.840 WOLS870101 -0.840 VINM940102 -0.846 - GUYH850104 -0.847 KRIW710101 -0.847 FUKS010104 -0.851 - KRIW790102 -0.856 ROSM880102 -0.861 VINM940103 -0.862 - RACS770103 -0.863 OOBM770101 -0.864 PARJ860101 -0.865 - PUNT030102 -0.869 GUYH850103 -0.870 KIDA850101 -0.875 - OOBM770103 -0.878 KARP850102 -0.879 PUNT030101 -0.884 - RACS770101 -0.887 CORJ870108 -0.893 KRIW790101 -0.897 - GRAR740102 -0.899 GUYH850102 -0.902 VINM940101 -0.906 - MIYS990101 -0.932 MIYS990102 -0.934 MEIH800101 -0.940 - RACS770102 -0.942 MIYS990104 -0.943 GUYH850101 -0.948 - MIYS990105 -0.950 MIYS990103 -0.950 MEIH800102 -0.953 - FASG890101 -0.977 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.06 -0.84 -0.48 -0.80 1.36 -0.73 -0.77 -0.41 0.49 1.31 - 1.21 -1.18 1.27 1.27 0. -0.50 -0.27 0.88 0.33 1.09 -// -H RICJ880101 -D Relative preference value at N" (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C RICJ880102 1.000 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.7 0.4 1.2 1.4 0.6 1. 1. 1.6 1.2 0.9 - 0.9 1. 0.3 1.2 0.7 1.6 0.3 1.1 1.9 0.7 -// -H RICJ880102 -D Relative preference value at N' (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C RICJ880101 1.000 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.7 0.4 1.2 1.4 0.6 1. 1. 1.6 1.2 0.9 - 0.9 1. 0.3 1.2 0.7 1.6 0.3 1.1 1.9 0.7 -// -H RICJ880103 -D Relative preference value at N-cap (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.5 0.4 3.5 2.1 0.6 0.4 0.4 1.8 1.1 0.2 - 0.2 0.7 0.8 0.2 0.8 2.3 1.6 0.3 0.8 0.1 -// -H RICJ880104 -D Relative preference value at N1 (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.2 0.7 0.7 0.8 0.8 0.7 2.2 0.3 0.7 0.9 - 0.9 0.6 0.3 0.5 2.6 0.7 0.8 2.1 1.8 1.1 -// -H RICJ880105 -D Relative preference value at N2 (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.6 0.9 0.7 2.6 1.2 0.8 2. 0.9 0.7 0.7 - 0.3 1. 1. 0.9 0.5 0.8 0.7 1.7 0.4 0.6 -// -H RICJ880106 -D Relative preference value at N3 (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C FAUJ880112 0.849 AURR980107 0.800 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1. 0.4 0.7 2.2 0.6 1.5 3.3 0.6 0.7 0.4 - 0.6 0.8 1. 0.6 0.4 0.4 1. 1.4 1.2 1.1 -// -H RICJ880107 -D Relative preference value at N4 (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C CHOP780210 -0.818 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.1 1.5 0. 0.3 1.1 1.3 0.5 0.4 1.5 1.1 - 2.6 0.8 1.7 1.9 0.1 0.4 0.5 3.1 0.6 1.5 -// -H RICJ880108 -D Relative preference value at N5 (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.4 1.2 1.2 0.6 1.6 1.4 0.9 0.6 0.9 0.9 - 1.1 1.9 1.7 1. 0.3 1.1 0.6 1.4 0.2 0.8 -// -H RICJ880109 -D Relative preference value at Mid (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C QIAN880106 0.834 ROBB760103 0.831 KANM800103 0.829 - AURR980109 0.828 AURR980113 0.808 CHAM830101 -0.826 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.8 1.3 0.9 1. 0.7 1.3 0.8 0.5 1. 1.2 - 1.2 1.1 1.5 1.3 0.3 0.6 1. 1.5 0.8 1.2 -// -H RICJ880110 -D Relative preference value at C5 (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.8 1. 0.6 0.7 0. 1. 1.1 0.5 2.4 1.3 - 1.2 1.4 2.7 1.9 0.3 0.5 0.5 1.1 1.3 0.4 -// -H RICJ880111 -D Relative preference value at C4 (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C MEIH800101 -0.802 CHOP780210 -0.804 BHAR880101 -0.813 - RACS770101 -0.846 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.3 0.8 0.6 0.5 0.7 0.2 0.7 0.5 1.9 1.6 - 1.4 1. 2.8 2.9 0. 0.5 0.6 2.1 0.8 1.4 -// -H RICJ880112 -D Relative preference value at C3 (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.7 0.8 0.8 0.6 0.2 1.3 1.6 0.1 1.1 1.4 - 1.9 2.2 1. 1.8 0. 0.6 0.7 0.4 1.1 1.3 -// -H RICJ880113 -D Relative preference value at C2 (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.4 2.1 0.9 0.7 1.2 1.6 1.7 0.2 1.8 0.4 - 0.8 1.9 1.3 0.3 0.2 1.6 0.9 0.4 0.3 0.7 -// -H RICJ880114 -D Relative preference value at C1 (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.1 1. 1.2 0.4 1.6 2.1 0.8 0.2 3.4 0.7 - 0.7 2. 1. 0.7 0. 1.7 1. 0. 1.2 0.7 -// -H RICJ880115 -D Relative preference value at C-cap (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C AURR980117 0.921 MAXF760104 0.919 ISOY800108 0.889 - TANS770107 0.807 MAXF760105 0.802 LEVM760103 -0.829 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.8 0.9 1.6 0.7 0.4 0.9 0.3 3.9 1.3 0.7 - 0.7 1.3 0.8 0.5 0.7 0.8 0.3 0. 0.8 0.2 -// -H RICJ880116 -D Relative preference value at C' (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1. 1.4 0.9 1.4 0.8 1.4 0.8 1.2 1.2 1.1 - 0.9 1.2 0.8 0.1 1.9 0.7 0.8 0.4 0.9 0.6 -// -H RICJ880117 -D Relative preference value at C" (Richardson-Richardson, 1988) -R PMID:3381086 -A Richardson, J.S. and Richardson, D.C. -T Amino acid preferences for specific locations at the ends of alpha helices -J Science 240, 1648-1652 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.7 1.1 1.5 1.4 0.4 1.1 0.7 0.6 1. 0.7 - 0.5 1.3 0. 1.2 1.5 0.9 2.1 2.7 0.5 1. -// -H ROBB760101 -D Information measure for alpha-helix (Robson-Suzuki, 1976) -R PMID:1003471 -A Robson, B. and Suzuki, E. -T Conformational properties of amino acid residues in globular proteins -J J. Mol. Biol. 107, 327-356 (1976) -C CHOP780201 0.969 ISOY800101 0.957 MAXF760101 0.956 - TANS770101 0.948 PALJ810102 0.946 KANM800101 0.945 - PRAM900102 0.916 LEVM780101 0.916 PALJ810101 0.914 - BURA740101 0.912 LEVM780104 0.911 NAGK730101 0.910 - QIAN880106 0.904 GEIM800101 0.897 RACS820108 0.889 - KANM800103 0.886 CRAJ730101 0.875 QIAN880105 0.874 - QIAN880107 0.867 GEIM800104 0.855 AURR980108 0.814 - AURR980109 0.810 ROBB760103 0.807 AURR980112 0.806 - PALJ810109 0.805 MUNV940101 -0.822 MUNV940102 -0.827 - CHAM830101 -0.828 NAGK730103 -0.861 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.5 -0.9 -5.1 0.5 -1.3 1.0 7.8 -8.6 1.2 0.6 - 3.2 2.3 5.3 1.6 -7.7 -3.9 -2.6 1.2 -4.5 1.4 -// -H ROBB760102 -D Information measure for N-terminal helix (Robson-Suzuki, 1976) -R PMID:1003471 -A Robson, B. and Suzuki, E. -T Conformational properties of amino acid residues in globular proteins -J J. Mol. Biol. 107, 327-356 (1976) -C CHOP780204 0.911 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.3 -5.2 0.3 7.4 0.8 -0.7 10.3 -5.2 -2.8 -4.0 - -2.1 -4.1 -3.5 -1.1 8.1 -3.5 2.3 -0.9 -3.7 -4.4 -// -H ROBB760103 -D Information measure for middle helix (Robson-Suzuki, 1976) -R PMID:1003471 -A Robson, B. and Suzuki, E. -T Conformational properties of amino acid residues in globular proteins -J J. Mol. Biol. 107, 327-356 (1976) -C QIAN880108 0.914 PTIO830101 0.903 QIAN880107 0.889 - KANM800103 0.887 BLAM930101 0.883 ONEK900101 0.878 - QIAN880109 0.868 AURR980109 0.857 QIAN880106 0.854 - BEGF750101 0.852 RACS820108 0.851 ISOY800101 0.841 - AURR980113 0.838 AURR980108 0.835 RICJ880109 0.831 - QIAN880105 0.811 ROBB760101 0.807 QIAN880110 0.807 - CHOP780201 0.806 FAUJ880113 0.802 AURR980114 0.801 - GEIM800108 -0.802 RACS820114 -0.806 QIAN880133 -0.807 - QIAN880132 -0.827 ISOY800104 -0.830 QIAN880135 -0.834 - PRAM900104 -0.840 CHOP780216 -0.841 LEVM780103 -0.843 - GEIM800111 -0.843 QIAN880134 -0.855 ONEK900102 -0.867 - CHAM830101 -0.878 MUNV940102 -0.913 MUNV940101 -0.918 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.7 0.3 -6.1 -3.1 -4.9 0.6 2.2 -6.8 -1.0 3.2 - 5.5 0.5 7.2 2.8 -22.8 -3.0 -4.0 4.0 -4.6 2.5 -// -H ROBB760104 -D Information measure for C-terminal helix (Robson-Suzuki, 1976) -R PMID:1003471 -A Robson, B. and Suzuki, E. -T Conformational properties of amino acid residues in globular proteins -J J. Mol. Biol. 107, 327-356 (1976) -C QIAN880108 0.879 BLAM930101 0.878 QIAN880109 0.871 - ONEK900101 0.844 CHOP780205 0.841 BUNA790101 0.823 - PTIO830101 0.817 QIAN880110 0.806 QIAN880134 -0.802 - MUNV940102 -0.803 ISOY800104 -0.817 RACS820110 -0.818 - MUNV940101 -0.831 MUNV940104 -0.840 FINA910102 -0.844 - MUNV940105 -0.859 ONEK900102 -0.861 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.3 1.4 -3.3 -4.4 6.1 2.7 2.5 -8.3 5.9 -0.5 - 0.1 7.3 3.5 1.6 -24.4 -1.9 -3.7 -0.9 -0.6 2.3 -// -H ROBB760105 -D Information measure for extended (Robson-Suzuki, 1976) -R PMID:1003471 -A Robson, B. and Suzuki, E. -T Conformational properties of amino acid residues in globular proteins -J J. Mol. Biol. 107, 327-356 (1976) -C ROBB760106 0.949 KANM800102 0.898 KANM800104 0.885 - CHOP780202 0.885 PTIO830102 0.878 GEIM800105 0.877 - TANS770103 0.871 PALJ810103 0.869 LIFS790101 0.867 - QIAN880120 0.860 QIAN880119 0.859 BASU050101 0.853 - ISOY800102 0.847 LEVM780105 0.842 BASU050103 0.839 - GEIM800107 0.836 PALJ810104 0.835 QIAN880121 0.834 - PONP930101 0.829 PONP800102 0.828 PONP800101 0.823 - PONP800103 0.823 BURA740102 0.821 PONP800108 0.820 - NAGK730102 0.815 CORJ870101 0.809 MANP780101 0.805 - PALJ810110 0.804 CORJ870104 0.803 RACS820111 0.803 - CORJ870107 0.800 CORJ870108 -0.811 MUNV940103 -0.832 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -2.3 0.4 -4.1 -4.4 4.4 1.2 -5.0 -4.2 -2.5 6.7 - 2.3 -3.3 2.3 2.6 -1.8 -1.7 1.3 -1.0 4.0 6.8 -// -H ROBB760106 -D Information measure for pleated-sheet (Robson-Suzuki, 1976) -R PMID:1003471 -A Robson, B. and Suzuki, E. -T Conformational properties of amino acid residues in globular proteins -J J. Mol. Biol. 107, 327-356 (1976) -C ROBB760105 0.949 KANM800102 0.938 CHOP780202 0.931 - QIAN880120 0.908 QIAN880121 0.907 LIFS790101 0.906 - GEIM800107 0.899 QIAN880119 0.897 PALJ810104 0.894 - NAGK730102 0.887 PALJ810103 0.886 PTIO830102 0.882 - KANM800104 0.877 LEVM780105 0.869 PONP930101 0.866 - CRAJ730102 0.865 GEIM800105 0.856 BASU050101 0.851 - CHOP780208 0.846 BASU050103 0.840 GEIM800106 0.838 - PALJ810110 0.836 AVBF000101 0.834 CORJ870101 0.829 - PONP800101 0.829 LIFS790103 0.827 MANP780101 0.824 - PONP800102 0.822 CORJ870107 0.819 PONP800103 0.812 - NISK860101 0.810 BEGF750102 0.809 PONP800108 0.808 - CORJ870104 0.808 MIYS990104 -0.815 GEIM800110 -0.819 - CORJ870108 -0.820 MIYS990103 -0.836 MUNV940103 -0.888 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -2.7 0.4 -4.2 -4.4 3.7 0.8 -8.1 -3.9 -3.0 7.7 - 3.7 -2.9 3.7 3.0 -6.6 -2.4 1.7 0.3 3.3 7.1 -// -H ROBB760107 -D Information measure for extended without H-bond (Robson-Suzuki, 1976) -R PMID:1003471 -A Robson, B. and Suzuki, E. -T Conformational properties of amino acid residues in globular proteins -J J. Mol. Biol. 107, 327-356 (1976) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.0 1.1 -2.0 -2.6 5.4 2.4 3.1 -3.4 0.8 -0.1 - -3.7 -3.1 -2.1 0.7 7.4 1.3 0.0 -3.4 4.8 2.7 -// -H ROBB760108 -D Information measure for turn (Robson-Suzuki, 1976) -R PMID:1003471 -A Robson, B. and Suzuki, E. -T Conformational properties of amino acid residues in globular proteins -J J. Mol. Biol. 107, 327-356 (1976) -C ROBB760113 0.994 ROBB760110 0.960 BEGF750103 0.922 - CRAJ730103 0.912 CHOP780101 0.887 PALJ810106 0.882 - TANS770110 0.839 CHAM830101 0.812 BEGF750101 -0.819 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -5.0 2.1 4.2 3.1 4.4 0.4 -4.7 5.7 -0.3 -4.6 - -5.6 1.0 -4.8 -1.8 2.6 2.6 0.3 3.4 2.9 -6.0 -// -H ROBB760109 -D Information measure for N-terminal turn (Robson-Suzuki, 1976) -R PMID:1003471 -A Robson, B. and Suzuki, E. -T Conformational properties of amino acid residues in globular proteins -J J. Mol. Biol. 107, 327-356 (1976) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -3.3 0.0 5.4 3.9 -0.3 -0.4 -1.8 -1.2 3.0 -0.5 - -2.3 -1.2 -4.3 0.8 6.5 1.8 -0.7 -0.8 3.1 -3.5 -// -H ROBB760110 -D Information measure for middle turn (Robson-Suzuki, 1976) -R PMID:1003471 -A Robson, B. and Suzuki, E. -T Conformational properties of amino acid residues in globular proteins -J J. Mol. Biol. 107, 327-356 (1976) -C ROBB760108 0.960 ROBB760113 0.957 BEGF750103 0.903 - CRAJ730103 0.887 PALJ810106 0.864 CHOP780101 0.863 - TANS770110 0.805 CHAM830101 0.804 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -4.7 2.0 3.9 1.9 6.2 -2.0 -4.2 5.7 -2.6 -7.0 - -6.2 2.8 -4.8 -3.7 3.6 2.1 0.6 3.3 3.8 -6.2 -// -H ROBB760111 -D Information measure for C-terminal turn (Robson-Suzuki, 1976) -R PMID:1003471 -A Robson, B. and Suzuki, E. -T Conformational properties of amino acid residues in globular proteins -J J. Mol. Biol. 107, 327-356 (1976) -C CHOP780215 0.825 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -3.7 1.0 -0.6 -0.6 4.0 3.4 -4.3 5.9 -0.8 -0.5 - -2.8 1.3 -1.6 1.6 -6.0 1.5 1.2 6.5 1.3 -4.6 -// -H ROBB760112 -D Information measure for coil (Robson-Suzuki, 1976) -R PMID:1003471 -A Robson, B. and Suzuki, E. -T Conformational properties of amino acid residues in globular proteins -J J. Mol. Biol. 107, 327-356 (1976) -C PALJ810115 0.885 CHOP780211 0.841 QIAN880133 0.814 - ISOY800103 0.807 QIAN880132 0.800 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -2.5 -1.2 4.6 0.0 -4.7 -0.5 -4.4 4.9 1.6 -3.3 - -2.0 -0.8 -4.1 -4.1 5.8 2.5 1.7 1.2 -0.6 -3.5 -// -H ROBB760113 -D Information measure for loop (Robson-Suzuki, 1976) -R PMID:1003471 -A Robson, B. and Suzuki, E. -T Conformational properties of amino acid residues in globular proteins -J J. Mol. Biol. 107, 327-356 (1976) -C ROBB760108 0.994 ROBB760110 0.957 BEGF750103 0.924 - CRAJ730103 0.916 CHOP780101 0.907 PALJ810106 0.895 - TANS770110 0.853 CHAM830101 0.841 NAGK730103 0.811 - CHOP780201 -0.811 BEGF750101 -0.826 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -5.1 2.6 4.7 3.1 3.8 0.2 -5.2 5.6 -0.9 -4.5 - -5.4 1.0 -5.3 -2.4 3.5 3.2 0.0 2.9 3.2 -6.3 -// -H ROBB790101 -D Hydration free energy (Robson-Osguthorpe, 1979) -R PMID:513136 -A Robson, B. and Osguthorpe, D.J. -T Refined models for computer simulation of protein folding: Applications to - the study of conserved secondary structure and flexible hinge points during - the folding of pancreatic trypsin inhibitor -J J. Mol. Biol. 132, 19-51 (1979) (Gly 0.67) -C CIDH920105 0.921 NISK860101 0.912 CIDH920104 0.903 - BASU050102 0.897 CIDH920102 0.896 MIYS850101 0.895 - BIOV880101 0.890 CIDH920103 0.884 PLIV810101 0.875 - ZHOH040101 0.872 WERD780101 0.872 ZHOH040103 0.872 - FAUJ830101 0.868 RADA880108 0.867 MEEJ810101 0.861 - PONP930101 0.858 CASG920101 0.850 BASU050103 0.849 - ROSG850102 0.846 CIDH920101 0.846 BASU050101 0.845 - CORJ870102 0.835 SWER830101 0.835 MANP780101 0.834 - CORJ870106 0.834 CORJ870107 0.832 PONP800108 0.831 - NISK800101 0.830 CORJ870105 0.827 PONP800101 0.822 - MEEJ810102 0.821 BIOV880102 0.821 CORJ870101 0.819 - GUOD860101 0.815 ROSM880104 0.807 MEEJ800102 0.807 - PONP800102 0.807 CORJ870104 0.807 CORJ870103 0.804 - LEVM760106 0.804 MEIH800103 0.801 BULH740101 -0.813 - PARS000101 -0.819 CORJ870108 -0.829 WOLS870101 -0.831 - GRAR740102 -0.832 RACS770101 -0.839 MIYS990103 -0.854 - VINM940101 -0.858 FASG890101 -0.860 GUYH850102 -0.862 - FUKS010103 -0.865 VINM940102 -0.866 MEIH800101 -0.868 - MIYS990104 -0.877 MIYS990101 -0.883 MIYS990102 -0.885 - MIYS990105 -0.885 PARJ860101 -0.893 OOBM770103 -0.909 - GUYH850103 -0.999 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -1.0 0.3 -0.7 -1.2 2.1 -0.1 -0.7 0.3 1.1 4.0 - 2.0 -0.9 1.8 2.8 0.4 -1.2 -0.5 3.0 2.1 1.4 -// -H ROSG850101 -D Mean area buried on transfer (Rose et al., 1985) -R PMID:4023714 -A Rose, G.D., Geselowitz, A.R., Lesser, G.J., Lee, R.H. and Zehfus, M.H. -T Hydrophobicity of amino acid residues in globular proteins -J Science 229, 834-838 (1985) -C ZHOH040102 0.930 GRAR740103 0.922 KRIW790103 0.920 - CHAM820101 0.917 TSAJ990101 0.914 BIGC670101 0.910 - GOLD730102 0.909 TSAJ990102 0.909 CHOC750101 0.908 - ZHOH040101 0.904 LEVM760106 0.896 FAUJ880103 0.892 - HARY940101 0.869 CIDH920102 0.866 PONJ960101 0.862 - MCMT640101 0.857 LEVM760107 0.852 CHOC760101 0.842 - FASG760101 0.838 NOZY710101 0.834 CIDH920101 0.831 - RADA880106 0.814 PARS000101 -0.805 KARP850101 -0.807 - VINM940102 -0.810 RADA880103 -0.814 WEBA780101 -0.817 - FUKS010103 -0.819 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 86.6 162.2 103.3 97.8 132.3 119.2 113.9 62.9 155.8 158.0 - 164.1 115.5 172.9 194.1 92.9 85.6 106.5 224.6 177.7 141.0 -// -H ROSG850102 -D Mean fractional area loss (Rose et al., 1985) -R PMID:4023714 -A Rose, G.D., Geselowitz, A.R., Lesser, G.J., Lee, R.H. and Zehfus, M.H. -T Hydrophobicity of amino acid residues in globular proteins -J Science 229, 834-838 (1985) -C BIOV880101 0.981 RADA880108 0.967 NISK860101 0.962 - BIOV880102 0.960 NADH010103 0.958 NADH010104 0.953 - CASG920101 0.952 PONP800102 0.949 MEIH800103 0.948 - NADH010102 0.948 CORJ870101 0.948 PONP800103 0.947 - WERD780101 0.943 NISK800101 0.942 PONP800101 0.938 - MIYS850101 0.937 PONP930101 0.928 PONP800108 0.919 - DESM900102 0.914 JANJ780102 0.909 FAUJ830101 0.904 - MANP780101 0.903 BASU050103 0.903 ZHOH040103 0.903 - CORJ870107 0.898 CIDH920104 0.896 JANJ790102 0.892 - CORJ870103 0.883 CORJ870106 0.878 BASU050102 0.870 - BAEK050101 0.868 DESM900101 0.866 NADH010105 0.865 - CORJ870105 0.864 CORJ870104 0.860 CIDH920105 0.858 - JANJ790101 0.857 JURD980101 0.854 CHOC760103 0.851 - BASU050101 0.849 CIDH920103 0.846 EISD860103 0.846 - ROBB790101 0.846 PLIV810101 0.841 KYTJ820101 0.841 - ROSM880105 0.838 NADH010101 0.833 WARP780101 0.823 - PONP800106 0.807 EISD840101 0.806 PONP800107 0.803 - WOEC730101 -0.804 FUKS010103 -0.808 VINM940104 -0.809 - CHOC760102 -0.819 PARS000101 -0.820 ROSM880102 -0.822 - PARJ860101 -0.823 HOPT810101 -0.825 JANJ780101 -0.836 - GUYH850103 -0.844 KIDA850101 -0.849 VINM940102 -0.849 - KRIW710101 -0.852 PUNT030102 -0.869 FUKS010104 -0.877 - JANJ780103 -0.879 GRAR740102 -0.880 RACS770101 -0.880 - PUNT030101 -0.883 CORJ870108 -0.890 GUYH850104 -0.891 - KARP850102 -0.897 VINM940103 -0.901 RACS770103 -0.901 - OOBM770101 -0.903 MIYS990101 -0.913 MIYS990102 -0.916 - OOBM770103 -0.916 KRIW790102 -0.922 GUYH850102 -0.925 - GUYH850101 -0.929 MEIH800101 -0.930 KRIW790101 -0.935 - RACS770102 -0.940 VINM940101 -0.943 MEIH800102 -0.959 - MIYS990104 -0.962 MIYS990103 -0.966 MIYS990105 -0.968 - FASG890101 -0.976 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.74 0.64 0.63 0.62 0.91 0.62 0.62 0.72 0.78 0.88 - 0.85 0.52 0.85 0.88 0.64 0.66 0.70 0.85 0.76 0.86 -// -H ROSM880101 -D Side chain hydropathy, uncorrected for solvation (Roseman, 1988) -R PMID:3398047 -A Roseman, M.A. -T Hydrophilicity of polar amino acid side-chains is markedly reduced by - flanking peptide bonds -J J. Mol. Biol. 200, 513-522 (1988) -C KUHL950101 0.962 ROSM880102 0.938 KIDA850101 0.933 - PRAM900101 0.917 ENGD860101 0.917 FAUJ880110 0.888 - GRAR740102 0.887 PUNT030101 0.884 VHEG790101 0.883 - LEVM760101 0.876 WOLS870101 0.866 PUNT030102 0.864 - OOBM770101 0.854 GUYH850105 0.849 HOPT810101 0.848 - FAUJ880109 0.846 WOEC730101 0.844 JANJ780101 0.822 - GUYH850104 0.814 JANJ780103 0.810 GUYH850101 0.803 - PARJ860101 0.803 BASU050103 -0.804 OLSK800101 -0.806 - NAKH900110 -0.812 DESM900102 -0.812 WARP780101 -0.816 - CHOC760103 -0.819 BIOV880102 -0.824 JANJ790102 -0.824 - CIDH920104 -0.828 BIOV880101 -0.830 NADH010102 -0.830 - RADA880108 -0.831 PLIV810101 -0.834 JANJ780102 -0.835 - KYTJ820101 -0.845 COWR900101 -0.849 JURD980101 -0.851 - RADA880104 -0.863 NADH010101 -0.866 RADA880107 -0.867 - EISD860103 -0.871 WOLR810101 -0.884 WOLR790101 -0.887 - JACR890101 -0.892 FAUJ830101 -0.907 EISD860101 -0.917 - BLAS910101 -0.940 EISD840101 -0.947 ROSM880105 -0.951 - RADA880101 -0.978 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.67 12.1 7.23 8.72 -0.34 6.39 7.35 0.00 3.82 -3.02 - -3.02 6.13 -1.30 -3.24 -1.75 4.35 3.86 -2.86 0.98 -2.18 -// -H ROSM880102 -D Side chain hydropathy, corrected for solvation (Roseman, 1988) -R PMID:3398047 -A Roseman, M.A. -T Hydrophilicity of polar amino acid side-chains is markedly reduced by - flanking peptide bonds -J J. Mol. Biol. 200, 513-522 (1988) -C ROSM880101 0.938 KUHL950101 0.922 KIDA850101 0.920 - PRAM900101 0.892 ENGD860101 0.891 WOLS870101 0.877 - GUYH850105 0.874 GRAR740102 0.870 OOBM770101 0.867 - PUNT030101 0.861 MEIH800102 0.859 GUYH850104 0.856 - JANJ780101 0.853 PUNT030102 0.851 CHOC760102 0.845 - FASG890101 0.839 JANJ780103 0.838 GUYH850101 0.837 - VHEG790101 0.828 FAUJ880109 0.824 RACS770102 0.824 - LEVM760101 0.823 MIYS990101 0.819 MIYS990102 0.818 - WOEC730101 0.801 PARJ860101 0.801 WARP780101 -0.801 - BASU050103 -0.814 DESM900102 -0.816 ROSG850102 -0.822 - MIYS850101 -0.825 GUOD860101 -0.829 WOLR810101 -0.829 - MEIH800103 -0.829 CIDH920104 -0.831 WOLR790101 -0.836 - JACR890101 -0.837 BIOV880102 -0.837 NADH010104 -0.839 - OLSK800101 -0.847 BIOV880101 -0.854 RADA880104 -0.855 - NADH010103 -0.857 RADA880108 -0.861 PLIV810101 -0.864 - JANJ790102 -0.866 EISD860101 -0.868 CHOC760103 -0.869 - NADH010101 -0.870 JANJ780102 -0.870 ROSM880105 -0.871 - KYTJ820101 -0.878 NADH010102 -0.881 BLAS910101 -0.884 - JURD980101 -0.894 RADA880107 -0.894 COWR900101 -0.897 - RADA880101 -0.917 EISD840101 -0.925 FAUJ830101 -0.927 - EISD860103 -0.943 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.67 3.89 2.27 1.57 -2.00 2.12 1.78 0.00 1.09 -3.02 - -3.02 2.46 -1.67 -3.24 -1.75 0.10 -0.42 -2.86 0.98 -2.18 -// -H ROSM880103 -D Loss of Side chain hydropathy by helix formation (Roseman, 1988) -R PMID:3398047 -A Roseman, M.A. -T Hydrophilicity of polar amino acid side-chains is markedly reduced by - flanking peptide bonds -J J. Mol. Biol. 200, 513-522 (1988) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.4 0.3 0.9 0.8 0.5 0.7 1.3 0.0 1.0 0.4 - 0.6 0.4 0.3 0.7 0.9 0.4 0.4 0.6 1.2 0.4 -// -H SIMZ760101 -D Transfer free energy (Simon, 1976), Cited by Charton-Charton (1982) -R -A Simon, Z. -T -J Quantum Biochemistry and Specific Interactions, Abacus Press, Tunbridge - Wells, Kent, England (1976) Cited by Charton-Charton (1982) -C ARGP820101 0.967 JOND750101 0.966 GOLD730101 0.939 - TAKK010101 0.936 MEEJ800102 0.861 ROSM880104 0.855 - LEVM760106 0.848 CIDH920105 0.837 MEEJ810101 0.836 - CIDH920102 0.832 ZIMJ680101 0.821 BULH740102 0.815 - LAWE840101 0.815 ZHOH040102 0.814 ZIMJ680102 0.810 - ZHOH040101 0.808 MEEJ810102 0.808 NOZY710101 0.807 - VENT840101 0.806 ZIMJ680105 0.805 PLIV810101 0.805 - PARJ860101 -0.825 WOLS870101 -0.830 BULH740101 -0.894 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.73 0.73 -0.01 0.54 0.70 -0.10 0.55 0.00 1.10 2.97 - 2.49 1.50 1.30 2.65 2.60 0.04 0.44 3.00 2.97 1.69 -// -H SNEP660101 -D Principal component I (Sneath, 1966) -R PMID:4291386 -A Sneath, P.H.A. -T Relations between chemical structure and biological activity in peptides -J J. Theor. Biol. 12, 157-195 (1966) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.239 0.211 0.249 0.171 0.220 0.260 0.187 0.160 0.205 0.273 - 0.281 0.228 0.253 0.234 0.165 0.236 0.213 0.183 0.193 0.255 -// -H SNEP660102 -D Principal component II (Sneath, 1966) -R PMID:4291386 -A Sneath, P.H.A. -T Relations between chemical structure and biological activity in peptides -J J. Theor. Biol. 12, 157-195 (1966) -C FAUJ880110 -0.804 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.330 -0.176 -0.233 -0.371 0.074 -0.254 -0.409 0.370 -0.078 0.149 - 0.129 -0.075 -0.092 -0.011 0.370 0.022 0.136 -0.011 -0.138 0.245 -// -H SNEP660103 -D Principal component III (Sneath, 1966) -R PMID:4291386 -A Sneath, P.H.A. -T Relations between chemical structure and biological activity in peptides -J J. Theor. Biol. 12, 157-195 (1966) -C LEVM760107 0.818 CHAM820101 0.808 ZASB820101 0.804 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.110 0.079 -0.136 -0.285 -0.184 -0.067 -0.246 -0.073 0.320 0.001 - -0.008 0.049 -0.041 0.438 -0.016 -0.153 -0.208 0.493 0.381 -0.155 -// -H SNEP660104 -D Principal component IV (Sneath, 1966) -R PMID:4291386 -A Sneath, P.H.A. -T Relations between chemical structure and biological activity in peptides -J J. Theor. Biol. 12, 157-195 (1966) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.062 -0.167 0.166 -0.079 0.380 -0.025 -0.184 -0.017 0.056 -0.309 - -0.264 -0.371 0.077 0.074 -0.036 0.470 0.348 0.050 0.220 -0.212 -// -H SUEM840101 -D Zimm-Bragg parameter s at 20 C (Sueki et al., 1984) -R -A Sueki, M., Lee, S., Powers, S.P., Denton, J.B., Konishi, Y. and Scheraga, - H.A. -T Helix-coil stability constants for the naturally occurring amino acids in - water. 22. Histidine parameters from random - poly{(hydroxybutyl)glutamine-co-L-histidine} -J Macromolecules 17, 148-155 (1984) Charged state for Arg, His, Asp, and Glu - (Cys Pro 0.100) -C AURR980113 0.887 FINA770101 0.883 AURR980109 0.882 - PTIO830101 0.877 AURR980114 0.845 KANM800103 0.820 - QIAN880107 0.803 QIAN880131 -0.823 PALJ810106 -0.832 - CHOP780101 -0.845 ISOY800103 -0.850 LEVM780103 -0.864 - TANS770110 -0.864 PRAM900104 -0.865 CHOP780216 -0.874 - GEIM800108 -0.875 LEVM780106 -0.878 QIAN880133 -0.879 - QIAN880132 -0.880 GEIM800111 -0.885 CHAM830101 -0.891 - CHOP780203 -0.892 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.071 1.033 0.784 0.680 0.922 0.977 0.970 0.591 0.850 1.140 - 1.140 0.939 1.200 1.086 0.659 0.760 0.817 1.107 1.020 0.950 -// -H SUEM840102 -D Zimm-Bragg parameter sigma x 1.0E4 (Sueki et al., 1984) -R -A Sueki, M., Lee, S., Powers, S.P., Denton, J.B., Konishi, Y. and Scheraga, - H.A. -T Helix-coil stability constants for the naturally occurring amino acids in - water. 22. Histidine parameters from random - poly{(hydroxybutyl)glutamine-co-L-histidine} -J Macromolecules 17, 148-155 (1984) Charged state for Arg, His, Asp, and Glu - (Cys Pro !) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 8.0 0.1 0.1 70.0 26.0 33.0 6.0 0.1 0.1 55.0 - 33.0 1.0 54.0 18.0 42.0 0.1 0.1 77.0 66.0 0.1 -// -H SWER830101 -D Optimal matching hydrophobicity (Sweet-Eisenberg, 1983) -R PMID:6663622 -A Sweet, R.M. and Eisenberg, D. -T Correlation of sequence hydrophobicities measures similarity in - three-dimensional protein structure -J J. Mol. Biol. 171, 479-488 (1983) -C CORJ870102 1.000 BASU050101 0.922 BASU050103 0.892 - CIDH920105 0.890 MIYS850101 0.889 BLAS910101 0.887 - CORJ870104 0.883 CORJ870107 0.883 BASU050102 0.880 - PLIV810101 0.875 CIDH920102 0.870 CIDH920103 0.865 - NISK860101 0.865 ZHOH040103 0.863 CIDH920104 0.862 - CORJ870103 0.862 ZHOH040101 0.860 PTIO830102 0.856 - GUOD860101 0.853 CIDH920101 0.853 CORJ870105 0.848 - CORJ870106 0.845 ROSM880104 0.844 ROSM880105 0.843 - BIOV880101 0.839 VENT840101 0.836 NOZY710101 0.836 - ROBB790101 0.835 PONP930101 0.835 FAUJ830101 0.833 - ZIMJ680105 0.829 RADA880108 0.826 QIAN880120 0.825 - EISD860101 0.824 CHOP780202 0.823 MANP780101 0.821 - RADA880102 0.820 LIFS790101 0.815 PALJ810104 0.809 - MEEJ810101 0.806 WERD780101 0.804 MUNV940103 -0.802 - RACS770101 -0.803 VINM940102 -0.811 VINM940101 -0.817 - MEIH800101 -0.830 WOEC730101 -0.832 OOBM770103 -0.833 - PUNT030101 -0.838 GUYH850103 -0.839 PARS000101 -0.846 - MIYS990103 -0.878 MIYS990105 -0.883 CORJ870108 -0.884 - MIYS990104 -0.887 WOLS870101 -0.887 PARJ860101 -0.893 - GRAR740102 -0.896 MIYS990102 -0.921 BULH740101 -0.923 - MIYS990101 -0.923 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.40 -0.59 -0.92 -1.31 0.17 -0.91 -1.22 -0.67 -0.64 1.25 - 1.22 -0.67 1.02 1.92 -0.49 -0.55 -0.28 0.50 1.67 0.91 -// -H TANS770101 -D Normalized frequency of alpha-helix (Tanaka-Scheraga, 1977) -R PMID:557155 -A Tanaka, S. and Scheraga, H.A. -T Statistical mechanical treatment of protein conformation. 5. A multiphasic - model for specific-sequence copolymers of amino acids -J Macromolecules 10, 9-20 (1977) Recalculated by Kidera as normalized - frequencies -C ROBB760101 0.948 CHOP780201 0.947 MAXF760101 0.930 - KANM800101 0.927 NAGK730101 0.925 PALJ810102 0.923 - GEIM800101 0.918 PALJ810101 0.918 BURA740101 0.917 - LEVM780104 0.908 ISOY800101 0.906 PRAM900102 0.854 - LEVM780101 0.854 RACS820108 0.845 KANM800103 0.843 - CRAJ730101 0.843 GEIM800104 0.841 AURR980115 0.834 - QIAN880106 0.819 AURR980111 0.817 QIAN880107 0.804 - AURR980114 0.800 NAGK730103 -0.800 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.42 1.06 0.71 1.01 0.73 1.02 1.63 0.50 1.20 1.12 - 1.29 1.24 1.21 1.16 0.65 0.71 0.78 1.05 0.67 0.99 -// -H TANS770102 -D Normalized frequency of isolated helix (Tanaka-Scheraga, 1977) -R PMID:557155 -A Tanaka, S. and Scheraga, H.A. -T Statistical mechanical treatment of protein conformation. 5. A multiphasic - model for specific-sequence copolymers of amino acids -J Macromolecules 10, 9-20 (1977) Recalculated by Kidera as normalized - frequencies -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.946 1.128 0.432 1.311 0.481 1.615 0.698 0.360 2.168 1.283 - 1.192 1.203 0.000 0.963 2.093 0.523 1.961 1.925 0.802 0.409 -// -H TANS770103 -D Normalized frequency of extended structure (Tanaka-Scheraga, 1977) -R PMID:557155 -A Tanaka, S. and Scheraga, H.A. -T Statistical mechanical treatment of protein conformation. 5. A multiphasic - model for specific-sequence copolymers of amino acids -J Macromolecules 10, 9-20 (1977) Recalculated by Kidera as normalized - frequencies -C ISOY800102 0.929 MAXF760102 0.891 ROBB760105 0.871 - GEIM800105 0.850 RACS820111 0.841 PALJ810103 0.824 - WOEC730101 -0.806 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.790 1.087 0.832 0.530 1.268 1.038 0.643 0.725 0.864 1.361 - 1.111 0.735 1.092 1.052 1.249 1.093 1.214 1.114 1.340 1.428 -// -H TANS770104 -D Normalized frequency of chain reversal R (Tanaka-Scheraga, 1977) -R PMID:557155 -A Tanaka, S. and Scheraga, H.A. -T Statistical mechanical treatment of protein conformation. 5. A multiphasic - model for specific-sequence copolymers of amino acids -J Macromolecules 10, 9-20 (1977) Recalculated by Kidera as normalized - frequencies -C CHOP780213 0.954 ISOY800104 0.918 FINA910102 0.876 - MUNV940104 0.870 MUNV940105 0.846 QIAN880134 0.837 - ONEK900102 0.826 FODM020101 -0.802 BLAM930101 -0.837 - BUNA790101 -0.867 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.194 0.795 0.659 1.056 0.678 1.290 0.928 1.015 0.611 0.603 - 0.595 1.060 0.831 0.377 3.159 1.444 1.172 0.452 0.816 0.640 -// -H TANS770105 -D Normalized frequency of chain reversal S (Tanaka-Scheraga, 1977) -R PMID:557155 -A Tanaka, S. and Scheraga, H.A. -T Statistical mechanical treatment of protein conformation. 5. A multiphasic - model for specific-sequence copolymers of amino acids -J Macromolecules 10, 9-20 (1977) Recalculated by Kidera as normalized - frequencies -C CHOP780214 0.862 ISOY800105 0.836 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.497 0.677 2.072 1.498 1.348 0.711 0.651 1.848 1.474 0.471 - 0.656 0.932 0.425 1.348 0.179 1.151 0.749 1.283 1.283 0.654 -// -H TANS770106 -D Normalized frequency of chain reversal D (Tanaka-Scheraga, 1977) -R PMID:557155 -A Tanaka, S. and Scheraga, H.A. -T Statistical mechanical treatment of protein conformation. 5. A multiphasic - model for specific-sequence copolymers of amino acids -J Macromolecules 10, 9-20 (1977) Recalculated by Kidera as normalized - frequencies -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.937 1.725 1.080 1.640 1.004 1.078 0.679 0.901 1.085 0.178 - 0.808 1.254 0.886 0.803 0.748 1.145 1.487 0.803 1.227 0.625 -// -H TANS770107 -D Normalized frequency of left-handed helix (Tanaka-Scheraga, 1977) -R PMID:557155 -A Tanaka, S. and Scheraga, H.A. -T Statistical mechanical treatment of protein conformation. 5. A multiphasic - model for specific-sequence copolymers of amino acids -J Macromolecules 10, 9-20 (1977) Recalculated by Kidera as normalized - frequencies -C MAXF760104 0.913 ISOY800108 0.827 RICJ880115 0.807 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.289 1.380 3.169 0.917 1.767 2.372 0.285 4.259 1.061 0.262 - 0.000 1.288 0.000 0.393 0.000 0.160 0.218 0.000 0.654 0.167 -// -H TANS770108 -D Normalized frequency of zeta R (Tanaka-Scheraga, 1977) -R PMID:557155 -A Tanaka, S. and Scheraga, H.A. -T Statistical mechanical treatment of protein conformation. 5. A multiphasic - model for specific-sequence copolymers of amino acids -J Macromolecules 10, 9-20 (1977) Recalculated by Kidera as normalized - frequencies -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.328 2.088 1.498 3.379 0.000 0.000 0.000 0.500 1.204 2.078 - 0.414 0.835 0.982 1.336 0.415 1.089 1.732 1.781 0.000 0.946 -// -H TANS770109 -D Normalized frequency of coil (Tanaka-Scheraga, 1977) -R PMID:557155 -A Tanaka, S. and Scheraga, H.A. -T Statistical mechanical treatment of protein conformation. 5. A multiphasic - model for specific-sequence copolymers of amino acids -J Macromolecules 10, 9-20 (1977) Recalculated by Kidera as normalized - frequencies -C MAXF760105 0.878 MAXF760104 0.821 ISOY800108 0.816 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.945 0.364 1.202 1.315 0.932 0.704 1.014 2.355 0.525 0.673 - 0.758 0.947 1.028 0.622 0.579 1.140 0.863 0.777 0.907 0.561 -// -H TANS770110 -D Normalized frequency of chain reversal (Tanaka-Scheraga, 1977) -R PMID:557155 -A Tanaka, S. and Scheraga, H.A. -T Statistical mechanical treatment of protein conformation. 5. A multiphasic - model for specific-sequence copolymers of amino acids -J Macromolecules 10, 9-20 (1977) Recalculated by Kidera as normalized - frequencies -C CHOP780101 0.956 CHOP780203 0.940 CHOP780216 0.930 - PALJ810106 0.925 QIAN880133 0.920 CHAM830101 0.917 - QIAN880132 0.903 ISOY800103 0.897 LEVM780106 0.892 - GEIM800108 0.886 GEIM800111 0.883 LEVM780103 0.875 - PRAM900104 0.873 QIAN880131 0.873 PALJ810105 0.860 - CRAJ730103 0.859 CHOP780210 0.858 ROBB760113 0.853 - ROBB760108 0.839 BEGF750103 0.834 ROBB760110 0.805 - AURR980109 -0.816 SUEM840101 -0.864 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.842 0.936 1.352 1.366 1.032 0.998 0.758 1.349 1.079 0.459 - 0.665 1.045 0.668 0.881 1.385 1.257 1.055 0.881 1.101 0.643 -// -H VASM830101 -D Relative population of conformational state A (Vasquez et al., 1983) -R -A Vasquez, M., Nemethy, G. and Scheraga, H.A. -T Computed conformational states of the 20 naturally occurring amino acid - residues and of the prototype residue alpha-aminobutyric acid -J Macromolecules 16, 1043-1049 (1983) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.135 0.296 0.196 0.289 0.159 0.236 0.184 0.051 0.223 0.173 - 0.215 0.170 0.239 0.087 0.151 0.010 0.100 0.166 0.066 0.285 -// -H VASM830102 -D Relative population of conformational state C (Vasquez et al., 1983) -R -A Vasquez, M., Nemethy, G. and Scheraga, H.A. -T Computed conformational states of the 20 naturally occurring amino acid - residues and of the prototype residue alpha-aminobutyric acid -J Macromolecules 16, 1043-1049 (1983) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.507 0.459 0.287 0.223 0.592 0.383 0.445 0.390 0.310 0.111 - 0.619 0.559 0.431 0.077 0.739 0.689 0.785 0.160 0.060 0.356 -// -H VASM830103 -D Relative population of conformational state E (Vasquez et al., 1983) -R -A Vasquez, M., Nemethy, G. and Scheraga, H.A. -T Computed conformational states of the 20 naturally occurring amino acid - residues and of the prototype residue alpha-aminobutyric acid -J Macromolecules 16, 1043-1049 (1983) (Pro !) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.159 0.194 0.385 0.283 0.187 0.236 0.206 0.049 0.233 0.581 - 0.083 0.159 0.198 0.682 0.366 0.150 0.074 0.463 0.737 0.301 -// -H VELV850101 -D Electron-ion interaction potential (Veljkovic et al., 1985) -R -A Veljkovic, V., Cosic, I., Dimitrijevic, B. and Lalovic, D. -T Is it possible to analyze DNA and protein sequences by the method of digital - signal processing? -J IEEE Trans. Biomed. Eng. 32, 337-341 (1985) -C COSI940101 1.000 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - .03731 .09593 .00359 .12630 .08292 .07606 .00580 .00499 .02415 .00000 - .00000 .03710 .08226 .09460 .01979 .08292 .09408 .05481 .05159 .00569 -// -H VENT840101 -D Bitterness (Venanzi, 1984) -R PMID:6521488 -A Venanzi, T.J. -T Hydrophobicity parameters and the bitter taste of L-amino acids -J J. Theor. Biol. 111, 447-450 (1984) -C NOZY710101 0.897 BASU050101 0.858 ZHOH040101 0.858 - BASU050102 0.851 GUOD860101 0.848 PTIO830102 0.842 - WILM950101 0.840 CORJ870102 0.837 SWER830101 0.836 - ZHOH040102 0.831 MEEJ810102 0.831 PALJ810104 0.831 - ROSM880104 0.829 RADA880102 0.826 CHOP780209 0.817 - BASU050103 0.814 LIFS790101 0.814 MEEJ810101 0.813 - CIDH920105 0.813 TAKK010101 0.812 ZHOH040103 0.807 - SIMZ760101 0.806 PONP800107 0.805 CHOP780202 0.805 - GOLD730101 0.802 MIYS990102 -0.820 MIYS990101 -0.821 - WOLS870101 -0.835 PARJ860101 -0.846 BULH740101 -0.907 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0. 0. 0. 0. 0. 0. 0. 0. 0. 1. - 1. 0. 0. 1. 0. 0. 0. 1. 1. 1. -// -H VHEG790101 -D Transfer free energy to lipophilic phase (von Heijne-Blomberg, 1979) -R PMID:477664 -A von Heijne, G. and Blomberg, C. -T Trans-membrane translocation of proteins: The direct transfer model -J Eur. J. Biochem. 97, 175-181 (1979) -C ENGD860101 0.909 PRAM900101 0.909 ROSM880101 0.883 - PUNT030101 0.876 PUNT030102 0.873 KUHL950101 0.858 - HOPT810101 0.849 GUYH850105 0.845 ROSM880102 0.828 - LEVM760101 0.825 JURD980101 -0.814 RADA880102 -0.818 - NADH010101 -0.827 WOLR790101 -0.844 BLAS910101 -0.847 - NAKH900110 -0.848 EISD860101 -0.862 WOLR810101 -0.867 - ROSM880105 -0.901 JACR890101 -0.903 EISD840101 -0.924 - RADA880101 -0.925 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -12.04 39.23 4.25 23.22 3.95 2.16 16.81 -7.85 6.28 -18.32 - -17.79 9.71 -8.86 -21.98 5.82 -1.54 -4.15 -16.19 -1.51 -16.22 -// -H WARP780101 -D Average interactions per side chain atom (Warme-Morgan, 1978) -R PMID:633361 -A Warme, P.K. and Morgan, R.S. -T A survey of amino acid side-chain interactions in 21 proteins -J J. Mol. Biol. 118, 289-304 (1978) (Gly 0.81) -C DESM900102 0.882 JANJ780102 0.878 JANJ790102 0.877 - NADH010102 0.870 DESM900101 0.864 BIOV880102 0.853 - KYTJ820101 0.845 MEIH800103 0.835 JURD980101 0.827 - CHOC760103 0.824 ROSG850102 0.823 EISD860103 0.820 - OLSK800101 0.818 CHOC760104 0.815 NADH010103 0.811 - CORJ870101 0.800 ROSM880102 -0.801 KUHL950101 -0.811 - PUNT030101 -0.814 ROSM880101 -0.816 MEIH800102 -0.826 - PRAM900101 -0.827 ENGD860101 -0.827 RACS770103 -0.848 - CHOC760102 -0.849 JANJ780101 -0.869 GUYH850104 -0.882 - JANJ780103 -0.890 OOBM770101 -0.937 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 10.04 6.18 5.63 5.76 8.89 5.41 5.37 7.99 7.49 8.72 - 8.79 4.40 9.15 7.98 7.79 7.08 7.00 8.07 6.90 8.88 -// -H WEBA780101 -D RF value in high salt chromatography (Weber-Lacey, 1978) -R PMID:691071 -A Weber, A.L. and Lacey, J.C.,Jr. -T Genetic code correlations: Amino acids and their anticodon nucleotides -J J. Mol. Evol. 11, 199-210 (1978) -C ZHOH040102 -0.807 MEEJ800102 -0.808 ROSG850101 -0.817 - MEEJ810101 -0.831 MEEJ810102 -0.854 ZHOH040101 -0.865 - NOZY710101 -0.890 LEVM760107 -0.923 GARJ730101 -0.924 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.89 0.88 0.89 0.87 0.85 0.82 0.84 0.92 0.83 0.76 - 0.73 0.97 0.74 0.52 0.82 0.96 0.92 0.20 0.49 0.85 -// -H WERD780101 -D Propensity to be buried inside (Wertz-Scheraga, 1978) -R PMID:621952 -A Wertz, D.H. and Scheraga, H.A. -T Influence of water on protein structure. An analysis of the preferences of - amino acid residues for the inside or outside and for specific conformations - in a protein molecule -J Macromolecules 11, 9-15 (1978) Adjusted values -C NISK860101 0.966 BIOV880101 0.951 ROSG850102 0.943 - MIYS850101 0.934 RADA880108 0.930 BIOV880102 0.929 - CASG920101 0.927 ZHOH040103 0.923 BASU050102 0.920 - CIDH920105 0.905 CIDH920104 0.896 PONP930101 0.895 - MEIH800103 0.895 BAEK050101 0.895 NISK800101 0.891 - NADH010104 0.890 CORJ870107 0.887 PONP800102 0.883 - CORJ870103 0.882 CIDH920103 0.881 NADH010103 0.880 - PONP800101 0.880 CIDH920101 0.878 CORJ870106 0.878 - PONP800103 0.876 CORJ870101 0.873 ROBB790101 0.872 - CIDH920102 0.871 FAUJ830101 0.862 ZHOH040101 0.859 - CORJ870105 0.858 BASU050103 0.857 MANP780101 0.853 - CORJ870104 0.850 PONP800108 0.843 BASU050101 0.843 - PLIV810101 0.841 NADH010102 0.841 NADH010105 0.837 - MEEJ810101 0.825 DESM900102 0.814 CORJ870102 0.804 - SWER830101 0.804 FUKS010102 -0.801 BHAR880101 -0.803 - KRIW710101 -0.819 PUNT030101 -0.821 GRAR740102 -0.826 - FUKS010104 -0.832 KARP850101 -0.842 RACS770103 -0.846 - PARS000101 -0.853 PARJ860101 -0.869 FUKS010103 -0.869 - GUYH850101 -0.871 KRIW790102 -0.875 GUYH850103 -0.876 - CORJ870108 -0.878 VINM940102 -0.886 KRIW790101 -0.899 - MEIH800102 -0.903 RACS770102 -0.906 OOBM770103 -0.906 - KARP850102 -0.909 MIYS990101 -0.912 RACS770101 -0.912 - MIYS990102 -0.914 FASG890101 -0.926 VINM940103 -0.926 - VINM940101 -0.931 MIYS990105 -0.936 MIYS990103 -0.938 - MEIH800101 -0.943 MIYS990104 -0.949 GUYH850102 -0.976 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.52 0.49 0.42 0.37 0.83 0.35 0.38 0.41 0.70 0.79 - 0.77 0.31 0.76 0.87 0.35 0.49 0.38 0.86 0.64 0.72 -// -H WERD780102 -D Free energy change of epsilon(i) to epsilon(ex) (Wertz-Scheraga, 1978) -R PMID:621952 -A Wertz, D.H. and Scheraga, H.A. -T Influence of water on protein structure. An analysis of the preferences of - amino acid residues for the inside or outside and for specific conformations - in a protein molecule -J Macromolecules 11, 9-15 (1978) Adjusted values -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.16 -0.20 1.03 -0.24 -0.12 -0.55 -0.45 -0.16 -0.18 -0.19 - -0.44 -0.12 -0.79 -0.25 -0.59 -0.01 0.05 -0.33 -0.42 -0.46 -// -H WERD780103 -D Free energy change of alpha(Ri) to alpha(Rh) (Wertz-Scheraga, 1978) -R PMID:621952 -A Wertz, D.H. and Scheraga, H.A. -T Influence of water on protein structure. An analysis of the preferences of - amino acid residues for the inside or outside and for specific conformations - in a protein molecule -J Macromolecules 11, 9-15 (1978) Adjusted values (Met !) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.15 -0.37 0.69 -0.22 -0.19 -0.06 0.14 0.36 -0.25 0.02 - 0.06 -0.16 0.11 1.18 0.11 0.13 0.28 -0.12 0.19 -0.08 -// -H WERD780104 -D Free energy change of epsilon(i) to alpha(Rh) (Wertz-Scheraga, 1978) -R PMID:621952 -A Wertz, D.H. and Scheraga, H.A. -T Influence of water on protein structure. An analysis of the preferences of - amino acid residues for the inside or outside and for specific conformations - in a protein molecule -J Macromolecules 11, 9-15 (1978) Adjusted values -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.07 -0.40 -0.57 -0.80 0.17 -0.26 -0.63 0.27 -0.49 0.06 - -0.17 -0.45 0.03 0.40 -0.47 -0.11 0.09 -0.61 -0.61 -0.11 -// -H WOEC730101 -D Polar requirement (Woese, 1973) -R PMID:4588588 -A Woese, C.R. -T Evolution of genetic code -J Naturwiss. 60, 447-459 (1973) -C GRAR740102 0.960 PUNT030102 0.894 HOPT810101 0.886 - HOPA770101 0.876 LEVM760101 0.872 ENGD860101 0.871 - PRAM900101 0.871 MIYS990105 0.849 ROSM880101 0.844 - WOLS870101 0.841 KUHL950101 0.837 OOBM770103 0.835 - VINM940101 0.834 MIYS990104 0.827 PUNT030101 0.825 - MIYS990103 0.824 PARJ860101 0.821 FUKS010102 0.820 - FAUJ880110 0.812 KIDA850101 0.807 MIYS990102 0.805 - MIYS990101 0.805 OOBM770101 0.804 ROSM880102 0.801 - NADH010102 -0.800 CIDH920105 -0.800 MEIH800103 -0.802 - ISOY800102 -0.803 EISD860103 -0.803 ROSG850102 -0.804 - TANS770103 -0.806 BASU050101 -0.811 RADA880101 -0.812 - BIOV880102 -0.819 WIMW960101 -0.821 NISK860101 -0.822 - PONP800103 -0.823 CIDH920104 -0.823 RADA880108 -0.825 - CORJ870102 -0.828 BIOV880101 -0.829 PONP800108 -0.831 - SWER830101 -0.832 BASU050103 -0.836 EISD860101 -0.838 - CORJ870101 -0.841 MAXF760102 -0.842 DESM900102 -0.847 - FAUJ830101 -0.880 ROSM880105 -0.902 BLAS910101 -0.902 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 7.0 9.1 10.0 13.0 5.5 8.6 12.5 7.9 8.4 4.9 - 4.9 10.1 5.3 5.0 6.6 7.5 6.6 5.3 5.7 5.6 -// -H WOLR810101 -D Hydration potential (Wolfenden et al., 1981) -R PMID:7213619 -A Wolfenden, R. andersson, L., Cullis, P.M. and Southgate, C.C.B. -T Affinties of amino acid side chains for solvent water -J Biochemistry 20, 849-855 (1981) (Pro 2.9) -C WOLR790101 0.996 RADA880101 0.939 EISD840101 0.914 - RADA880104 0.910 JACR890101 0.908 RADA880107 0.890 - KYTJ820101 0.885 JURD980101 0.881 RADA880105 0.875 - CHOC760103 0.873 OLSK800101 0.869 CHOC760104 0.868 - JANJ780102 0.851 NADH010101 0.848 JANJ790102 0.828 - JANJ780103 -0.822 GUYH850104 -0.826 ROSM880102 -0.829 - CHOC760102 -0.840 OOBM770101 -0.847 JANJ780101 -0.864 - VHEG790101 -0.867 ROSM880101 -0.884 ENGD860101 -0.887 - PRAM900101 -0.887 KUHL950101 -0.898 FAUJ880109 -0.904 - GUYH850105 -0.916 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.94 -19.92 -9.68 -10.95 -1.24 -9.38 -10.20 2.39 -10.27 2.15 - 2.28 -9.52 -1.48 -0.76 -3.68 -5.06 -4.88 -5.88 -6.11 1.99 -// -H WOLS870101 -D Principal property value z1 (Wold et al., 1987) -R -A Wold, S., Eriksson, L., Hellberg, S., Jonsson, J., Sjostrom, M., Skagerberg, - B. and Wikstrom, C. -T Principal property values for six non-natural amino acids and their - application to a structure-activity relationship for oxytocin peptide - analogues -J Can. J. Chem. 65, 1814-1820 (1987) -C PARJ860101 0.964 BULH740101 0.929 MIYS990101 0.912 - MIYS990102 0.910 GRAR740102 0.910 ROSM880102 0.877 - PUNT030102 0.868 ROSM880101 0.866 PUNT030101 0.853 - MEIH800101 0.852 OOBM770103 0.852 KIDA850101 0.852 - LEVM760101 0.845 WOEC730101 0.841 MIYS990105 0.838 - GUYH850103 0.836 HOPT810101 0.830 MIYS990104 0.830 - MIYS990103 0.815 MEIH800102 0.813 RACS770102 0.802 - MANP780101 -0.809 EISD840101 -0.820 RADA880101 -0.823 - MEEJ800101 -0.823 SIMZ760101 -0.830 ROBB790101 -0.831 - NAKH900110 -0.832 VENT840101 -0.835 JOND750101 -0.837 - ARGP820101 -0.838 RADA880108 -0.840 EISD860103 -0.841 - BIOV880102 -0.842 NISK860101 -0.848 BASU050102 -0.849 - WILM950101 -0.851 PONP800107 -0.852 BIOV880101 -0.854 - GOLD730101 -0.854 ZHOH040101 -0.858 TAKK010101 -0.858 - BASU050103 -0.866 BASU050101 -0.869 CIDH920102 -0.869 - ZHOH040103 -0.870 ROSM880104 -0.870 BROC820101 -0.871 - RADA880102 -0.873 NOZY710101 -0.874 CIDH920103 -0.879 - COWR900101 -0.883 CORJ870102 -0.885 SWER830101 -0.887 - CIDH920104 -0.891 CIDH920105 -0.899 ROSM880105 -0.899 - MIYS850101 -0.899 MEEJ810102 -0.905 MEEJ810101 -0.906 - EISD860101 -0.918 MEEJ800102 -0.925 FAUJ830101 -0.928 - BLAS910101 -0.930 ZIMJ680105 -0.937 GUOD860101 -0.955 - PLIV810101 -0.963 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.07 2.88 3.22 3.64 0.71 2.18 3.08 2.23 2.41 -4.44 - -4.19 2.84 -2.49 -4.92 -1.22 1.96 0.92 -4.75 -1.39 -2.69 -// -H WOLS870102 -D Principal property value z2 (Wold et al., 1987) -R -A Wold, S., Eriksson, L., Hellberg, S., Jonsson, J., Sjostrom, M., Skagerberg, - B. and Wikstrom, C. -T Principal property values for six non-natural amino acids and their - application to a structure-activity relationship for oxytocin peptide - analogues -J Can. J. Chem. 65, 1814-1820 (1987) -C LEVM760102 0.881 FASG760101 0.866 FAUJ880106 0.866 - CHOC760101 0.845 LEVM760105 0.836 FAUJ880103 0.814 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -1.73 2.52 1.45 1.13 -0.97 0.53 0.39 -5.36 1.74 -1.68 - -1.03 1.41 -0.27 1.30 0.88 -1.63 -2.09 3.65 2.32 -2.53 -// -H WOLS870103 -D Principal property value z3 (Wold et al., 1987) -R -A Wold, S., Eriksson, L., Hellberg, S., Jonsson, J., Sjostrom, M., Skagerberg, - B. and Wikstrom, C. -T Principal property values for six non-natural amino acids and their - application to a structure-activity relationship for oxytocin peptide - analogues -J Can. J. Chem. 65, 1814-1820 (1987) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.09 -3.44 0.84 2.36 4.13 -1.14 -0.07 0.30 1.11 -1.03 - -0.98 -3.14 -0.41 0.45 2.23 0.57 -1.40 0.85 0.01 -1.29 -// -H YUTK870101 -D Unfolding Gibbs energy in water, pH7.0 (Yutani et al., 1987) -R PMID:3299367 -A Yutani, K., Ogasahara, K., Tsujita, T. and Sugino, Y. -T Dependence of conformational stability on hydrophobicity of the amino acid - residue in a series of variant proteins substituted at a unique position of - tryptophan synthase alpha subunit -J Proc. Natl. Acad. Sci. USA 84, 4441-4444 (1987) (Arg missing) -C YUTK870102 0.827 EISD840101 0.809 RADA880101 0.803 - GUYH850101 -0.813 GUYH850105 -0.841 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 8.5 0. 8.2 8.5 11.0 6.3 8.8 7.1 10.1 16.8 - 15.0 7.9 13.3 11.2 8.2 7.4 8.8 9.9 8.8 12.0 -// -H YUTK870102 -D Unfolding Gibbs energy in water, pH9.0 (Yutani et al., 1987) -R PMID:3299367 -A Yutani, K., Ogasahara, K., Tsujita, T. and Sugino, Y. -T Dependence of conformational stability on hydrophobicity of the amino acid - residue in a series of variant proteins substituted at a unique position of - tryptophan synthase alpha subunit -J Proc. Natl. Acad. Sci. USA 84, 4441-4444 (1987) (Arg missing) -C YUTK870101 0.827 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.8 0. 6.2 7.0 8.3 8.5 4.9 6.4 9.2 10.0 - 12.2 7.5 8.4 8.3 6.9 8.0 7.0 5.7 6.8 9.4 -// -H YUTK870103 -D Activation Gibbs energy of unfolding, pH7.0 (Yutani et al., 1987) -R PMID:3299367 -A Yutani, K., Ogasahara, K., Tsujita, T. and Sugino, Y. -T Dependence of conformational stability on hydrophobicity of the amino acid - residue in a series of variant proteins substituted at a unique position of - tryptophan synthase alpha subunit -J Proc. Natl. Acad. Sci. USA 84, 4441-4444 (1987) (Arg missing) -C YUTK870104 0.997 EISD860102 -0.839 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 18.08 0. 17.47 17.36 18.17 17.93 18.16 18.24 18.49 18.62 - 18.60 17.96 18.11 17.30 18.16 17.57 17.54 17.19 17.99 18.30 -// -H YUTK870104 -D Activation Gibbs energy of unfolding, pH9.0 (Yutani et al., 1987) -R PMID:3299367 -A Yutani, K., Ogasahara, K., Tsujita, T. and Sugino, Y. -T Dependence of conformational stability on hydrophobicity of the amino acid - residue in a series of variant proteins substituted at a unique position of - tryptophan synthase alpha subunit -J Proc. Natl. Acad. Sci. USA 84, 4441-4444 (1987) (Arg missing) -C YUTK870103 0.997 EISD860102 -0.840 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 18.56 0. 18.24 17.94 17.84 18.51 17.97 18.57 18.64 19.21 - 19.01 18.36 18.49 17.95 18.77 18.06 17.71 16.87 18.23 18.98 -// -H ZASB820101 -D Dependence of partition coefficient on ionic strength (Zaslavsky et al., - 1982) -R -A Zaslavsky, B.Yu, Mestechkina, N.M., Miheeva, L.M. and Rogozhin, S.V. -T Measurement of relative hydrophobicity of amino acid side-chains by partition - in an aqueous two-phase polymeric system: Hydrophobicity scale for non-polar - and ionogenic side-chains -J J. Chromatogr. 240, 21-28 (1982) (C H Y missing?) -C WIMW960101 0.885 CIDH920102 0.809 SNEP660103 0.804 - OOBM850102 -0.853 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.152 -0.089 -0.203 -0.355 0. -0.181 -0.411 -0.190 0. -0.086 - -0.102 -0.062 -0.107 0.001 -0.181 -0.203 -0.170 0.275 0. -0.125 -// -H ZIMJ680101 -D Hydrophobicity (Zimmerman et al., 1968) -R PMID:5700434 -A Zimmerman, J.M., Eliezer, N. and Simha, R. -T The characterization of amino acid sequences in proteins by statistical - methods -J J. Theor. Biol. 21, 170-201 (1968) -C SIMZ760101 0.821 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.83 0.83 0.09 0.64 1.48 0.00 0.65 0.10 1.10 3.07 - 2.52 1.60 1.40 2.75 2.70 0.14 0.54 0.31 2.97 1.79 -// -H ZIMJ680102 -D Bulkiness (Zimmerman et al., 1968) -R PMID:5700434 -A Zimmerman, J.M., Eliezer, N. and Simha, R. -T The characterization of amino acid sequences in proteins by statistical - methods -J J. Theor. Biol. 21, 170-201 (1968) -C FAUJ880101 0.888 ZHOH040102 0.878 LEVM760106 0.873 - TAKK010101 0.840 BULH740102 0.825 GOLD730101 0.818 - SIMZ760101 0.810 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 11.50 14.28 12.82 11.68 13.46 14.45 13.57 3.40 13.69 21.40 - 21.40 15.71 16.25 19.80 17.43 9.47 15.77 21.67 18.03 21.57 -// -H ZIMJ680103 -D Polarity (Zimmerman et al., 1968) -R PMID:5700434 -A Zimmerman, J.M., Eliezer, N. and Simha, R. -T The characterization of amino acid sequences in proteins by statistical - methods -J J. Theor. Biol. 21, 170-201 (1968) -C PRAM900101 0.854 ENGD860101 0.854 HOPA770101 0.815 - JACR890101 -0.835 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.00 52.00 3.38 49.70 1.48 3.53 49.90 0.00 51.60 0.13 - 0.13 49.50 1.43 0.35 1.58 1.67 1.66 2.10 1.61 0.13 -// -H ZIMJ680104 -D Isoelectric point (Zimmerman et al., 1968) -R PMID:5700434 -A Zimmerman, J.M., Eliezer, N. and Simha, R. -T The characterization of amino acid sequences in proteins by statistical - methods -J J. Theor. Biol. 21, 170-201 (1968) -C KLEP840101 0.941 FAUJ880111 0.813 FINA910103 0.805 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.00 10.76 5.41 2.77 5.05 5.65 3.22 5.97 7.59 6.02 - 5.98 9.74 5.74 5.48 6.30 5.68 5.66 5.89 5.66 5.96 -// -H ZIMJ680105 -D RF rank (Zimmerman et al., 1968) -R PMID:5700434 -A Zimmerman, J.M., Eliezer, N. and Simha, R. -T The characterization of amino acid sequences in proteins by statistical - methods -J J. Theor. Biol. 21, 170-201 (1968) -C MEEJ800102 0.921 EISD860101 0.900 BROC820101 0.896 - PLIV810101 0.875 BROC820102 0.865 ROSM880105 0.857 - TAKK010101 0.856 BLAS910101 0.855 RADA880102 0.851 - GUOD860101 0.850 MEEJ800101 0.842 NOZY710101 0.837 - SWER830101 0.829 CORJ870102 0.828 GOLD730101 0.820 - FAUJ830101 0.816 LAWE840101 0.809 SIMZ760101 0.805 - MIYS990101 -0.801 HOPT810101 -0.816 LEVM760101 -0.844 - BULH740101 -0.879 PARJ860101 -0.886 WOLS870101 -0.937 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 9.9 4.6 5.4 2.8 2.8 9.0 3.2 5.6 8.2 17.1 - 17.6 3.5 14.9 18.8 14.8 6.9 9.5 17.1 15.0 14.3 -// -H AURR980101 -D Normalized positional residue frequency at helix termini N4'(Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.94 1.15 0.79 1.19 0.60 0.94 1.41 1.18 1.15 1.07 - 0.95 1.03 0.88 1.06 1.18 0.69 0.87 0.91 1.04 0.90 -// -H AURR980102 -D Normalized positional residue frequency at helix termini N"' (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.98 1.14 1.05 1.05 0.41 0.90 1.04 1.25 1.01 0.88 - 0.80 1.06 1.12 1.12 1.31 1.02 0.80 0.90 1.12 0.87 -// -H AURR980103 -D Normalized positional residue frequency at helix termini N" (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.05 0.81 0.91 1.39 0.60 0.87 1.11 1.26 1.43 0.95 - 0.96 0.97 0.99 0.95 1.05 0.96 1.03 1.06 0.94 0.62 -// -H AURR980104 -D Normalized positional residue frequency at helix termini N'(Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C AURR980105 0.839 FINA910101 0.804 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.75 0.90 1.24 1.72 0.66 1.08 1.10 1.14 0.96 0.80 - 1.01 0.66 1.02 0.88 1.33 1.20 1.13 0.68 0.80 0.58 -// -H AURR980105 -D Normalized positional residue frequency at helix termini Nc (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C AURR980104 0.839 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.67 0.76 1.28 1.58 0.37 1.05 0.94 0.98 0.83 0.78 - 0.79 0.84 0.98 0.96 1.12 1.25 1.41 0.94 0.82 0.67 -// -H AURR980106 -D Normalized positional residue frequency at helix termini N1 (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.10 1.05 0.72 1.14 0.26 1.31 2.30 0.55 0.83 1.06 - 0.84 1.08 0.90 0.90 1.67 0.81 0.77 1.26 0.99 0.76 -// -H AURR980107 -D Normalized positional residue frequency at helix termini N2 (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C RICJ880106 0.800 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.39 0.95 0.67 1.64 0.52 1.60 2.07 0.65 1.36 0.64 - 0.91 0.80 1.10 1.00 0.94 0.69 0.92 1.10 0.73 0.70 -// -H AURR980108 -D Normalized positional residue frequency at helix termini N3 (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C AURR980112 0.910 PALJ810102 0.871 CHOP780201 0.867 - KANM800103 0.857 ISOY800101 0.856 AURR980109 0.848 - MAXF760101 0.841 QIAN880106 0.838 ROBB760103 0.835 - AURR980113 0.821 QIAN880104 0.815 ROBB760101 0.814 - BEGF750101 0.810 BURA740101 0.808 QIAN880107 0.803 - MUNV940102 -0.803 MUNV940101 -0.814 CHAM830101 -0.834 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.43 1.33 0.55 0.90 0.52 1.43 1.70 0.56 0.66 1.18 - 1.52 0.82 1.68 1.10 0.15 0.61 0.75 1.68 0.65 1.14 -// -H AURR980109 -D Normalized positional residue frequency at helix termini N4 (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C KANM800103 0.944 AURR980114 0.939 ISOY800101 0.894 - QIAN880107 0.893 AURR980113 0.892 SUEM840101 0.882 - PALJ810102 0.877 AURR980112 0.875 MAXF760101 0.865 - QIAN880106 0.862 CHOP780201 0.859 ROBB760103 0.857 - KANM800101 0.852 AURR980108 0.848 RICJ880109 0.828 - BEGF750101 0.821 PTIO830101 0.820 AURR980110 0.817 - ROBB760101 0.810 QIAN880109 0.807 RACS820108 0.804 - QIAN880110 0.802 FINA770101 0.802 QIAN880132 -0.806 - LEVM780103 -0.814 GEIM800111 -0.814 PRAM900104 -0.815 - TANS770110 -0.816 MUNV940102 -0.818 MUNV940101 -0.828 - CHOP780101 -0.837 PALJ810106 -0.845 CHAM830101 -0.896 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.55 1.39 0.60 0.61 0.59 1.43 1.34 0.37 0.89 1.47 - 1.36 1.27 2.13 1.39 0.03 0.44 0.65 1.10 0.93 1.18 -// -H AURR980110 -D Normalized positional residue frequency at helix termini N5 (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C AURR980115 0.907 AURR980111 0.867 MAXF760101 0.860 - ISOY800101 0.855 KANM800101 0.830 AURR980109 0.817 - AURR980112 0.816 QIAN880107 0.815 CHOP780201 0.814 - PALJ810102 0.812 AURR980114 0.811 GEOR030108 0.804 - QIAN880106 0.804 MUNV940101 -0.822 MUNV940102 -0.846 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.80 1.73 0.73 0.90 0.55 0.97 1.73 0.32 0.46 1.09 - 1.47 1.24 1.64 0.96 0.15 0.67 0.70 0.68 0.91 0.81 -// -H AURR980111 -D Normalized positional residue frequency at helix termini C5 (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C AURR980110 0.867 GEOR030108 0.846 AURR980115 0.835 - PALJ810102 0.830 TANS770101 0.817 CHOP780201 0.813 - AURR980114 0.811 MAXF760101 0.811 ISOY800101 0.801 - AURR980112 0.800 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.52 1.49 0.58 1.04 0.26 1.41 1.76 0.30 0.83 1.25 - 1.26 1.10 1.14 1.14 0.44 0.66 0.73 0.68 1.04 1.03 -// -H AURR980112 -D Normalized positional residue frequency at helix termini C4 (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C AURR980108 0.910 PALJ810102 0.888 AURR980109 0.875 - KANM800103 0.871 ISOY800101 0.870 CHOP780201 0.856 - AURR980114 0.853 AURR980115 0.850 AURR980113 0.848 - KANM800101 0.847 GEOR030108 0.846 RACS820108 0.840 - QIAN880106 0.839 MAXF760101 0.838 PALJ810109 0.817 - AURR980110 0.816 GEIM800104 0.815 ROBB760101 0.806 - QIAN880107 0.802 GEIM800101 0.802 AURR980111 0.800 - MUNV940101 -0.819 MUNV940102 -0.853 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.49 1.41 0.67 0.94 0.37 1.52 1.55 0.29 0.96 1.04 - 1.40 1.17 1.84 0.86 0.20 0.68 0.79 1.52 1.06 0.94 -// -H AURR980113 -D Normalized positional residue frequency at helix termini C3 (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C KANM800103 0.905 AURR980109 0.892 SUEM840101 0.887 - BEGF750101 0.857 FINA770101 0.849 AURR980112 0.848 - ROBB760103 0.838 AURR980114 0.836 QIAN880106 0.835 - QIAN880105 0.833 PTIO830101 0.833 QIAN880107 0.832 - AURR980108 0.821 ISOY800101 0.815 RICJ880109 0.808 - CHAM830101 -0.828 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.73 1.24 0.70 0.68 0.63 0.88 1.16 0.32 0.76 1.15 - 1.80 1.22 2.21 1.35 0.07 0.65 0.46 1.57 1.10 0.94 -// -H AURR980114 -D Normalized positional residue frequency at helix termini C2 (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C AURR980109 0.939 KANM800103 0.916 QIAN880107 0.876 - FINA770101 0.875 ISOY800101 0.857 MAXF760101 0.853 - AURR980112 0.853 KANM800101 0.852 PALJ810102 0.848 - SUEM840101 0.845 AURR980113 0.836 CHOP780201 0.828 - QIAN880110 0.819 RACS820108 0.818 AURR980111 0.811 - AURR980110 0.811 QIAN880109 0.810 PTIO830101 0.809 - AURR980115 0.804 GEOR030108 0.804 QIAN880106 0.803 - ROBB760103 0.801 TANS770101 0.800 CHOP780101 -0.803 - MUNV940102 -0.820 MUNV940101 -0.821 CHAM830101 -0.842 - PALJ810106 -0.842 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.33 1.39 0.64 0.60 0.44 1.37 1.43 0.20 1.02 1.58 - 1.63 1.71 1.76 1.22 0.07 0.42 0.57 1.00 1.02 1.08 -// -H AURR980115 -D Normalized positional residue frequency at helix termini C1 (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C AURR980110 0.907 KANM800101 0.858 MAXF760101 0.852 - AURR980112 0.850 ISOY800101 0.844 AURR980111 0.835 - TANS770101 0.834 PALJ810102 0.827 GEOR030108 0.821 - LEVM780104 0.818 CHOP780201 0.816 GEIM800101 0.804 - AURR980114 0.804 RACS820108 0.802 MUNV940101 -0.807 - MUNV940102 -0.852 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.87 1.66 0.70 0.91 0.33 1.24 1.88 0.33 0.89 0.90 - 1.65 1.63 1.35 0.67 0.03 0.71 0.50 1.00 0.73 0.51 -// -H AURR980116 -D Normalized positional residue frequency at helix termini Cc (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.19 1.45 1.33 0.72 0.44 1.43 1.27 0.74 1.55 0.61 - 1.36 1.45 1.35 1.20 0.10 1.02 0.82 0.58 1.06 0.46 -// -H AURR980117 -D Normalized positional residue frequency at helix termini C' (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C RICJ880115 0.921 MAXF760104 0.849 ISOY800108 0.822 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.77 1.11 1.39 0.79 0.44 0.95 0.92 2.74 1.65 0.64 - 0.66 1.19 0.74 1.04 0.66 0.64 0.82 0.58 0.93 0.53 -// -H AURR980118 -D Normalized positional residue frequency at helix termini C" (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.93 0.96 0.82 1.15 0.67 1.02 1.07 1.08 1.40 1.14 - 1.16 1.27 1.11 1.05 1.01 0.71 0.84 1.06 1.15 0.74 -// -H AURR980119 -D Normalized positional residue frequency at helix termini C"' (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C MUNV940104 0.804 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.09 1.29 1.03 1.17 0.26 1.08 1.31 0.97 0.88 0.97 - 0.87 1.13 0.96 0.84 2.01 0.76 0.79 0.91 0.64 0.77 -// -H AURR980120 -D Normalized positional residue frequency at helix termini C4' (Aurora-Rose, - 1998) -R PMID:9514257 -A Aurora, R. and Rose, G. -T Helix capping -J Protein Science 7, 21-38 (1998) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.71 1.09 0.95 1.43 0.65 0.87 1.19 1.07 1.13 1.05 - 0.84 1.10 0.80 0.95 1.70 0.65 .086 1.25 0.85 1.12 -// -H ONEK900101 -D Delta G values for the peptides extrapolated to 0 M urea (O'Neil-DeGrado, - 1990) -R PMID:2237415 -A O'Neil, K.T. and DeGrado, W.F. -T A thermodynamic scale for the helix-forming tendencies of the commonly - occurring amino acids -J Science 250, 646-651 (1990) -C BLAM930101 0.965 BUNA790101 0.902 ROBB760103 0.878 - QIAN880108 0.866 PTIO830101 0.847 ROBB760104 0.844 - QIAN880109 0.824 FAUJ880113 0.820 MUNV940105 -0.839 - RACS820114 -0.880 GEOR030109 -0.884 MUNV940101 -0.890 - AVBF000104 -0.899 MUNV940102 -0.910 FINA910102 -0.920 - ONEK900102 -0.982 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 13.4 13.3 12.0 11.7 11.6 12.8 12.2 11.3 11.6 12.0 - 13.0 13.0 12.8 12.1 6.5 12.2 11.7 12.4 12.1 11.9 -// -H ONEK900102 -D Helix formation parameters (delta delta G) (O'Neil-DeGrado, 1990) -R PMID:2237415 -A O'Neil, K.T. and DeGrado, W.F. -T A thermodynamic scale for the helix-forming tendencies of the commonly - occurring amino acids -J Science 250, 646-651 (1990) -C FINA910102 0.964 AVBF000104 0.919 GEOR030109 0.908 - MUNV940105 0.876 MUNV940101 0.861 MUNV940102 0.860 - RACS820114 0.855 MUNV940104 0.845 ISOY800104 0.828 - TANS770104 0.826 QIAN880109 -0.800 PTIO830101 -0.830 - FAUJ880113 -0.839 QIAN880108 -0.860 ROBB760104 -0.861 - ROBB760103 -0.867 BUNA790101 -0.949 BLAM930101 -0.974 - ONEK900101 -0.982 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.77 -0.68 -0.07 -0.15 -0.23 -0.33 -0.27 0.00 -0.06 -0.23 - -0.62 -0.65 -0.50 -0.41 3 -0.35 -0.11 -0.45 -0.17 -0.14 -// -H VINM940101 -D Normalized flexibility parameters (B-values), average (Vihinen et al., 1994) -R PMID:8090708 -A Vihinen, M., Torkkila, E. and Riikonen, P. -T Accuracy of protein flexibility predictions -J Proteins 19, 141-149 (1994) -C MIYS990104 0.965 MIYS990105 0.952 MIYS990103 0.951 - VINM940102 0.940 OOBM770103 0.936 GUYH850102 0.924 - VINM940103 0.921 FUKS010104 0.919 PARS000101 0.919 - FASG890101 0.904 MEIH800101 0.900 KRIW790101 0.890 - KARP850102 0.885 MIYS990102 0.883 MIYS990101 0.880 - PARS000102 0.877 FUKS010102 0.876 MEIH800102 0.872 - GRAR740102 0.869 CORJ870108 0.862 GUYH850103 0.860 - HOPT810101 0.859 KRIW790102 0.853 PUNT030102 0.850 - RACS770102 0.844 PARJ860101 0.837 RACS770101 0.835 - WOEC730101 0.834 RACS770103 0.830 GUYH850101 0.829 - FUKS010103 0.827 KARP850101 0.821 VINM940104 0.815 - LEVM760101 0.815 MUNV940103 0.811 PUNT030101 0.805 - PALJ810104 -0.801 WIMW960101 -0.804 DESM900101 -0.806 - NADH010105 -0.808 CORJ870102 -0.817 SWER830101 -0.817 - ROSM880105 -0.818 GEIM800107 -0.819 QIAN880120 -0.823 - CORJ870104 -0.826 QIAN880121 -0.828 LIFS790103 -0.829 - DESM900102 -0.829 CHOP780202 -0.831 ZHOH040101 -0.833 - LIFS790101 -0.834 MANP780101 -0.836 CIDH920103 -0.837 - CORJ870103 -0.848 CIDH920101 -0.854 ROBB790101 -0.858 - NADH010102 -0.859 MEIH800103 -0.861 BASU050101 -0.867 - FAUJ830101 -0.871 CIDH920102 -0.872 CORJ870105 -0.873 - CORJ870107 -0.877 PONP800103 -0.878 PONP800101 -0.878 - CORJ870106 -0.881 CIDH920104 -0.883 MIYS850101 -0.883 - PONP800102 -0.883 CIDH920105 -0.885 NADH010103 -0.889 - PONP800108 -0.891 NADH010104 -0.891 BAEK050101 -0.896 - BASU050103 -0.902 BASU050102 -0.904 RADA880108 -0.906 - PONP930101 -0.913 NISK800101 -0.922 ZHOH040103 -0.922 - CORJ870101 -0.924 BIOV880102 -0.929 WERD780101 -0.931 - BIOV880101 -0.941 ROSG850102 -0.943 CASG920101 -0.947 - NISK860101 -0.959 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.984 1.008 1.048 1.068 0.906 1.037 1.094 1.031 0.950 0.927 - 0.935 1.102 0.952 0.915 1.049 1.046 0.997 0.904 0.929 0.931 -// -H VINM940102 -D Normalized flexibility parameters (B-values) for each residue surrounded by - none rigid neighbours (Vihinen et al., 1994) -R PMID:8090708 -A Vihinen, M., Torkkila, E. and Riikonen, P. -T Accuracy of protein flexibility predictions -J Proteins 19, 141-149 (1994) -C VINM940101 0.940 MIYS990104 0.922 PARS000101 0.917 - GUYH850102 0.905 MIYS990103 0.895 MIYS990105 0.891 - OOBM770103 0.891 GUYH850103 0.875 KARP850101 0.874 - FUKS010103 0.864 VINM940103 0.855 MIYS990102 0.842 - MIYS990101 0.841 GRAR740102 0.837 FASG890101 0.836 - KARP850102 0.834 KRIW790101 0.834 PARJ860101 0.833 - MEIH800101 0.833 CORJ870108 0.810 FUKS010102 0.808 - FUKS010104 0.807 MUNV940103 0.803 PARS000102 0.803 - CORJ870105 -0.807 PLIV810101 -0.808 NADH010105 -0.809 - ROSG850101 -0.810 CHOP780202 -0.810 SWER830101 -0.811 - CORJ870107 -0.811 NADH010103 -0.812 CORJ870102 -0.812 - QIAN880120 -0.813 PONP800103 -0.820 MANP780101 -0.821 - BIOV880102 -0.826 CORJ870106 -0.830 MIYS850101 -0.832 - NADH010104 -0.834 MEEJ810101 -0.839 PONP800102 -0.842 - LIFS790101 -0.843 FAUJ830101 -0.844 PONP800101 -0.845 - RADA880108 -0.846 CORJ870101 -0.847 ROSG850102 -0.849 - CIDH920103 -0.855 LIFS790103 -0.862 ROBB790101 -0.866 - PONP930101 -0.869 PONP800108 -0.871 BAEK050101 -0.873 - CASG920101 -0.874 BASU050101 -0.874 BIOV880101 -0.876 - BASU050103 -0.880 CIDH920104 -0.884 CIDH920101 -0.885 - WERD780101 -0.886 ZHOH040101 -0.899 NISK800101 -0.900 - CIDH920105 -0.910 NISK860101 -0.919 CIDH920102 -0.925 - BASU050102 -0.937 ZHOH040103 -0.939 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.315 1.310 1.380 1.372 1.196 1.342 1.376 1.382 1.279 1.241 - 1.234 1.367 1.269 1.247 1.342 1.381 1.324 1.186 1.199 1.235 -// -H VINM940103 -D Normalized flexibility parameters (B-values) for each residue surrounded by - one rigid neighbours (Vihinen et al., 1994) -R PMID:8090708 -A Vihinen, M., Torkkila, E. and Riikonen, P. -T Accuracy of protein flexibility predictions -J Proteins 19, 141-149 (1994) -C VINM940101 0.921 MIYS990104 0.898 GUYH850102 0.895 - MIYS990103 0.886 MIYS990105 0.880 MEIH800101 0.875 - KRIW790101 0.875 BHAR880101 0.869 FASG890101 0.868 - GUYH850101 0.865 KARP850102 0.863 VINM940102 0.855 - OOBM770103 0.845 MEIH800102 0.841 RACS770102 0.839 - FUKS010104 0.838 KARP850101 0.837 KRIW790102 0.836 - RACS770101 0.829 PARS000101 0.823 MIYS990102 0.818 - MIYS990101 0.817 FUKS010102 0.809 PARS000102 0.808 - FAUJ830101 -0.804 NADH010106 -0.813 PONP800101 -0.813 - CIDH920101 -0.814 BASU050103 -0.814 PONP800103 -0.817 - PONP930101 -0.818 PONP800102 -0.820 NADH010102 -0.824 - DESM900102 -0.824 CIDH920102 -0.826 MEIH800103 -0.830 - CIDH920105 -0.832 CIDH920104 -0.835 NISK800101 -0.836 - CORJ870101 -0.837 MIYS850101 -0.849 BASU050102 -0.856 - RADA880108 -0.862 ZHOH040103 -0.882 NADH010103 -0.882 - NADH010105 -0.884 BIOV880102 -0.889 NADH010104 -0.899 - ROSG850102 -0.901 BIOV880101 -0.901 NISK860101 -0.903 - BAEK050101 -0.906 CASG920101 -0.915 WERD780101 -0.926 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.994 1.026 1.022 1.022 0.939 1.041 1.052 1.018 0.967 0.977 - 0.982 1.029 0.963 0.934 1.050 1.025 0.998 0.938 0.981 0.968 -// -H VINM940104 -D Normalized flexibility parameters (B-values) for each residue surrounded by - two rigid neighbours (Vihinen et al., 1994) -R PMID:8090708 -A Vihinen, M., Torkkila, E. and Riikonen, P. -T Accuracy of protein flexibility predictions -J Proteins 19, 141-149 (1994) -C VINM940101 0.815 JANJ780103 0.811 MEIH800102 0.808 - RACS770103 0.804 DESM900102 -0.803 CORJ870101 -0.805 - ROSG850102 -0.809 CASG920101 -0.810 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.783 0.807 0.799 0.822 0.785 0.817 0.826 0.784 0.777 0.776 - 0.783 0.834 0.806 0.774 0.809 0.811 0.795 0.796 0.788 0.781 -// -H MUNV940101 -D Free energy in alpha-helical conformation (Munoz-Serrano, 1994) -R PMID:7731949 -A Munoz, V. and Serrano, L. -T Intrinsic secondary structure propensities of the amino acids, using - statistical phi-psi matrices: comparison with experimental scales -J Proteins 20, 301-311 (1994) -C MUNV940102 0.964 ONEK900102 0.861 RACS820114 0.828 - GEOR030109 0.801 CHOP780201 -0.802 AURR980115 -0.807 - AURR980108 -0.814 PALJ810102 -0.815 AURR980112 -0.819 - AURR980114 -0.821 ROBB760101 -0.822 AURR980110 -0.822 - KANM800103 -0.826 AURR980109 -0.828 ROBB760104 -0.831 - MAXF760101 -0.833 QIAN880106 -0.835 FAUJ880113 -0.836 - QIAN880109 -0.841 KANM800101 -0.846 RACS820108 -0.859 - QIAN880108 -0.864 ISOY800101 -0.875 QIAN880107 -0.880 - PTIO830101 -0.880 BLAM930101 -0.882 ONEK900101 -0.890 - ROBB760103 -0.918 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.423 0.503 0.906 0.870 0.877 0.594 0.167 1.162 0.802 0.566 - 0.494 0.615 0.444 0.706 1.945 0.928 0.884 0.690 0.778 0.706 -// -H MUNV940102 -D Free energy in alpha-helical region (Munoz-Serrano, 1994) -R PMID:7731949 -A Munoz, V. and Serrano, L. -T Intrinsic secondary structure propensities of the amino acids, using - statistical phi-psi matrices: comparison with experimental scales -J Proteins 20, 301-311 (1994) -C MUNV940101 0.964 RACS820114 0.877 ONEK900102 0.860 - AURR980108 -0.803 ROBB760104 -0.803 CHOP780201 -0.812 - QIAN880105 -0.816 AURR980109 -0.818 AURR980114 -0.820 - KANM800103 -0.823 PALJ810102 -0.824 FAUJ880113 -0.826 - ROBB760101 -0.827 MAXF760101 -0.829 QIAN880108 -0.839 - KANM800101 -0.843 PTIO830101 -0.844 AURR980110 -0.846 - AURR980115 -0.852 AURR980112 -0.853 QIAN880106 -0.867 - BLAM930101 -0.876 ISOY800101 -0.877 QIAN880107 -0.882 - RACS820108 -0.894 ONEK900101 -0.910 ROBB760103 -0.913 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.619 0.753 1.089 0.932 1.107 0.770 0.675 1.361 1.034 0.876 - 0.740 0.784 0.736 0.968 1.780 0.969 1.053 0.910 1.009 0.939 -// -H MUNV940103 -D Free energy in beta-strand conformation (Munoz-Serrano, 1994) -R PMID:7731949 -A Munoz, V. and Serrano, L. -T Intrinsic secondary structure propensities of the amino acids, using - statistical phi-psi matrices: comparison with experimental scales -J Proteins 20, 301-311 (1994) -C GEIM800110 0.880 QIAN880134 0.858 QIAN880133 0.836 - MIYS990103 0.831 CORJ870108 0.830 MIYS990104 0.827 - PARS000101 0.826 QIAN880135 0.820 LEVM780106 0.815 - VINM940101 0.811 GEIM800108 0.806 OOBM770103 0.805 - VINM940102 0.803 GEIM800106 -0.800 PONP800102 -0.802 - CORJ870102 -0.802 SWER830101 -0.802 NISK800101 -0.813 - BASU050103 -0.814 MANP780101 -0.815 CORJ870101 -0.817 - PONP800101 -0.819 CORJ870105 -0.829 PALJ810112 -0.830 - ROBB760105 -0.832 CORJ870107 -0.832 BASU050102 -0.839 - NISK860101 -0.840 GEIM800105 -0.841 PALJ810110 -0.845 - BASU050101 -0.846 CORJ870106 -0.848 LEVM780102 -0.848 - PRAM900103 -0.848 PALJ810103 -0.857 KANM800104 -0.857 - PONP930101 -0.864 GEIM800107 -0.869 PALJ810104 -0.888 - ROBB760106 -0.888 LEVM780105 -0.891 CHOP780202 -0.892 - LIFS790103 -0.902 PTIO830102 -0.903 KANM800102 -0.916 - AVBF000101 -0.917 QIAN880119 -0.927 QIAN880121 -0.938 - LIFS790101 -0.941 QIAN880120 -0.959 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.080 0.976 1.197 1.266 0.733 1.050 1.085 1.104 0.906 0.583 - 0.789 1.026 0.812 0.685 1.412 0.987 0.784 0.755 0.665 0.546 -// -H MUNV940104 -D Free energy in beta-strand region (Munoz-Serrano, 1994) -R PMID:7731949 -A Munoz, V. and Serrano, L. -T Intrinsic secondary structure propensities of the amino acids, using - statistical phi-psi matrices: comparison with experimental scales -J Proteins 20, 301-311 (1994) -C MUNV940105 0.987 QIAN880134 0.897 FINA910102 0.896 - TANS770104 0.870 ISOY800104 0.866 ONEK900102 0.845 - CHOP780213 0.836 RACS820110 0.831 QIAN880135 0.819 - AURR980119 0.804 PTIO830101 -0.807 AVBF000101 -0.821 - FAUJ880102 -0.824 ROBB760104 -0.840 BUNA790101 -0.865 - BLAM930101 -0.904 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.978 0.784 0.915 1.038 0.573 0.863 0.962 1.405 0.724 0.502 - 0.766 0.841 0.729 0.585 2.613 0.784 0.569 0.671 0.560 0.444 -// -H MUNV940105 -D Free energy in beta-strand region (Munoz-Serrano, 1994) -R PMID:7731949 -A Munoz, V. and Serrano, L. -T Intrinsic secondary structure propensities of the amino acids, using - statistical phi-psi matrices: comparison with experimental scales -J Proteins 20, 301-311 (1994) -C MUNV940104 0.987 FINA910102 0.911 QIAN880134 0.899 - ONEK900102 0.876 TANS770104 0.846 ISOY800104 0.844 - RACS820110 0.833 QIAN880135 0.829 CHOP780213 0.826 - PTIO830101 -0.833 ONEK900101 -0.839 ROBB760104 -0.859 - BUNA790101 -0.874 BLAM930101 -0.925 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.40 1.23 1.61 1.89 1.14 1.33 1.42 2.06 1.25 1.02 - 1.33 1.34 1.12 1.07 3.90 1.20 0.99 1.10 0.98 0.87 -// -H WIMW960101 -D Free energies of transfer of AcWl-X-LL peptides from bilayer interface to - water (Wimley-White, 1996) -R PMID:8836100 -A Wimley, W.C. and White, S. -T Experimentally determined hydrophobicity scale for proteins at membrane - interfaces -J Nature Structual biol. 3, 842-848 (1996) -C ZASB820101 0.885 MEEJ800101 0.838 CIDH920102 0.837 - MEEJ800102 0.821 ZHOH040101 0.821 NOZY710101 0.818 - PARJ860101 -0.804 VINM940101 -0.804 GRAR740102 -0.804 - FUKS010102 -0.808 LEVM760101 -0.812 OOBM770103 -0.814 - WOEC730101 -0.821 HOPT810101 -0.855 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 4.08 3.91 3.83 3.02 4.49 3.67 2.23 4.24 4.08 4.52 - 4.81 3.77 4.48 5.38 3.80 4.12 4.11 6.10 5.19 4.18 -// -H KIMC930101 -D Thermodynamic beta sheet propensity (Kim-Berg, 1993) -R PMID:8459852 -A Kim, C.A. and Berg, J.M. -T Thermodynamic beta-sheet propensities measured using a zinc-finger host - peptide -J Nature 362, 267-270 (1993) -C LEVM760104 0.842 AVBF000101 -0.814 CHAM810101 -0.848 - LEVM760103 -0.861 FAUJ880102 -0.886 AVBF000102 -0.900 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.35 -0.44 -0.38 -0.41 -0.47 -0.40 -0.41 0.0 -0.46 -0.56 - -0.48 -0.41 -0.46 -0.55 -0.23 -0.39 -0.48 -0.48 -0.50 -0.53 -// -H MONM990101 -D Turn propensity scale for transmembrane helices (Monne et al., 1999) -R PMID:10329132 -A Monne, M., Hermansson, M. and von Heijne, G. -T A turn propensity scale for transmembrane helices -J J. Mol. Biol. 288, 141-145 (1999) -C PUNT030102 0.839 PUNT030101 0.839 GRAR740102 0.831 - KRIW790101 0.830 ENGD860101 0.820 PRAM900101 0.820 - MIYS990103 0.809 NADH010105 -0.815 KYTJ820101 -0.842 - DESM900101 -0.848 NADH010104 -0.848 DESM900102 -0.850 - JURD980101 -0.853 NADH010101 -0.860 NADH010103 -0.862 - NADH010102 -0.871 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.5 1.7 1.7 1.6 0.6 1.6 1.6 1.3 1.6 0.6 - 0.4 1.6 0.5 0.4 1.7 0.7 0.4 0.7 0.6 0.5 -// -H BLAM930101 -D Alpha helix propensity of position 44 in T4 lysozyme (Blaber et al., 1993) -R PMID:8503008 -A Blaber, M., Zhang, X.J. and Matthews, B.W. -T Structural basis of amino acid alpha helix propensity -J Science 260, 1637-1640 (1993) -C ONEK900101 0.965 BUNA790101 0.945 ROBB760103 0.883 - ROBB760104 0.878 PTIO830101 0.868 QIAN880108 0.860 - FAUJ880113 0.839 QIAN880109 0.828 CHOP780213 -0.824 - QIAN880134 -0.836 TANS770104 -0.837 ISOY800104 -0.860 - RACS820114 -0.862 AVBF000104 -0.872 MUNV940102 -0.876 - MUNV940101 -0.882 GEOR030109 -0.889 MUNV940104 -0.904 - MUNV940105 -0.925 FINA910102 -0.961 ONEK900102 -0.974 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.96 0.77 0.39 0.42 0.42 0.80 0.53 0.00 0.57 0.84 - 0.92 0.73 0.86 0.59 -2.50 0.53 0.54 0.58 0.72 0.63 -// -H PARS000101 -D p-Values of mesophilic proteins based on the distributions of B values - (Parthasarathy-Murthy, 2000) -R PMID:10679524 -A Parthasarathy, S. and Murthy, M.R. -T Protein thermal stability: insights from atomic displacement parameters (B - values) -J Protein Eng. 13, 9-13 (2000) -C VINM940101 0.919 VINM940102 0.917 MIYS990104 0.903 - MIYS990103 0.879 MIYS990105 0.877 OOBM770103 0.864 - CORJ870108 0.854 KARP850102 0.852 GUYH850102 0.839 - GEIM800110 0.831 MIYS990102 0.830 MIYS990101 0.830 - MUNV940103 0.826 VINM940103 0.823 GUYH850103 0.822 - KARP850101 0.816 MEIH800101 0.813 PARJ860101 0.812 - RACS770101 0.804 KRIW790101 0.804 CORJ870104 -0.800 - ROSG850101 -0.805 QIAN880121 -0.809 BIOV880102 -0.813 - CORJ870103 -0.815 BIOV880101 -0.819 ROBB790101 -0.819 - ROSG850102 -0.820 BASU050103 -0.820 BAEK050101 -0.821 - CIDH920103 -0.821 MIYS850101 -0.821 CASG920101 -0.826 - NOZY710101 -0.829 NISK800101 -0.832 BASU050101 -0.835 - LIFS790101 -0.844 ZHOH040101 -0.845 SWER830101 -0.846 - ZHOH040103 -0.846 CORJ870102 -0.848 PONP930101 -0.849 - WERD780101 -0.853 CIDH920105 -0.860 LIFS790103 -0.861 - QIAN880120 -0.863 BASU050102 -0.864 CORJ870107 -0.865 - CIDH920102 -0.871 CIDH920101 -0.877 CORJ870105 -0.878 - NISK860101 -0.884 CORJ870106 -0.891 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.343 0.353 0.409 0.429 0.319 0.395 0.405 0.389 0.307 0.296 - 0.287 0.429 0.293 0.292 0.432 0.416 0.362 0.268 0.22 0.307 -// -H PARS000102 -D p-Values of thermophilic proteins based on the distributions of B values - (Parthasarathy-Murthy, 2000) -R PMID:10679524 -A Parthasarathy, S. and Murthy, M.R. -T Protein thermal stability: insights from atomic displacement parameters (B - values) -J Protein Eng. 13, 9-13 (2000) -C VINM940101 0.877 FUKS010102 0.868 FUKS010104 0.850 - VINM940103 0.808 VINM940102 0.803 NISK800101 -0.814 - CORJ870101 -0.850 CASG920101 -0.859 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.320 0.327 0.384 0.424 0.198 0.436 0.514 0.374 0.299 0.306 - 0.340 0.446 0.313 0.314 0.354 0.376 0.339 0.291 0.287 0.294 -// -H KUMS000101 -D Distribution of amino acid residues in the 18 non-redundant families of - thermophilic proteins (Kumar et al., 2000) -R PMID:10775659 -A Kumar, S., Tsai, C.J. and Nussinov, R. -T Factors enhancing protein thermostability -J Protein Eng. 13, 179-191 (2000) -C KUMS000102 0.971 FUKS010110 0.947 FUKS010109 0.894 - JUKT750101 0.879 CEDJ970104 0.871 DAYM780101 0.866 - JOND920101 0.863 NAKH900101 0.856 JUNJ780101 0.854 - CEDJ970101 0.830 CEDJ970102 0.826 FUKS010111 0.826 - NAKH920107 0.800 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 8.9 4.6 4.4 6.3 0.6 2.8 6.9 9.4 2.2 7.0 - 7.4 6.1 2.3 3.3 4.2 4.0 5.7 1.3 4.5 8.2 -// -H KUMS000102 -D Distribution of amino acid residues in the 18 non-redundant families of - mesophilic proteins (Kumar et al., 2000) -R PMID:10775659 -A Kumar, S., Tsai, C.J. and Nussinov, R. -T Factors enhancing protein thermostability -J Protein Eng. 13, 179-191 (2000) -C KUMS000101 0.971 JUKT750101 0.948 FUKS010110 0.943 - JUNJ780101 0.927 DAYM780101 0.925 CEDJ970101 0.914 - JOND920101 0.909 CEDJ970104 0.908 FUKS010111 0.898 - NAKH900101 0.894 CEDJ970102 0.881 FUKS010109 0.850 - NAKH920107 0.839 NAKH900109 0.837 FUKS010112 0.819 - CEDJ970103 0.812 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 9.2 3.6 5.1 6.0 1.0 2.9 6.0 9.4 2.1 6.0 - 7.7 6.5 2.4 3.4 4.2 5.5 5.7 1.2 3.7 8.2 -// -H KUMS000103 -D Distribution of amino acid residues in the alpha-helices in thermophilic - proteins (Kumar et al., 2000) -R PMID:10775659 -A Kumar, S., Tsai, C.J. and Nussinov, R. -T Factors enhancing protein thermostability -J Protein Eng. 13, 179-191 (2000) -C KUMS000104 0.961 FUKS010110 0.827 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 14.1 5.5 3.2 5.7 0.1 3.7 8.8 4.1 2.0 7.1 - 9.1 7.7 3.3 5.0 0.7 3.9 4.4 1.2 4.5 5.9 -// -H KUMS000104 -D Distribution of amino acid residues in the alpha-helices in mesophilic - proteins (Kumar et al., 2000) -R PMID:10775659 -A Kumar, S., Tsai, C.J. and Nussinov, R. -T Factors enhancing protein thermostability -J Protein Eng. 13, 179-191 (2000) -C KUMS000103 0.961 FUKS010110 0.861 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 13.4 3.9 3.7 4.6 0.8 4.8 7.8 4.6 3.3 6.5 - 10.6 7.5 3.0 4.5 1.3 3.8 4.6 1.0 3.3 7.1 -// -H TAKK010101 -D Side-chain contribution to protein stability (kJ/mol) (Takano-Yutani, 2001) -R PMID:11579219 -A Takano, K., Yutani, K. -T A new scale for side-chain contribution to protein stability based on the - empirical stability analysis of mutant proteins -J Protein Eng. 14, 525-528 (2001) -C SIMZ760101 0.936 ARGP820101 0.906 JOND750101 0.906 - MEEJ800102 0.891 NOZY710101 0.884 ZHOH040102 0.874 - GOLD730101 0.872 CIDH920102 0.859 ZIMJ680105 0.856 - ZHOH040101 0.846 LEVM760106 0.841 ZIMJ680102 0.840 - CIDH920105 0.840 ROSM880104 0.840 BROC820102 0.839 - BROC820101 0.836 MEEJ810101 0.836 RADA880102 0.830 - PLIV810101 0.822 MEEJ810102 0.819 LEVM760107 0.819 - VENT840101 0.812 WOLS870101 -0.858 BULH740101 -0.865 - PARJ860101 -0.870 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 9.8 7.3 3.6 4.9 3.0 2.4 4.4 0 11.9 17.2 - 17.0 10.5 11.9 23.0 15.0 2.6 6.9 24.2 17.2 15.3 -// -H FODM020101 -D Propensity of amino acids within pi-helices (Fodje-Al-Karadaghi, 2002) -R PMID:12034854 -A Fodje, M.N. and Al-Karadaghi, S. -T Occurrence, conformational features and amino acid propensities for the - pi-helix -J Protein Eng. 15, 353-358 (2002) -C TANS770104 -0.802 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.70 0.95 1.47 0.87 1.17 0.73 0.96 0.64 1.39 1.29 - 1.44 0.91 0.91 1.34 0.12 0.84 0.74 1.80 1.68 1.20 -// -H NADH010101 -D Hydropathy scale based on self-information values in the two-state model (5% - accessibility) (Naderi-Manesh et al., 2001) -R PMID:11170200 -A Naderi-Manesh, H., Sadeghi, M., Arab, S. and Moosavi Movahedi, A.A. -T Prediction of protein surface accessibility with information theory -J Proteins 42, 452-459 (2001) -C JURD980101 0.925 KYTJ820101 0.918 NADH010105 0.912 - DESM900102 0.905 NADH010103 0.904 RADA880101 0.902 - NADH010102 0.898 NADH010104 0.895 JANJ780102 0.892 - CHOC760103 0.881 EISD860103 0.868 CIDH920104 0.865 - EISD840101 0.861 BLAS910101 0.855 BASU050103 0.852 - WOLR810101 0.848 JANJ790101 0.847 MANP780101 0.847 - OLSK800101 0.843 RADA880108 0.838 BIOV880101 0.838 - FAUJ830101 0.837 PONP800103 0.833 ROSG850102 0.833 - PONP800102 0.832 CORJ870101 0.827 PONP800101 0.826 - WOLR790101 0.826 ROSM880105 0.825 DESM900101 0.825 - MEIH800103 0.824 PONP800108 0.820 RADA880104 0.819 - MIYS850101 0.815 PONP930101 0.813 NISK800101 0.813 - NISK860101 0.810 JANJ790102 0.808 CHOC760104 0.804 - BIOV880102 0.804 ZHOH040103 0.803 KIDA850101 -0.803 - GUYH850104 -0.804 JANJ780103 -0.804 RACS770102 -0.808 - MIYS990104 -0.810 FAUJ880110 -0.813 MIYS990102 -0.815 - MIYS990101 -0.816 MEIH800102 -0.818 MIYS990105 -0.821 - MIYS990103 -0.825 KRIW790101 -0.827 VHEG790101 -0.827 - FASG890101 -0.838 ENGD860101 -0.843 PRAM900101 -0.843 - GUYH850105 -0.847 GRAR740102 -0.859 MONM990101 -0.860 - OOBM770101 -0.861 PUNT030101 -0.862 GUYH850101 -0.862 - ROSM880101 -0.866 ROSM880102 -0.870 PUNT030102 -0.872 - KUHL950101 -0.898 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 58 -184 -93 -97 116 -139 -131 -11 -73 107 - 95 -24 78 92 -79 -34 -7 59 -11 100 -// -H NADH010102 -D Hydropathy scale based on self-information values in the two-state model (9% - accessibility) (Naderi-Manesh et al., 2001) -R PMID:11170200 -A Naderi-Manesh, H., Sadeghi, M., Arab, S. and Moosavi Movahedi, A.A. -T Prediction of protein surface accessibility with information theory -J Proteins 42, 452-459 (2001) -C NADH010103 0.986 NADH010104 0.968 JANJ780102 0.949 - ROSG850102 0.948 JANJ790102 0.945 DESM900102 0.933 - JURD980101 0.931 BIOV880101 0.921 PONP800103 0.921 - KYTJ820101 0.920 BIOV880102 0.914 RADA880108 0.911 - CHOC760103 0.910 CORJ870101 0.909 MEIH800103 0.907 - PONP800102 0.901 NADH010101 0.898 FAUJ830101 0.891 - PONP800108 0.890 CASG920101 0.889 EISD840101 0.887 - BASU050103 0.886 DESM900101 0.885 NISK800101 0.881 - PONP930101 0.880 MIYS850101 0.878 NISK860101 0.878 - NADH010105 0.876 PONP800101 0.875 JANJ790101 0.872 - EISD860103 0.872 WARP780101 0.870 ZHOH040103 0.864 - MANP780101 0.863 OLSK800101 0.856 CIDH920104 0.856 - COWR900101 0.848 RADA880101 0.845 ROSM880105 0.845 - WERD780101 0.841 BLAS910101 0.824 RADA880107 0.823 - CORJ870103 0.823 CHOC760104 0.817 CORJ870107 0.812 - BASU050101 0.812 NADH010106 0.808 BASU050102 0.802 - WOEC730101 -0.800 FUKS010104 -0.801 CORJ870108 -0.803 - KARP850102 -0.807 HOPT810101 -0.820 VINM940103 -0.824 - GUYH850102 -0.824 KRIW710101 -0.825 ROSM880101 -0.830 - KUHL950101 -0.836 OOBM770103 -0.838 MEIH800101 -0.847 - VINM940101 -0.859 GUYH850105 -0.867 MIYS990101 -0.870 - ENGD860101 -0.870 PRAM900101 -0.870 MONM990101 -0.871 - MIYS990102 -0.872 PUNT030102 -0.872 KIDA850101 -0.874 - RACS770103 -0.876 ROSM880102 -0.881 GRAR740102 -0.881 - KRIW790102 -0.890 CHOC760102 -0.893 PUNT030101 -0.897 - RACS770102 -0.899 GUYH850101 -0.910 MIYS990104 -0.910 - MIYS990105 -0.923 MIYS990103 -0.923 JANJ780101 -0.924 - MEIH800102 -0.928 KRIW790101 -0.929 FASG890101 -0.929 - JANJ780103 -0.938 OOBM770101 -0.944 GUYH850104 -0.946 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 51 -144 -84 -78 137 -128 -115 -13 -55 106 - 103 -205 73 108 -79 -26 -3 69 11 108 -// -H NADH010103 -D Hydropathy scale based on self-information values in the two-state model (16% - accessibility) (Naderi-Manesh et al., 2001) -R PMID:11170200 -A Naderi-Manesh, H., Sadeghi, M., Arab, S. and Moosavi Movahedi, A.A. -T Prediction of protein surface accessibility with information theory -J Proteins 42, 452-459 (2001) -C NADH010104 0.996 NADH010102 0.986 ROSG850102 0.958 - BIOV880101 0.939 NADH010105 0.936 PONP800103 0.932 - JANJ780102 0.923 CORJ870101 0.921 RADA880108 0.919 - PONP800102 0.919 CASG920101 0.914 ZHOH040103 0.913 - BIOV880102 0.913 NISK860101 0.910 DESM900102 0.910 - NISK800101 0.908 PONP800108 0.907 NADH010101 0.904 - BASU050103 0.903 MEIH800103 0.901 JURD980101 0.900 - JANJ790102 0.899 FAUJ830101 0.899 PONP930101 0.898 - MIYS850101 0.896 PONP800101 0.894 KYTJ820101 0.885 - CIDH920104 0.885 NADH010106 0.881 WERD780101 0.880 - JANJ790101 0.879 MANP780101 0.878 CHOC760103 0.875 - DESM900101 0.866 BASU050102 0.862 EISD860103 0.855 - BAEK050101 0.853 EISD840101 0.840 BASU050101 0.839 - CORJ870103 0.830 COWR900101 0.825 ROSM880105 0.822 - CORJ870107 0.817 BLAS910101 0.812 WARP780101 0.811 - CIDH920105 0.810 QIAN880122 0.809 RADA880101 0.809 - OLSK800101 0.807 PLIV810101 0.804 GUOD860101 0.803 - CORJ870104 0.802 FUKS010104 -0.805 HOPT810101 -0.805 - RACS770101 -0.807 KUHL950101 -0.807 VINM940102 -0.812 - CORJ870108 -0.812 GUYH850105 -0.815 ENGD860101 -0.815 - PRAM900101 -0.815 KARP850102 -0.834 CHOC760102 -0.840 - RACS770103 -0.851 ROSM880102 -0.857 KIDA850101 -0.859 - KRIW710101 -0.860 OOBM770103 -0.861 MONM990101 -0.862 - PUNT030102 -0.865 GUYH850102 -0.866 MEIH800101 -0.868 - PUNT030101 -0.868 JANJ780101 -0.868 GRAR740102 -0.881 - VINM940103 -0.882 MIYS990101 -0.887 KRIW790102 -0.887 - MIYS990102 -0.889 VINM940101 -0.889 JANJ780103 -0.892 - RACS770102 -0.893 GUYH850104 -0.899 OOBM770101 -0.902 - MEIH800102 -0.916 GUYH850101 -0.916 MIYS990104 -0.938 - MIYS990105 -0.939 MIYS990103 -0.944 FASG890101 -0.945 - KRIW790101 -0.954 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 41 -109 -74 -47 169 -104 -90 -18 -35 104 - 103 -148 77 128 -81 -31 10 102 36 116 -// -H NADH010104 -D Hydropathy scale based on self-information values in the two-state model (20% - accessibility) (Naderi-Manesh et al., 2001) -R PMID:11170200 -A Naderi-Manesh, H., Sadeghi, M., Arab, S. and Moosavi Movahedi, A.A. -T Prediction of protein surface accessibility with information theory -J Proteins 42, 452-459 (2001) -C NADH010103 0.996 NADH010102 0.968 NADH010105 0.957 - ROSG850102 0.953 BIOV880101 0.937 PONP800103 0.926 - ZHOH040103 0.925 PONP800102 0.917 CASG920101 0.915 - NISK860101 0.915 RADA880108 0.915 NADH010106 0.914 - CORJ870101 0.914 NISK800101 0.909 PONP800108 0.902 - BIOV880102 0.900 BASU050103 0.899 JANJ780102 0.898 - MIYS850101 0.897 NADH010101 0.895 PONP930101 0.895 - FAUJ830101 0.894 PONP800101 0.892 MEIH800103 0.890 - WERD780101 0.890 CIDH920104 0.888 DESM900102 0.886 - BASU050102 0.879 BAEK050101 0.875 MANP780101 0.873 - JURD980101 0.873 JANJ790101 0.871 JANJ790102 0.868 - KYTJ820101 0.856 CHOC760103 0.848 DESM900101 0.843 - EISD860103 0.840 BASU050101 0.837 CORJ870103 0.820 - CIDH920105 0.817 EISD840101 0.809 CORJ870107 0.808 - COWR900101 0.807 PLIV810101 0.806 QIAN880122 0.804 - GUOD860101 0.803 CORJ870108 -0.805 CHOC760102 -0.809 - RACS770101 -0.813 RACS770103 -0.832 JANJ780101 -0.832 - VINM940102 -0.834 KARP850102 -0.835 ROSM880102 -0.839 - KIDA850101 -0.842 PUNT030101 -0.843 MONM990101 -0.848 - PUNT030102 -0.851 JANJ780103 -0.860 OOBM770103 -0.863 - MEIH800101 -0.867 GUYH850104 -0.867 GRAR740102 -0.868 - OOBM770101 -0.871 KRIW710101 -0.874 GUYH850102 -0.879 - KRIW790102 -0.882 RACS770102 -0.883 MIYS990101 -0.885 - MIYS990102 -0.888 VINM940101 -0.891 VINM940103 -0.899 - MEIH800102 -0.900 GUYH850101 -0.910 MIYS990105 -0.934 - MIYS990104 -0.940 MIYS990103 -0.944 FASG890101 -0.944 - KRIW790101 -0.958 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 32 -95 -73 -29 182 -95 -74 -22 -25 106 - 104 -124 82 132 -82 -34 20 118 44 113 -// -H NADH010105 -D Hydropathy scale based on self-information values in the two-state model (25% - accessibility) (Naderi-Manesh et al., 2001) -R PMID:11170200 -A Naderi-Manesh, H., Sadeghi, M., Arab, S. and Moosavi Movahedi, A.A. -T Prediction of protein surface accessibility with information theory -J Proteins 42, 452-459 (2001) -C NADH010106 0.958 NADH010104 0.957 NADH010103 0.936 - NADH010101 0.912 ZHOH040103 0.890 NADH010102 0.876 - PONP800102 0.869 CIDH920104 0.869 BASU050102 0.869 - BIOV880101 0.867 PONP800103 0.866 ROSG850102 0.865 - NISK860101 0.863 NISK800101 0.860 BASU050103 0.857 - PONP800101 0.853 BAEK050101 0.850 CORJ870101 0.846 - PONP800108 0.845 RADA880108 0.845 MIYS850101 0.844 - JANJ790101 0.843 MANP780101 0.842 PONP930101 0.839 - CASG920101 0.838 WERD780101 0.837 FAUJ830101 0.822 - JURD980101 0.821 DESM900102 0.816 MEIH800103 0.816 - JANJ780102 0.814 BASU050101 0.811 KYTJ820101 0.804 - CIDH920105 0.800 RACS770102 -0.800 MEIH800101 -0.806 - VINM940101 -0.808 VINM940102 -0.809 GRAR740102 -0.812 - MONM990101 -0.815 GUYH850102 -0.826 MIYS990101 -0.837 - MIYS990102 -0.838 KRIW710101 -0.842 GUYH850101 -0.855 - MIYS990105 -0.856 MIYS990104 -0.874 FASG890101 -0.877 - MIYS990103 -0.879 VINM940103 -0.884 KRIW790101 -0.898 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 24 -79 -76 0 194 -87 -57 -28 -31 102 - 103 -9 90 131 -85 -36 34 116 43 111 -// -H NADH010106 -D Hydropathy scale based on self-information values in the two-state model (36% - accessibility) (Naderi-Manesh et al., 2001) -R PMID:11170200 -A Naderi-Manesh, H., Sadeghi, M., Arab, S. and Moosavi Movahedi, A.A. -T Prediction of protein surface accessibility with information theory -J Proteins 42, 452-459 (2001) -C NADH010105 0.958 NADH010104 0.914 NADH010103 0.881 - ZHOH040103 0.819 NADH010107 0.811 BAEK050101 0.809 - NADH010102 0.808 PONP800103 0.803 VINM940103 -0.813 - KRIW710101 -0.846 KRIW790101 -0.861 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 5 -57 -77 45 224 -67 -8 -47 -50 83 - 82 -38 83 117 -103 -41 79 130 27 117 -// -H NADH010107 -D Hydropathy scale based on self-information values in the two-state model (50% - accessibility) (Naderi-Manesh et al., 2001) -R PMID:11170200 -A Naderi-Manesh, H., Sadeghi, M., Arab, S. and Moosavi Movahedi, A.A. -T Prediction of protein surface accessibility with information theory -J Proteins 42, 452-459 (2001) -C NADH010106 0.811 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -2 -41 -97 248 329 -37 117 -66 -70 28 - 36 115 62 120 -132 -52 174 179 -7 114 -// -H MONM990201 -D Averaged turn propensities in a transmembrane helix (Monne et al., 1999) -R PMID:10543969 -A Monne, M., Nilsson, I., Elofsson, A. and von Heijne, G. -T Turns in transmembrane helices: determination of the minimal length of a - "helical hairpin" and derivation of a fine-grained turn propensity scale -J J. Mol. Biol. 293, 807-814 (1999) -C FINA910101 0.812 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.4 1.5 1.6 1.5 0.7 1.4 1.3 1.1 1.4 0.5 - 0.3 1.4 0.5 0.3 1.6 0.9 0.7 0.9 0.9 0.4 -// -H KOEP990101 -D Alpha-helix propensity derived from designed sequences (Koehl-Levitt, 1999) -R PMID:10535955 -A Koehl, P. and Levitt, M. -T Structure-based conformational preferences of amino acids -J Proc Natl Acad Sci U S A. 96, 12524-12529 (1999) (Pro missing) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.04 -0.30 0.25 0.27 0.57 -0.02 -0.33 1.24 -0.11 -0.26 - -0.38 -0.18 -0.09 -0.01 0. 0.15 0.39 0.21 0.05 -0.06 -// -H KOEP990102 -D Beta-sheet propensity derived from designed sequences (Koehl-Levitt, 1999) -R PMID:10535955 -A Koehl, P. and Levitt, M. -T Structure-based conformational preferences of amino acids -J Proc Natl Acad Sci U S A. 96, 12524-12529 (1999) (Pro!) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.12 0.34 1.05 1.12 -0.63 1.67 0.91 0.76 1.34 -0.77 - 0.15 0.29 -0.71 -0.67 0. 1.45 -0.70 -0.14 -0.49 -0.70 -// -H CEDJ970101 -D Composition of amino acids in extracellular proteins (percent) (Cedano et - al., 1997) -R PMID:9067612 -A Cedano, J., Aloy, P., Perez-Pons, J.A. and Querol, E. -T Relation between amino acid composition and cellular location of proteins -J J. Mol. Biol. 266, 594-600 (1997) -C JUKT750101 0.973 DAYM780101 0.970 JOND920101 0.968 - JUNJ780101 0.968 CEDJ970102 0.965 NAKH900101 0.954 - CEDJ970104 0.944 KUMS000102 0.914 FUKS010110 0.889 - CEDJ970103 0.889 FUKS010112 0.882 FUKS010111 0.878 - NAKH900109 0.861 NAKH920107 0.860 NAKH920104 0.859 - NAKH920101 0.850 NAKH920103 0.843 NAKH900102 0.832 - KUMS000101 0.830 NAKH920106 0.826 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 8.6 4.2 4.6 4.9 2.9 4.0 5.1 7.8 2.1 4.6 - 8.8 6.3 2.5 3.7 4.9 7.3 6.0 1.4 3.6 6.7 -// -H CEDJ970102 -D Composition of amino acids in anchored proteins (percent) (Cedano et al., - 1997) -R PMID:9067612 -A Cedano, J., Aloy, P., Perez-Pons, J.A. and Querol, E. -T Relation between amino acid composition and cellular location of proteins -J J. Mol. Biol. 266, 594-600 (1997) -C JOND920101 0.995 NAKH900101 0.988 CEDJ970104 0.976 - CEDJ970101 0.965 FUKS010112 0.946 DAYM780101 0.945 - JUKT750101 0.942 FUKS010110 0.921 JUNJ780101 0.920 - CEDJ970103 0.912 NAKH920103 0.906 NAKH920104 0.905 - NAKH920101 0.898 NAKH920107 0.891 NAKH920106 0.886 - KUMS000102 0.881 NAKH900109 0.865 NAKH900102 0.841 - FUKS010109 0.839 CEDJ970105 0.835 KUMS000101 0.826 - FUKS010111 0.819 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 7.6 5.0 4.4 5.2 2.2 4.1 6.2 6.9 2.1 5.1 - 9.4 5.8 2.1 4.0 5.4 7.2 6.1 1.4 3.2 6.7 -// -H CEDJ970103 -D Composition of amino acids in membrane proteins (percent) (Cedano et al., - 1997) -R PMID:9067612 -A Cedano, J., Aloy, P., Perez-Pons, J.A. and Querol, E. -T Relation between amino acid composition and cellular location of proteins -J J. Mol. Biol. 266, 594-600 (1997) -C NAKH900109 0.970 FUKS010106 0.919 CEDJ970102 0.912 - JOND920101 0.911 NAKH900101 0.908 FUKS010105 0.901 - FUKS010108 0.897 CEDJ970101 0.889 NAKH900111 0.865 - FUKS010107 0.860 CEDJ970104 0.854 FUKS010112 0.850 - FUKS010110 0.848 NAKH920105 0.836 JUKT750101 0.835 - NAKH900107 0.820 NAKH900103 0.815 KUMS000102 0.812 - NAKH920108 0.811 DAYM780101 0.807 JUNJ780101 0.806 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 8.1 4.6 3.7 3.8 2.0 3.1 4.6 7.0 2.0 6.7 - 11.0 4.4 2.8 5.6 4.7 7.3 5.6 1.8 3.3 7.7 -// -H CEDJ970104 -D Composition of amino acids in intracellular proteins (percent) (Cedano et - al., 1997) -R PMID:9067612 -A Cedano, J., Aloy, P., Perez-Pons, J.A. and Querol, E. -T Relation between amino acid composition and cellular location of proteins -J J. Mol. Biol. 266, 594-600 (1997) -C JOND920101 0.983 NAKH900101 0.978 CEDJ970102 0.976 - FUKS010112 0.956 FUKS010110 0.956 DAYM780101 0.952 - CEDJ970101 0.944 JUKT750101 0.942 NAKH920106 0.923 - JUNJ780101 0.921 NAKH920101 0.920 KUMS000102 0.908 - FUKS010109 0.901 KUMS000101 0.871 NAKH920104 0.865 - NAKH920103 0.863 NAKH900102 0.860 NAKH920107 0.857 - CEDJ970103 0.854 CEDJ970105 0.852 NAKH920102 0.834 - NAKH900109 0.821 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 7.9 4.9 4.0 5.5 1.9 4.4 7.1 7.1 2.1 5.2 - 8.6 6.7 2.4 3.9 5.3 6.6 5.3 1.2 3.1 6.8 -// -H CEDJ970105 -D Composition of amino acids in nuclear proteins (percent) (Cedano et al., - 1997) -R PMID:9067612 -A Cedano, J., Aloy, P., Perez-Pons, J.A. and Querol, E. -T Relation between amino acid composition and cellular location of proteins -J J. Mol. Biol. 266, 594-600 (1997) -C NAKH920101 0.942 NAKH920106 0.930 NAKH900102 0.903 - NAKH900101 0.860 CEDJ970104 0.852 NAKH920102 0.843 - DAYM780101 0.839 CEDJ970102 0.835 JOND920101 0.834 - JUNJ780101 0.803 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 8.3 8.7 3.7 4.7 1.6 4.7 6.5 6.3 2.1 3.7 - 7.4 7.9 2.3 2.7 6.9 8.8 5.1 0.7 2.4 5.3 -// -H FUKS010101 -D Surface composition of amino acids in intracellular proteins of thermophiles - (percent) (Fukuchi-Nishikawa, 2001) -R PMID:11399062 -A Fukuchi, S. and Nishikawa, K. -T Protein surface amino acid compositions distinctively differ between - thermophilic and mesophilic bacteria -J J. Mol. Biol. 309, 835-843 (2001) -C FUKS010102 0.932 FUKS010104 0.885 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 4.47 8.48 3.89 7.05 0.29 2.87 16.56 8.29 1.74 3.30 - 5.06 12.98 1.71 2.32 5.41 4.27 3.83 0.67 2.75 4.05 -// -H FUKS010102 -D Surface composition of amino acids in intracellular proteins of mesophiles - (percent) (Fukuchi-Nishikawa, 2001) -R PMID:11399062 -A Fukuchi, S. and Nishikawa, K. -T Protein surface amino acid compositions distinctively differ between - thermophilic and mesophilic bacteria -J J. Mol. Biol. 309, 835-843 (2001) -C FUKS010104 0.938 FUKS010101 0.932 VINM940101 0.876 - PARS000102 0.868 HOPT810101 0.854 LEVM760101 0.837 - WOEC730101 0.820 MIYS990104 0.818 MIYS990105 0.813 - VINM940103 0.809 VINM940102 0.808 MIYS990103 0.803 - WERD780101 -0.801 FAUJ830101 -0.805 WIMW960101 -0.808 - BIOV880102 -0.810 RADA880108 -0.815 BIOV880101 -0.820 - CASG920101 -0.831 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.77 6.87 5.50 8.57 0.31 5.24 12.93 7.95 2.80 2.72 - 4.43 10.20 1.87 1.92 4.79 5.41 5.36 0.54 2.26 3.57 -// -H FUKS010103 -D Surface composition of amino acids in extracellular proteins of mesophiles - (percent) (Fukuchi-Nishikawa, 2001) -R PMID:11399062 -A Fukuchi, S. and Nishikawa, K. -T Protein surface amino acid compositions distinctively differ between - thermophilic and mesophilic bacteria -J J. Mol. Biol. 309, 835-843 (2001) -C GUYH850103 0.874 VINM940102 0.864 GUYH850102 0.848 - KARP850102 0.835 KARP850101 0.834 MEIH800101 0.832 - VINM940101 0.827 MIYS990104 0.822 RACS770101 0.819 - CORJ870108 0.818 FASG890101 0.812 MIYS990103 0.805 - PONP800101 -0.801 CIDH920103 -0.804 PLIV810101 -0.805 - CORJ870107 -0.805 ZHOH040103 -0.808 ROSG850102 -0.808 - BASU050102 -0.809 ROSG850101 -0.819 CIDH920105 -0.821 - CIDH920102 -0.826 MIYS850101 -0.828 CORJ870105 -0.829 - LEVM760106 -0.829 BIOV880101 -0.840 RADA880108 -0.840 - CORJ870106 -0.846 NISK860101 -0.850 CIDH920101 -0.854 - ROBB790101 -0.865 WERD780101 -0.869 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 7.43 4.51 9.12 8.71 0.42 5.42 5.86 9.40 1.49 1.76 - 2.74 9.67 0.60 1.18 5.60 9.60 8.95 1.18 3.26 3.10 -// -H FUKS010104 -D Surface composition of amino acids in nuclear proteins (percent) - (Fukuchi-Nishikawa, 2001) -R PMID:11399062 -A Fukuchi, S. and Nishikawa, K. -T Protein surface amino acid compositions distinctively differ between - thermophilic and mesophilic bacteria -J J. Mol. Biol. 309, 835-843 (2001) -C FUKS010102 0.938 VINM940101 0.919 FUKS010101 0.885 - HOPT810101 0.884 MIYS990105 0.870 LEVM760101 0.869 - MIYS990104 0.862 KRIW790102 0.853 PARS000102 0.850 - OOBM770103 0.849 MIYS990103 0.845 FASG890101 0.844 - VINM940103 0.838 KRIW790101 0.828 MEIH800102 0.822 - KARP850102 0.822 GUYH850102 0.819 NAKH920106 0.818 - KIDA850101 0.814 VINM940102 0.807 NADH010102 -0.801 - ZHOH040103 -0.803 NADH010103 -0.805 CORJ870101 -0.814 - WERD780101 -0.832 NISK860101 -0.832 FAUJ830101 -0.832 - RADA880108 -0.851 BIOV880101 -0.873 ROSG850102 -0.877 - BIOV880102 -0.887 CASG920101 -0.892 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 5.22 7.30 6.06 7.91 1.01 6.00 10.66 5.81 2.27 2.36 - 4.52 12.68 1.85 1.68 5.70 6.99 5.16 0.56 2.16 4.10 -// -H FUKS010105 -D Interior composition of amino acids in intracellular proteins of thermophiles - (percent) (Fukuchi-Nishikawa, 2001) -R PMID:11399062 -A Fukuchi, S. and Nishikawa, K. -T Protein surface amino acid compositions distinctively differ between - thermophilic and mesophilic bacteria -J J. Mol. Biol. 309, 835-843 (2001) -C FUKS010106 0.982 NAKH920105 0.929 FUKS010108 0.923 - NAKH900111 0.911 CEDJ970103 0.901 NAKH900109 0.892 - FUKS010107 0.891 NAKH920108 0.890 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 9.88 3.71 2.35 3.50 1.12 1.66 4.02 6.88 1.88 10.08 - 13.21 3.39 2.44 5.27 3.80 4.10 4.98 1.11 4.07 12.53 -// -H FUKS010106 -D Interior composition of amino acids in intracellular proteins of mesophiles - (percent) (Fukuchi-Nishikawa, 2001) -R PMID:11399062 -A Fukuchi, S. and Nishikawa, K. -T Protein surface amino acid compositions distinctively differ between - thermophilic and mesophilic bacteria -J J. Mol. Biol. 309, 835-843 (2001) -C FUKS010105 0.982 NAKH900111 0.933 NAKH920105 0.931 - NAKH900109 0.927 FUKS010108 0.927 FUKS010107 0.924 - CEDJ970103 0.919 NAKH920108 0.898 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 10.98 3.26 2.85 3.37 1.47 2.30 3.51 7.48 2.20 9.74 - 12.79 2.54 3.10 4.97 3.42 4.93 5.55 1.28 3.55 10.69 -// -H FUKS010107 -D Interior composition of amino acids in extracellular proteins of mesophiles - (percent) (Fukuchi-Nishikawa, 2001) -R PMID:11399062 -A Fukuchi, S. and Nishikawa, K. -T Protein surface amino acid compositions distinctively differ between - thermophilic and mesophilic bacteria -J J. Mol. Biol. 309, 835-843 (2001) -C FUKS010106 0.924 NAKH900109 0.903 FUKS010105 0.891 - NAKH900111 0.867 CEDJ970103 0.860 NAKH920105 0.833 - FUKS010108 0.832 NAKH920108 0.817 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 9.95 3.05 4.84 4.46 1.30 2.64 2.58 8.87 1.99 7.73 - 9.66 2.00 2.45 5.41 3.20 6.03 5.62 2.60 6.15 9.46 -// -H FUKS010108 -D Interior composition of amino acids in nuclear proteins (percent) - (Fukuchi-Nishikawa, 2001) -R PMID:11399062 -A Fukuchi, S. and Nishikawa, K. -T Protein surface amino acid compositions distinctively differ between - thermophilic and mesophilic bacteria -J J. Mol. Biol. 309, 835-843 (2001) -C NAKH920105 0.968 NAKH900111 0.954 NAKH920108 0.948 - FUKS010106 0.927 FUKS010105 0.923 CEDJ970103 0.897 - NAKH900112 0.896 NAKH900109 0.872 NAKH900103 0.864 - NAKH900105 0.846 FUKS010107 0.832 NAKH900107 0.830 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 8.26 2.80 2.54 2.80 2.67 2.86 2.67 5.62 1.98 8.95 - 16.46 1.89 2.67 7.32 3.30 6.00 5.00 2.01 3.96 10.24 -// -H FUKS010109 -D Entire chain composition of amino acids in intracellular proteins of - thermophiles (percent) (Fukuchi-Nishikawa, 2001) -R PMID:11399062 -A Fukuchi, S. and Nishikawa, K. -T Protein surface amino acid compositions distinctively differ between - thermophilic and mesophilic bacteria -J J. Mol. Biol. 309, 835-843 (2001) -C FUKS010110 0.936 CEDJ970104 0.901 KUMS000101 0.894 - FUKS010112 0.890 NAKH900101 0.868 JOND920101 0.861 - KUMS000102 0.850 CEDJ970102 0.839 NAKH920106 0.814 - DAYM780101 0.801 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 7.39 5.91 3.06 5.14 0.74 2.22 9.80 7.53 1.82 6.96 - 9.45 7.81 2.10 3.91 4.54 4.18 4.45 0.90 3.46 8.62 -// -H FUKS010110 -D Entire chain composition of amino acids in intracellular proteins of - mesophiles (percent) (Fukuchi-Nishikawa, 2001) -R PMID:11399062 -A Fukuchi, S. and Nishikawa, K. -T Protein surface amino acid compositions distinctively differ between - thermophilic and mesophilic bacteria -J J. Mol. Biol. 309, 835-843 (2001) -C CEDJ970104 0.956 KUMS000101 0.947 NAKH900101 0.946 - JOND920101 0.944 KUMS000102 0.943 FUKS010109 0.936 - CEDJ970102 0.921 JUKT750101 0.908 FUKS010112 0.904 - DAYM780101 0.897 CEDJ970101 0.889 JUNJ780101 0.868 - KUMS000104 0.861 NAKH900109 0.853 CEDJ970103 0.848 - NAKH920101 0.833 KUMS000103 0.827 NAKH920106 0.824 - NAKH920107 0.810 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 9.07 4.90 4.05 5.73 0.95 3.63 7.77 7.69 2.47 6.56 - 9.00 6.01 2.54 3.59 4.04 5.15 5.46 0.95 2.96 7.47 -// -H FUKS010111 -D Entire chain composition of amino acids in extracellular proteins of - mesophiles (percent) (Fukuchi-Nishikawa, 2001) -R PMID:11399062 -A Fukuchi, S. and Nishikawa, K. -T Protein surface amino acid compositions distinctively differ between - thermophilic and mesophilic bacteria -J J. Mol. Biol. 309, 835-843 (2001) -C JUKT750101 0.927 JUNJ780101 0.906 KUMS000102 0.898 - DAYM780101 0.882 CEDJ970101 0.878 NAKH920107 0.841 - JOND920101 0.832 KUMS000101 0.826 CEDJ970102 0.819 - NAKH900101 0.812 MCMT640101 -0.806 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 8.82 3.71 6.77 6.38 0.90 3.89 4.05 9.11 1.77 5.05 - 6.54 5.45 1.62 3.51 4.28 7.64 7.12 1.96 4.85 6.60 -// -H FUKS010112 -D Entire chain compositino of amino acids in nuclear proteins (percent) - (Fukuchi-Nishikawa, 2001) -R PMID:11399062 -A Fukuchi, S. and Nishikawa, K. -T Protein surface amino acid compositions distinctively differ between - thermophilic and mesophilic bacteria -J J. Mol. Biol. 309, 835-843 (2001) -C CEDJ970104 0.956 NAKH900101 0.948 CEDJ970102 0.946 - JOND920101 0.943 NAKH920106 0.921 FUKS010110 0.904 - FUKS010109 0.890 NAKH920104 0.882 CEDJ970101 0.882 - JUKT750101 0.875 NAKH920101 0.856 DAYM780101 0.856 - CEDJ970103 0.850 NAKH920103 0.842 JUNJ780101 0.836 - NAKH920107 0.824 KUMS000102 0.819 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.65 5.17 4.40 5.50 1.79 4.52 6.89 5.72 2.13 5.47 - 10.15 7.59 2.24 4.34 4.56 6.52 5.08 1.24 3.01 7.00 -// -H AVBF000101 -D Screening coefficients gamma, local (Avbelj, 2000) -R PMID:10903873 -A Avbelj, F. -T Amino acid conformational preferences and solvation of polar backbone atoms - in peptides and proteins -J J. Mol. Biol. 300, 1335-1359 (2000) (Pro missing) -C QIAN880120 0.876 PTIO830102 0.861 KANM800102 0.859 - QIAN880119 0.859 LIFS790101 0.857 QIAN880121 0.855 - CHAM830103 0.843 ROBB760106 0.834 LEVM780105 0.824 - PALJ810104 0.818 PALJ810110 0.816 PRAM900103 0.815 - LEVM780102 0.815 LIFS790103 0.814 AVBF000102 0.805 - LEVM780106 -0.805 GEIM800111 -0.806 QIAN880133 -0.807 - QIAN880132 -0.809 KIMC930101 -0.814 MUNV940104 -0.821 - QIAN880134 -0.822 GEIM800110 -0.825 MUNV940103 -0.917 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.163 0.220 0.124 0.212 0.316 0.274 0.212 0.080 0.315 0.474 - 0.315 0.255 0.356 0.410 NA 0.290 0.412 0.325 0.354 0.515 -// -H AVBF000102 -D Screening coefficients gamma, non-local (Avbelj, 2000) -R PMID:10903873 -A Avbelj, F. -T Amino acid conformational preferences and solvation of polar backbone atoms - in peptides and proteins -J J. Mol. Biol. 300, 1335-1359 (2000) (Pro missing) -C FAUJ880102 0.881 LEVM760103 0.816 AVBF000101 0.805 - FAUJ880105 0.802 RACS820110 -0.801 CHAM830101 -0.803 - PALJ810105 -0.815 ISOY800103 -0.821 QIAN880133 -0.823 - LEVM780103 -0.834 PRAM900104 -0.834 QIAN880132 -0.849 - LEVM780106 -0.860 KIMC930101 -0.900 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.236 0.233 0.189 0.168 0.259 0.314 0.306 -0.170 0.256 0.391 - 0.293 0.231 0.367 0.328 NA 0.202 0.308 0.197 0.223 0.436 -// -H AVBF000103 -D Slopes tripeptide, FDPB VFF neutral (Avbelj, 2000) -R PMID:10903873 -A Avbelj, F. -T Amino acid conformational preferences and solvation of polar backbone atoms - in peptides and proteins -J J. Mol. Biol. 300, 1335-1359 (2000) (Pro missing) -C AVBF000105 0.965 AVBF000106 0.897 AVBF000107 0.875 - FAUJ880107 0.873 AVBF000108 0.868 AVBF000104 0.865 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.490 -0.429 -0.387 -0.375 -0.352 -0.422 -0.382 -0.647 -0.357 -0.268 - -0.450 -0.409 -0.375 -0.309 NA -0.426 -0.240 -0.325 -0.288 -0.220 -// -H AVBF000104 -D Slopes tripeptides, LD VFF neutral (Avbelj, 2000) -R PMID:10903873 -A Avbelj, F. -T Amino acid conformational preferences and solvation of polar backbone atoms - in peptides and proteins -J J. Mol. Biol. 300, 1335-1359 (2000) (Pro missing) -C ONEK900102 0.919 GEOR030109 0.907 FINA910102 0.901 - AVBF000103 0.865 AVBF000107 0.839 AVBF000108 0.819 - BLAM930101 -0.872 ONEK900101 -0.899 BUNA790101 -0.922 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.871 -0.727 -0.741 -0.737 -0.666 -0.728 -0.773 -0.822 -0.685 -0.617 - -0.798 -0.715 -0.717 -0.649 NA -0.679 -0.629 -0.669 -0.655 -0.599 -// -H AVBF000105 -D Slopes tripeptide, FDPB VFF noside (Avbelj, 2000) -R PMID:10903873 -A Avbelj, F. -T Amino acid conformational preferences and solvation of polar backbone atoms - in peptides and proteins -J J. Mol. Biol. 300, 1335-1359 (2000) (Pro missing) -C AVBF000103 0.965 AVBF000106 0.939 FAUJ880107 0.931 - AVBF000107 0.879 AVBF000108 0.816 YANJ020101 0.807 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.393 -0.317 -0.268 -0.247 -0.222 -0.291 -0.260 -0.570 -0.244 -0.144 - -0.281 -0.294 -0.274 -0.189 NA -0.280 -0.152 -0.206 -0.155 -0.080 -// -H AVBF000106 -D Slopes tripeptide FDPB VFF all (Avbelj, 2000) -R PMID:10903873 -A Avbelj, F. -T Amino acid conformational preferences and solvation of polar backbone atoms - in peptides and proteins -J J. Mol. Biol. 300, 1335-1359 (2000) (Pro missing) -C AVBF000105 0.939 AVBF000103 0.897 FAUJ880107 0.853 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.378 -0.369 -0.245 -0.113 -0.206 -0.290 -0.165 -0.560 -0.295 -0.134 - -0.266 -0.335 -0.260 -0.187 NA -0.251 -0.093 -0.188 -0.147 -0.084 -// -H AVBF000107 -D Slopes tripeptide FDPB PARSE neutral (Avbelj, 2000) -R PMID:10903873 -A Avbelj, F. -T Amino acid conformational preferences and solvation of polar backbone atoms - in peptides and proteins -J J. Mol. Biol. 300, 1335-1359 (2000) (Pro missing) -C FAUJ880107 0.884 AVBF000105 0.879 AVBF000103 0.875 - AVBF000104 0.839 AVBF000108 0.832 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.729 -0.535 -0.597 -0.545 -0.408 -0.492 -0.532 -0.860 -0.519 -0.361 - -0.462 -0.508 -0.518 -0.454 NA -0.278 -0.367 -0.455 -0.439 -0.323 -// -H AVBF000108 -D Slopes dekapeptide, FDPB VFF neutral (Avbelj, 2000) -R PMID:10903873 -A Avbelj, F. -T Amino acid conformational preferences and solvation of polar backbone atoms - in peptides and proteins -J J. Mol. Biol. 300, 1335-1359 (2000) (Pro missing) -C AVBF000103 0.868 AVBF000107 0.832 AVBF000104 0.819 - AVBF000105 0.816 FAUJ880107 0.802 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.623 -0.567 -0.619 -0.626 -0.571 -0.559 -0.572 -0.679 -0.508 -0.199 - -0.527 -0.581 -0.571 -0.461 NA -0.458 -0.233 -0.327 -0.451 -0.263 -// -H AVBF000109 -D Slopes proteins, FDPB VFF neutral (Avbelj, 2000) -R PMID:10903873 -A Avbelj, F. -T Amino acid conformational preferences and solvation of polar backbone atoms - in peptides and proteins -J J. Mol. Biol. 300, 1335-1359 (2000) (Pro missing) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.376 -0.280 -0.403 -0.405 -0.441 -0.362 -0.362 -0.392 -0.345 -0.194 - -0.317 -0.412 -0.312 -0.237 NA -0.374 -0.243 -0.111 -0.171 -0.355 -// -H YANJ020101 -D Side-chain conformation by gaussian evolutionary method (Yang et al., 2002) -R PMID:12142444 -A Yang, J.M., Tsai, C.H., Hwang, M.J., Tsai, H.K., Hwang, J.K. and Kao, C.Y. -T GEM: a Gaussian Evolutionary Method for predicting protein side-chain - conformations -J Protein Sci. 11, 1897-1907 (2002) (Gly Ala missing) -C AVBF000105 0.807 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - NA 0.62 0.76 0.66 0.83 0.59 0.73 NA 0.92 0.88 - 0.89 0.77 0.77 0.92 0.94 0.58 0.73 0.86 0.93 0.88 -// -H MITS020101 -D Amphiphilicity index (Mitaku et al., 2002) -R PMID:12016058 -A Mitaku, S., Hirokawa, T. and Tsuji, T. -T Amphiphilicity index of polar amino acids as an aid in the characterization - of amino acid preference at membrane-water interfaces -J Bioinformatics. 18, 608-616 (2002) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0 2.45 0 0 0 1.25 1.27 0 1.45 0 - 0 3.67 0 0 0 0 0 6.93 5.06 0 -// -H TSAJ990101 -D Volumes including the crystallographic waters using the ProtOr (Tsai et al., - 1999) -R PMID:10388571 -A Tsai, J., Taylor, R., Chothia, C. and Gerstein, M. -T The packing density in proteins: standard radii and volumes -J J. Mol. Biol. 290, 253-266 (1999) (Cyh 112.8) -C TSAJ990102 1.000 CHOC750101 0.995 BIGC670101 0.993 - GOLD730102 0.993 KRIW790103 0.988 FAUJ880103 0.983 - GRAR740103 0.979 CHAM820101 0.977 CHOC760101 0.968 - HARY940101 0.964 PONJ960101 0.960 FASG760101 0.935 - LEVM760105 0.922 ROSG850101 0.914 LEVM760102 0.910 - DAWD720101 0.903 CHAM830106 0.889 FAUJ880106 0.879 - ZHOH040102 0.874 LEVM760107 0.866 RADA880106 0.861 - LEVM760106 0.849 RADA880103 -0.875 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 89.3 190.3 122.4 114.4 102.5 146.9 138.8 63.8 157.5 163.0 - 163.1 165.1 165.8 190.8 121.6 94.2 119.6 226.4 194.6 138.2 -// -H TSAJ990102 -D Volumes not including the crystallographic waters using the ProtOr (Tsai et - al., 1999) -R PMID:10388571 -A Tsai, J., Taylor, R., Chothia, C. and Gerstein, M. -T The packing density in proteins: standard radii and volumes -J J. Mol. Biol. 290, 253-266 (1999) (Cyh 113.7) -C TSAJ990101 1.000 CHOC750101 0.996 BIGC670101 0.992 - GOLD730102 0.991 KRIW790103 0.987 FAUJ880103 0.985 - GRAR740103 0.978 CHAM820101 0.978 CHOC760101 0.972 - HARY940101 0.965 PONJ960101 0.962 FASG760101 0.940 - LEVM760105 0.928 LEVM760102 0.918 ROSG850101 0.909 - DAWD720101 0.905 CHAM830106 0.896 FAUJ880106 0.882 - ZHOH040102 0.867 RADA880106 0.864 LEVM760107 0.861 - LEVM760106 0.841 RADA880103 -0.879 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 90.0 194.0 124.7 117.3 103.3 149.4 142.2 64.9 160.0 163.9 - 164.0 167.3 167.0 191.9 122.9 95.4 121.5 228.2 197.0 139.0 -// -H COSI940101 -D Electron-ion interaction potential values (Cosic, 1994) -R PMID:7851912 -A Cosic, I. -T Macromolecular bioactivity: is it resonant interaction between - macromolecules?--Theory and applications -J IEEE Trans Biomed Eng. 41, 1101-1114 (1994) (values are cited from Protein - Eng. 15:193-203) -C VELV850101 1.000 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.0373 0.0959 0.0036 0.1263 0.0829 0.0761 0.0058 0.0050 0.0242 0.0000 - 0.0000 0.0371 0.0823 0.0946 0.0198 0.0829 0.0941 0.0548 0.0516 0.0057 -// -H PONP930101 -D Hydrophobicity scales (Ponnuswamy, 1993) -R PMID:8419986 -A Ponnuswamy, P.K. -T Hydrophobic characteristics of folded proteins -J Prog Biophys Mol Biol. 59, 57-103 (1993) -C MANP780101 0.967 NISK860101 0.961 CORJ870101 0.960 - NISK800101 0.956 PONP800101 0.945 PONP800108 0.944 - PONP800102 0.934 BASU050103 0.933 BASU050101 0.932 - CIDH920104 0.930 ROSG850102 0.928 CORJ870107 0.923 - CORJ870103 0.920 BASU050102 0.913 BIOV880101 0.912 - CASG920101 0.911 MIYS850101 0.910 PONP800103 0.909 - LIFS790101 0.908 CORJ870104 0.901 CIDH920103 0.899 - NADH010103 0.898 ZHOH040103 0.896 WERD780101 0.895 - NADH010104 0.895 QIAN880121 0.893 RADA880108 0.891 - CIDH920105 0.891 CORJ870106 0.889 NADH010102 0.880 - QIAN880120 0.879 PTIO830102 0.879 CORJ870105 0.878 - BIOV880102 0.877 CHOP780202 0.867 ROBB760106 0.866 - KANM800102 0.866 MEIH800103 0.863 ROBB790101 0.858 - PALJ810104 0.857 BAEK050101 0.856 PONP800107 0.851 - JURD980101 0.849 KYTJ820101 0.844 FAUJ830101 0.843 - NADH010105 0.839 GEIM800107 0.838 QIAN880122 0.837 - QIAN880119 0.836 SWER830101 0.835 DESM900102 0.834 - LIFS790102 0.833 KANM800104 0.833 CORJ870102 0.832 - ROBB760105 0.829 JANJ780102 0.825 CIDH920102 0.820 - PLIV810101 0.819 JANJ790101 0.816 CHOC760103 0.816 - NADH010101 0.813 DESM900101 0.807 GUOD860101 0.802 - GUYH850101 -0.817 VINM940103 -0.818 PUNT030101 -0.820 - KRIW790102 -0.821 PARJ860101 -0.846 PARS000101 -0.849 - GUYH850103 -0.858 MUNV940103 -0.864 VINM940102 -0.869 - RACS770102 -0.871 GRAR740102 -0.872 PUNT030102 -0.872 - MEIH800102 -0.881 RACS770101 -0.886 KARP850102 -0.893 - GUYH850102 -0.897 FASG890101 -0.907 KRIW790101 -0.909 - CORJ870108 -0.912 VINM940101 -0.913 OOBM770103 -0.914 - MIYS990101 -0.916 MEIH800101 -0.916 MIYS990102 -0.919 - MIYS990105 -0.936 MIYS990104 -0.949 MIYS990103 -0.951 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.85 0.20 -0.48 -1.10 2.10 -0.42 -0.79 0 0.22 3.14 - 1.99 -1.19 1.42 1.69 -1.14 -0.52 -0.08 1.76 1.37 2.53 -// -H WILM950101 -D Hydrophobicity coefficient in RP-HPLC, C18 with 0.1%TFA/MeCN/H2O (Wilce et - al. 1995) -R -A Wilce, M.C., Aguilar, M.I. and Hearn, M.T. -T Physicochemical basis of amino acid hydrophobicity scales: evaluation of four - new scales of amino acid hydrophobicity coefficients derived from RP-HPLC of - peptides -J Anal Chem. 67, 1210-1219 (1995) -C GUOD860101 0.893 COWR900101 0.860 MEEJ810102 0.849 - VENT840101 0.840 WILM950102 0.838 BLAS910101 0.810 - MIYS990102 -0.822 MIYS990101 -0.822 BULH740101 -0.845 - WOLS870101 -0.851 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.06 -0.85 0.25 -0.20 0.49 0.31 -0.10 0.21 -2.24 3.48 - 3.50 -1.62 0.21 4.80 0.71 -0.62 0.65 2.29 1.89 1.59 -// -H WILM950102 -D Hydrophobicity coefficient in RP-HPLC, C8 with 0.1%TFA/MeCN/H2O (Wilce et al. - 1995) -R -A Wilce, M.C., Aguilar, M.I. and Hearn, M.T. -T Physicochemical basis of amino acid hydrophobicity scales: evaluation of four - new scales of amino acid hydrophobicity coefficients derived from RP-HPLC of - peptides -J Anal Chem. 67, 1210-1219 (1995) -C WILM950101 0.838 MEEJ810102 0.809 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.62 1.26 -1.27 -2.84 0.73 -1.69 -0.45 -1.15 -0.74 4.38 - 6.57 -2.78 -3.12 9.14 -0.12 -1.39 1.81 5.91 1.39 2.30 -// -H WILM950103 -D Hydrophobicity coefficient in RP-HPLC, C4 with 0.1%TFA/MeCN/H2O (Wilce et al. - 1995) -R -A Wilce, M.C., Aguilar, M.I. and Hearn, M.T. -T Physicochemical basis of amino acid hydrophobicity scales: evaluation of four - new scales of amino acid hydrophobicity coefficients derived from RP-HPLC of - peptides -J Anal Chem. 67, 1210-1219 (1995) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -1.64 -3.28 0.83 0.70 9.30 -0.04 1.18 -1.85 7.17 3.02 - 0.83 -2.36 4.26 -1.36 3.12 1.59 2.31 2.61 2.37 0.52 -// -H WILM950104 -D Hydrophobicity coefficient in RP-HPLC, C18 with 0.1%TFA/2-PrOH/MeCN/H2O - (Wilce et al. 1995) -R -A Wilce, M.C., Aguilar, M.I. and Hearn, M.T. -T Physicochemical basis of amino acid hydrophobicity scales: evaluation of four - new scales of amino acid hydrophobicity coefficients derived from RP-HPLC of - peptides -J Anal Chem. 67, 1210-1219 (1995) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -2.34 1.60 2.81 -0.48 5.03 0.16 1.30 -1.06 -3.00 7.26 - 1.09 1.56 0.62 2.57 -0.15 1.93 0.19 3.59 -2.58 2.06 -// -H KUHL950101 -D Hydrophilicity scale (Kuhn et al., 1995) -R PMID:8749849 -A Kuhn, L.A., Swanson, C.A., Pique, M.E., Tainer, J.A. and Getzoff, E.D. -T Atomic and residue hydrophilicity in the context of folded protein structures -J Proteins 23, 536-547 (1995) -C ROSM880101 0.962 ROSM880102 0.922 FAUJ880110 0.922 - PRAM900101 0.908 ENGD860101 0.908 KIDA850101 0.882 - OOBM770101 0.876 GRAR740102 0.865 VHEG790101 0.858 - GUYH850105 0.850 PUNT030101 0.844 PUNT030102 0.841 - JANJ780101 0.839 WOEC730101 0.837 GUYH850104 0.835 - GUYH850101 0.827 FAUJ880109 0.827 JANJ780103 0.826 - MEIH800102 0.822 FASG890101 0.821 LEVM760101 0.807 - BASU050103 -0.804 NADH010103 -0.807 BIOV880102 -0.809 - MEIH800103 -0.809 WARP780101 -0.811 JANJ790101 -0.811 - CIDH920104 -0.822 BIOV880101 -0.834 EISD860101 -0.835 - NADH010102 -0.836 RADA880108 -0.839 JANJ790102 -0.844 - RADA880104 -0.847 OLSK800101 -0.849 RADA880107 -0.857 - FAUJ830101 -0.863 DESM900102 -0.863 JACR890101 -0.864 - CHOC760103 -0.865 KYTJ820101 -0.883 JURD980101 -0.884 - JANJ780102 -0.890 EISD860103 -0.894 BLAS910101 -0.894 - ROSM880105 -0.896 WOLR790101 -0.898 WOLR810101 -0.898 - NADH010101 -0.898 EISD840101 -0.907 RADA880101 -0.950 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.78 1.58 1.20 1.35 0.55 1.19 1.45 0.68 0.99 0.47 - 0.56 1.10 0.66 0.47 0.69 1.00 1.05 0.70 1.00 0.51 -// -H GUOD860101 -D Retention coefficient at pH 2 (Guo et al., 1986) -R -A Guo, D., Mant, C.T., Taneja, A.K., Parker, J.M. and Hodges, R.S. -T Prediction of peptide retention times in reversed-phase high-performance - liquid chromatography; I. determination of retention coefficients of amino - acid residues of model synthetic peptides -J J Chromatogr. 359, 499-517 (1986) -C MEEJ810102 0.949 PLIV810101 0.943 MEEJ810101 0.931 - COWR900101 0.920 MIYS850101 0.908 FAUJ830101 0.900 - WILM950101 0.893 ZHOH040103 0.889 ZHOH040101 0.884 - NOZY710101 0.884 BASU050102 0.868 ROSM880104 0.868 - BLAS910101 0.866 MEEJ800102 0.866 CIDH920104 0.860 - CIDH920105 0.858 PONP800107 0.854 SWER830101 0.853 - CORJ870102 0.852 ZIMJ680105 0.850 VENT840101 0.848 - BASU050101 0.847 CIDH920103 0.845 NISK860101 0.840 - EISD860101 0.839 BIOV880101 0.839 BASU050103 0.833 - BROC820101 0.832 CIDH920102 0.831 RADA880102 0.829 - ROSM880105 0.826 BIOV880102 0.817 MANP780101 0.815 - ROBB790101 0.815 RADA880108 0.812 ZHOH040102 0.812 - NAKH900110 0.805 NADH010104 0.803 NADH010103 0.803 - PONP930101 0.802 FASG890101 -0.801 RACS770101 -0.805 - PUNT030101 -0.810 PUNT030102 -0.813 GUYH850103 -0.819 - MIYS990103 -0.828 KIDA850101 -0.828 ROSM880102 -0.829 - MEIH800101 -0.833 OOBM770103 -0.838 MIYS990105 -0.846 - MIYS990104 -0.846 GRAR740102 -0.855 MIYS990102 -0.916 - MIYS990101 -0.917 BULH740101 -0.922 PARJ860101 -0.925 - WOLS870101 -0.955 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 25 -7 -7 2 32 0 14 -2 -26 91 - 100 -26 68 100 25 -2 7 109 56 62 -// -H JURD980101 -D Modified Kyte-Doolittle hydrophobicity scale (Juretic et al., 1998) -R -A Juretic, D., Lucic, B., Zucic, D. and Trinajstic, N. -T Protein transmembrane structure: recognition and prediction by using - hydrophobicity scales through preference functions -J Theoretical and Computational Chemistry, 5, 405-445 (1998) -C KYTJ820101 0.996 CHOC760103 0.967 OLSK800101 0.943 - NADH010102 0.931 JANJ780102 0.928 NADH010101 0.925 - EISD860103 0.901 DESM900102 0.900 NADH010103 0.900 - EISD840101 0.895 RADA880101 0.893 MANP780101 0.887 - WOLR810101 0.881 PONP800103 0.879 JANJ790102 0.879 - NADH010104 0.873 BASU050103 0.871 CHOC760104 0.870 - PONP800102 0.869 JANJ790101 0.868 WOLR790101 0.864 - MEIH800103 0.861 PONP800101 0.858 NAKH920108 0.858 - RADA880108 0.857 PONP800108 0.856 COWR900101 0.855 - ROSG850102 0.854 CORJ870101 0.849 PONP930101 0.849 - RADA880107 0.842 BLAS910101 0.841 BIOV880101 0.840 - MIYS850101 0.837 FAUJ830101 0.833 CIDH920104 0.832 - BASU050101 0.830 DESM900101 0.829 WARP780101 0.827 - KANM800104 0.826 LIFS790102 0.824 RADA880104 0.824 - NADH010105 0.821 ROSM880105 0.818 NISK800101 0.816 - CORJ870104 0.812 NISK860101 0.808 CORJ870103 0.808 - BIOV880102 0.805 CORJ870107 0.804 ARGP820102 0.802 - ARGP820103 0.800 CORJ870108 -0.806 MIYS990104 -0.813 - VHEG790101 -0.814 KRIW790101 -0.824 MIYS990105 -0.829 - MIYS990103 -0.845 CHOC760102 -0.851 ROSM880101 -0.851 - MIYS990101 -0.852 MONM990101 -0.853 JANJ780103 -0.853 - MIYS990102 -0.853 RACS770102 -0.855 FASG890101 -0.857 - ENGD860101 -0.861 PRAM900101 -0.862 JANJ780101 -0.862 - GUYH850101 -0.864 GRAR740102 -0.864 PUNT030102 -0.869 - MEIH800102 -0.879 GUYH850104 -0.880 KUHL950101 -0.884 - PUNT030101 -0.884 ROSM880102 -0.894 GUYH850105 -0.900 - OOBM770101 -0.903 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.10 -5.10 -3.50 -3.60 2.50 -3.68 -3.20 -0.64 -3.20 4.50 - 3.80 -4.11 1.90 2.80 -1.90 -0.50 -0.70 -0.46 -1.3 4.2 -// -H BASU050101 -D Interactivity scale obtained from the contact matrix (Bastolla et al., 2005) -R PMID:15523667 -A Bastolla, U., Porto M., Roman H.E. and Vendruscolo M. -T Principal eigenvector of contact matrices and hydrophobicity profiles in - prote -J Proteins 58, 22-30 (2005) -C BASU050103 0.965 BASU050102 0.946 PONP930101 0.932 - NISK860101 0.926 MANP780101 0.925 SWER830101 0.922 - CORJ870102 0.921 CIDH920104 0.917 ZHOH040103 0.917 - CORJ870107 0.913 CORJ870104 0.910 CIDH920105 0.907 - PTIO830102 0.903 CIDH920103 0.894 PONP800108 0.894 - CORJ870106 0.891 CORJ870103 0.890 CORJ870105 0.888 - MIYS850101 0.888 LIFS790101 0.886 CHOP780202 0.883 - BIOV880101 0.883 PONP800101 0.882 PLIV810101 0.879 - NISK800101 0.876 PALJ810104 0.873 RADA880108 0.867 - PONP800102 0.864 CORJ870101 0.863 CIDH920102 0.858 - VENT840101 0.858 QIAN880120 0.856 KANM800102 0.856 - BLAS910101 0.853 ROBB760105 0.853 FAUJ830101 0.852 - ROBB760106 0.851 ZHOH040101 0.851 KANM800104 0.850 - ROSG850102 0.849 GUOD860101 0.847 GEIM800107 0.847 - ROBB790101 0.845 WERD780101 0.843 PONP800103 0.842 - NADH010103 0.839 CIDH920101 0.839 NADH010104 0.837 - ROSM880104 0.830 JURD980101 0.830 QIAN880121 0.828 - ROSM880105 0.828 KYTJ820101 0.826 PONP800107 0.825 - BIOV880102 0.812 NADH010102 0.812 NADH010105 0.811 - MEEJ810101 0.810 CASG920101 0.806 QIAN880119 0.805 - GUYH850101 -0.807 WOEC730101 -0.811 RACS770102 -0.813 - GUYH850102 -0.815 KRIW790101 -0.821 PUNT030101 -0.822 - MEIH800102 -0.825 PARS000101 -0.835 MUNV940103 -0.846 - OOBM770103 -0.850 RACS770101 -0.850 GUYH850103 -0.852 - BULH740101 -0.854 FASG890101 -0.856 VINM940101 -0.867 - WOLS870101 -0.869 PUNT030102 -0.873 VINM940102 -0.874 - MEIH800101 -0.887 GRAR740102 -0.889 PARJ860101 -0.897 - MIYS990105 -0.900 CORJ870108 -0.916 MIYS990103 -0.918 - MIYS990104 -0.918 MIYS990102 -0.945 MIYS990101 -0.945 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.1366 0.0363 -0.0345 -0.1233 0.2745 0.0325 -0.0484 -0.0464 0.0549 0.4172 - 0.4251 -0.0101 0.1747 0.4076 0.0019 -0.0433 0.0589 0.2362 0.3167 0.4084 -// -H BASU050102 -D Interactivity scale obtained by maximizing the mean of correlation - coefficient over single-domain globular proteins (Bastolla et al., 2005) -R PMID:15523667 -A Bastolla, U., Porto M., Roman H.E. and Vendruscolo M. -T Principal eigenvector of contact matrices and hydrophobicity profiles in - prote -J Proteins 58, 22-30 (2005) -C ZHOH040103 0.978 NISK860101 0.951 ZHOH040101 0.948 - BASU050101 0.946 CIDH920104 0.934 CIDH920105 0.931 - BASU050103 0.925 WERD780101 0.920 CIDH920102 0.914 - PONP930101 0.913 BIOV880101 0.909 MIYS850101 0.904 - BAEK050101 0.898 MEEJ810101 0.898 ROBB790101 0.897 - CIDH920103 0.887 FAUJ830101 0.885 NISK800101 0.884 - CORJ870102 0.881 SWER830101 0.880 PONP800108 0.880 - MANP780101 0.879 NADH010104 0.879 PLIV810101 0.876 - CASG920101 0.873 MEEJ810102 0.871 ROSG850102 0.870 - RADA880108 0.870 NADH010105 0.869 GUOD860101 0.868 - NADH010103 0.862 LIFS790101 0.861 CORJ870106 0.859 - CIDH920101 0.858 CORJ870101 0.855 CORJ870107 0.855 - VENT840101 0.851 PONP800101 0.848 PTIO830102 0.848 - NOZY710101 0.847 ROSM880104 0.846 CORJ870103 0.845 - PONP800102 0.843 CHOP780202 0.841 BIOV880102 0.838 - CORJ870104 0.838 QIAN880120 0.837 CORJ870105 0.834 - PONP800103 0.828 PALJ810104 0.826 LIFS790103 0.826 - QIAN880121 0.825 RADA880102 0.809 ZHOH040102 0.808 - BLAS910101 0.807 LEVM760106 0.805 NADH010102 0.802 - MEIH800103 0.801 GUYH850101 -0.801 RACS770102 -0.807 - FUKS010103 -0.809 MEIH800102 -0.812 KARP850101 -0.819 - KARP850102 -0.825 PUNT030102 -0.832 MUNV940103 -0.839 - BULH740101 -0.845 WOLS870101 -0.849 RACS770101 -0.854 - CORJ870108 -0.855 VINM940103 -0.856 PARS000101 -0.864 - GRAR740102 -0.864 KRIW790101 -0.867 FASG890101 -0.881 - MEIH800101 -0.892 OOBM770103 -0.893 VINM940101 -0.904 - GUYH850103 -0.904 PARJ860101 -0.908 GUYH850102 -0.911 - MIYS990105 -0.919 MIYS990103 -0.924 MIYS990101 -0.935 - MIYS990102 -0.936 VINM940102 -0.937 MIYS990104 -0.942 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.0728 0.0394 -0.0390 -0.0552 0.3557 0.0126 -0.0295 -0.0589 0.0874 0.3805 - 0.3819 -0.0053 0.1613 0.4201 -0.0492 -0.0282 0.0239 0.4114 0.3113 0.2947 -// -H BASU050103 -D Interactivity scale obtained by maximizing the mean of correlation - coefficient over pairs of sequences sharing the TIM barrel fold (Bastolla et - al., 2005) -R PMID:15523667 -A Bastolla, U., Porto M., Roman H.E. and Vendruscolo M. -T Principal eigenvector of contact matrices and hydrophobicity profiles in - prote -J Proteins 58, 22-30 (2005) -C BASU050101 0.965 CIDH920104 0.941 NISK860101 0.937 - PONP930101 0.933 ZHOH040103 0.927 BIOV880101 0.926 - RADA880108 0.926 BASU050102 0.925 MANP780101 0.923 - PONP800108 0.921 PONP800101 0.915 CIDH920105 0.914 - NADH010103 0.903 FAUJ830101 0.903 ROSG850102 0.903 - PONP800102 0.902 NADH010104 0.899 MIYS850101 0.899 - CORJ870101 0.897 NISK800101 0.896 CIDH920103 0.894 - SWER830101 0.892 CORJ870102 0.889 PTIO830102 0.888 - NADH010102 0.886 CORJ870107 0.883 PALJ810104 0.882 - PLIV810101 0.880 PONP800103 0.879 BLAS910101 0.878 - CORJ870104 0.877 CHOP780202 0.874 JURD980101 0.871 - KANM800102 0.869 BIOV880102 0.868 CORJ870103 0.867 - LIFS790101 0.865 ROSM880105 0.864 KYTJ820101 0.863 - CASG920101 0.860 CORJ870106 0.858 NADH010105 0.857 - WERD780101 0.857 CIDH920102 0.856 NADH010101 0.852 - CORJ870105 0.852 ROBB790101 0.849 KANM800104 0.848 - GEIM800107 0.847 ROBB760106 0.840 ROBB760105 0.839 - NAGK730102 0.837 GUOD860101 0.833 MEIH800103 0.832 - CIDH920101 0.828 QIAN880121 0.828 DESM900102 0.818 - RADA880102 0.815 VENT840101 0.814 ZHOH040101 0.813 - PONP800107 0.812 QIAN880120 0.811 EISD860101 0.809 - RADA880101 0.809 BAEK050101 0.806 EISD840101 0.806 - EISD860103 0.806 CHOC760103 0.805 JANJ780102 0.803 - ROSM880101 -0.804 KUHL950101 -0.804 KARP850102 -0.806 - KIDA850101 -0.806 LEVM760101 -0.808 ROSM880102 -0.814 - VINM940103 -0.814 MUNV940103 -0.814 PARS000101 -0.820 - HOPT810101 -0.830 BULH740101 -0.833 WOEC730101 -0.836 - PUNT030101 -0.844 GUYH850102 -0.845 RACS770101 -0.848 - GUYH850103 -0.854 KRIW790101 -0.860 RACS770102 -0.861 - WOLS870101 -0.866 OOBM770103 -0.866 GUYH850101 -0.871 - PARJ860101 -0.874 MEIH800102 -0.880 VINM940102 -0.880 - CORJ870108 -0.883 PUNT030102 -0.895 VINM940101 -0.902 - MEIH800101 -0.906 GRAR740102 -0.906 FASG890101 -0.915 - MIYS990105 -0.928 MIYS990104 -0.938 MIYS990101 -0.940 - MIYS990102 -0.940 MIYS990103 -0.943 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.1510 -0.0103 0.0381 0.0047 0.3222 0.0246 -0.0639 0.0248 0.1335 0.4238 - 0.3926 -0.0158 0.2160 0.3455 0.0844 0.0040 0.1462 0.2657 0.2998 0.3997 -// -H SUYM030101 -D Linker propensity index (Suyama-Ohara, 2003) -R PMID:12651735 -A Suyama, M. and Ohara, O. -T DomCut: Prediction of inter-domain linker regions in amino acid sequences -J Bioinformatics 19, 673-674 (2003) -C BAEK050101 0.805 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.058 0.000 0.027 0.016 0.447 -0.073 -0.128 0.331 0.195 0.060 - 0.138 -0.112 0.275 0.240 -0.478 -0.177 -0.163 0.564 0.322 -0.052 -// -H PUNT030101 -D Knowledge-based membrane-propensity scale from 1D_Helix in MPtopo databases - (Punta-Maritan, 2003) -R PMID:12471604 -A Punta, M. and Maritan, A. -T A knowledge-based scale for amino acid membrane propensity -J Proteins 50, 114-121 (2003) -C GUYH850101 0.910 MEIH800102 0.901 PUNT030102 0.899 - RACS770102 0.894 ENGD860101 0.889 PRAM900101 0.889 - MIYS990101 0.888 MIYS990102 0.887 ROSM880101 0.884 - MIYS990105 0.876 VHEG790101 0.876 GRAR740102 0.873 - OOBM770101 0.865 MIYS990103 0.864 ROSM880102 0.861 - MEIH800101 0.860 HOPT810101 0.858 GUYH850105 0.858 - MIYS990104 0.857 KIDA850101 0.856 WOLS870101 0.853 - JANJ780103 0.848 CORJ870108 0.845 FASG890101 0.845 - PARJ860101 0.845 KUHL950101 0.844 GUYH850104 0.840 - MONM990101 0.839 LEVM760101 0.835 KRIW790101 0.833 - RACS770103 0.830 WOEC730101 0.825 JANJ780101 0.824 - RACS770101 0.821 KRIW790102 0.811 CHOC760102 0.809 - VINM940101 0.805 KARP850102 0.805 PONP800101 -0.800 - CORJ870103 -0.802 CORJ870104 -0.804 PONP800107 -0.804 - CIDH920105 -0.805 ZHOH040103 -0.809 GUOD860101 -0.810 - ARGP820103 -0.810 CASG920101 -0.811 JACR890101 -0.812 - PONP800103 -0.812 WARP780101 -0.814 CIDH920103 -0.819 - PONP930101 -0.820 WERD780101 -0.821 RADA880102 -0.821 - BASU050101 -0.822 MANP780101 -0.824 CIDH920104 -0.827 - DESM900101 -0.828 EISD860103 -0.829 CORJ870106 -0.833 - CORJ870105 -0.834 CORJ870102 -0.835 OLSK800101 -0.838 - SWER830101 -0.838 NADH010104 -0.843 BASU050103 -0.844 - JANJ790102 -0.846 CORJ870107 -0.848 JANJ780102 -0.848 - NISK860101 -0.854 CHOC760103 -0.859 PLIV810101 -0.860 - NADH010101 -0.862 BLAS910101 -0.865 NADH010103 -0.868 - KYTJ820101 -0.872 FAUJ830101 -0.876 MEIH800103 -0.882 - BIOV880101 -0.883 ROSG850102 -0.883 JURD980101 -0.884 - RADA880108 -0.884 NAKH900110 -0.886 RADA880101 -0.886 - BIOV880102 -0.888 EISD860101 -0.890 MIYS850101 -0.892 - NADH010102 -0.897 DESM900102 -0.903 EISD840101 -0.914 - ROSM880105 -0.922 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.17 0.37 0.18 0.37 -0.06 0.26 0.15 0.01 -0.02 -0.28 - -0.28 0.32 -0.26 -0.41 0.13 0.05 0.02 -0.15 -0.09 -0.17 -// -H PUNT030102 -D Knowledge-based membrane-propensity scale from 3D_Helix in MPtopo databases - (Punta-Maritan, 2003) -R PMID:12471604 -A Punta, M. and Maritan, A. -T A knowledge-based scale for amino acid membrane propensity -J Proteins 50, 114-121 (2003) -C GRAR740102 0.915 PUNT030101 0.899 WOEC730101 0.894 - HOPT810101 0.886 MIYS990102 0.882 MIYS990101 0.881 - MIYS990103 0.881 MIYS990104 0.874 MIYS990105 0.874 - VHEG790101 0.873 ENGD860101 0.870 PRAM900101 0.869 - WOLS870101 0.868 PARJ860101 0.867 ROSM880101 0.864 - FASG890101 0.853 ROSM880102 0.851 VINM940101 0.850 - MEIH800102 0.849 LEVM760101 0.848 OOBM770101 0.845 - KUHL950101 0.841 MONM990101 0.839 MEIH800101 0.837 - GUYH850101 0.836 RACS770102 0.828 OOBM770103 0.828 - KRIW790101 0.826 CORJ870108 0.810 KIDA850101 0.807 - DESM900101 -0.801 CHOP780202 -0.803 KANM800102 -0.803 - LIFS790101 -0.809 CIDH920103 -0.810 CORJ870107 -0.810 - RADA880102 -0.811 GUOD860101 -0.813 CORJ870106 -0.814 - MEIH800103 -0.815 CORJ870105 -0.817 CIDH920105 -0.822 - PONP800101 -0.827 PONP800102 -0.827 JANJ780102 -0.830 - CASG920101 -0.831 BASU050102 -0.832 PONP800103 -0.834 - NAGK730102 -0.836 ZHOH040103 -0.847 NADH010104 -0.851 - EISD860103 -0.853 EISD840101 -0.854 NISK800101 -0.855 - PONP800108 -0.855 CIDH920104 -0.857 PLIV810101 -0.858 - CORJ870101 -0.860 BIOV880102 -0.860 KYTJ820101 -0.862 - NADH010103 -0.865 MIYS850101 -0.868 DESM900102 -0.868 - EISD860101 -0.869 ROSG850102 -0.869 RADA880108 -0.869 - JURD980101 -0.869 PONP930101 -0.872 NADH010101 -0.872 - NADH010102 -0.872 MANP780101 -0.873 BASU050101 -0.873 - BLAS910101 -0.877 BIOV880101 -0.878 RADA880101 -0.881 - NISK860101 -0.885 BASU050103 -0.895 FAUJ830101 -0.908 - ROSM880105 -0.917 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.15 0.32 0.22 0.41 -0.15 0.03 0.30 0.08 0.06 -0.29 - -0.36 0.24 -0.19 -0.22 0.15 0.16 -0.08 -0.28 -0.03 -0.24 -// -H GEOR030101 -D Linker propensity from all dataset (George-Heringa, 2003) -R PMID:12538906 -A George, R.A. and Heringa, J. -T An analysis of protein domain linkers: their classification and role in - protein folding -J Protein Eng. 15, 871-879 (2003) -C GEOR030106 0.938 GEOR030102 0.859 GEOR030103 0.839 - GEOR030104 0.834 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.964 1.143 0.944 0.916 0.778 1.047 1.051 0.835 1.014 0.922 - 1.085 0.944 1.032 1.119 1.299 0.947 1.017 0.895 1 0.955 -// -H GEOR030102 -D Linker propensity from 1-linker dataset (George-Heringa, 2003) -R PMID:12538906 -A George, R.A. and Heringa, J. -T An analysis of protein domain linkers: their classification and role in - protein folding -J Protein Eng. 15, 871-879 (2003) -C GEOR030101 0.859 GEOR030107 0.815 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.974 1.129 0.988 0.892 0.972 1.092 1.054 0.845 0.949 0.928 - 1.11 0.946 0.923 1.122 1.362 0.932 1.023 0.879 0.902 0.923 -// -H GEOR030103 -D Linker propensity from 2-linker dataset (George-Heringa, 2003) -R PMID:12538906 -A George, R.A. and Heringa, J. -T An analysis of protein domain linkers: their classification and role in - protein folding -J Protein Eng. 15, 871-879 (2003) -C GEOR030106 0.913 GEOR030101 0.839 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.938 1.137 0.902 0.857 0.6856 0.916 1.139 0.892 1.109 0.986 - 1 0.952 1.077 1.11 1.266 0.956 1.018 0.971 1.157 0.959 -// -H GEOR030104 -D Linker propensity from 3-linker dataset (George-Heringa, 2003) -R PMID:12538906 -A George, R.A. and Heringa, J. -T An analysis of protein domain linkers: their classification and role in - protein folding -J Protein Eng. 15, 871-879 (2003) -C GEOR030106 0.904 GEOR030101 0.834 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.042 1.069 0.828 0.97 0.5 1.111 0.992 0.743 1.034 0.852 - 1.193 0.979 0.998 0.981 1.332 0.984 0.992 0.96 1.12 1.001 -// -H GEOR030105 -D Linker propensity from small dataset (linker length is less than six - residues) (George-Heringa, 2003) -R PMID:12538906 -A George, R.A. and Heringa, J. -T An analysis of protein domain linkers: their classification and role in - protein folding -J Protein Eng. 15, 871-879 (2003) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.065 1.131 0.762 0.836 1.015 0.861 0.736 1.022 0.973 1.189 - 1.192 0.478 1.369 1.368 1.241 1.097 0.822 1.017 0.836 1.14 -// -H GEOR030106 -D Linker propensity from medium dataset (linker length is between six and 14 - residues) (George-Heringa, 2003) -R PMID:12538906 -A George, R.A. and Heringa, J. -T An analysis of protein domain linkers: their classification and role in - protein folding -J Protein Eng. 15, 871-879 (2003) -C GEOR030101 0.938 GEOR030103 0.913 GEOR030104 0.904 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.99 1.132 0.873 0.915 0.644 0.999 1.053 0.785 1.054 0.95 - 1.106 1.003 1.093 1.121 1.314 0.911 0.988 0.939 1.09 0.957 -// -H GEOR030107 -D Linker propensity from long dataset (linker length is greater than 14 - residues) (George-Heringa, 2003) -R PMID:12538906 -A George, R.A. and Heringa, J. -T An analysis of protein domain linkers: their classification and role in - protein folding -J Protein Eng. 15, 871-879 (2003) -C GEOR030102 0.815 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.892 1.154 1.144 0.925 1.035 1.2 1.115 0.917 0.992 0.817 - 0.994 0.944 0.782 1.058 1.309 0.986 1.11 0.841 0.866 0.9 -// -H GEOR030108 -D Linker propensity from helical (annotated by DSSP) dataset (George-Heringa, - 2003) -R PMID:12538906 -A George, R.A. and Heringa, J. -T An analysis of protein domain linkers: their classification and role in - protein folding -J Protein Eng. 15, 871-879 (2003) -C AURR980111 0.846 AURR980112 0.846 AURR980115 0.821 - AURR980110 0.804 AURR980114 0.804 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.092 1.239 0.927 0.919 0.662 1.124 1.199 0.698 1.012 0.912 - 1.276 1.008 1.171 1.09 0.8 0.886 0.832 0.981 1.075 0.908 -// -H GEOR030109 -D Linker propensity from non-helical (annotated by DSSP) dataset - (George-Heringa, 2003) -R PMID:12538906 -A George, R.A. and Heringa, J. -T An analysis of protein domain linkers: their classification and role in - protein folding -J Protein Eng. 15, 871-879 (2003) -C ONEK900102 0.908 AVBF000104 0.907 FINA910102 0.890 - ISOY800104 0.812 MUNV940101 0.801 CHOP780213 0.800 - FAUJ880113 -0.848 ONEK900101 -0.884 BLAM930101 -0.889 - BUNA790101 -0.901 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.843 1.038 0.956 0.906 0.896 0.968 0.9 0.978 1.05 0.946 - 0.885 0.893 0.878 1.151 1.816 1.003 1.189 0.852 0.945 0.999 -// -H ZHOH040101 -D The stability scale from the knowledge-based atom-atom potential (Zhou-Zhou, - 2004) -R PMID:14696193 -A Zhou, H. and Zhou, Y. -T Quantifying the effect of burial of amino acid residues on protein stability -J Proteins 54, 315-322 (2004) -C BASU050102 0.948 CIDH920102 0.939 MEEJ810101 0.935 - ZHOH040103 0.935 NOZY710101 0.932 MEEJ810102 0.922 - ZHOH040102 0.910 CIDH920105 0.904 ROSG850101 0.904 - GUOD860101 0.884 LEVM760106 0.883 ROBB790101 0.872 - NISK860101 0.871 PLIV810101 0.864 CORJ870102 0.862 - SWER830101 0.860 WERD780101 0.859 CIDH920104 0.858 - ROSM880104 0.858 VENT840101 0.858 CIDH920101 0.855 - MIYS850101 0.855 LEVM760107 0.855 BASU050101 0.851 - TAKK010101 0.846 ARGP820101 0.841 FAUJ830101 0.841 - JOND750101 0.841 MEEJ800102 0.838 CIDH920103 0.829 - RADA880102 0.828 BIOV880101 0.825 WIMW960101 0.821 - GOLD730101 0.817 BASU050103 0.813 SIMZ760101 0.808 - LIFS790103 0.801 MIYS990103 -0.824 MEIH800101 -0.827 - KARP850101 -0.833 VINM940101 -0.833 GUYH850102 -0.836 - MIYS990105 -0.838 PARS000101 -0.845 WOLS870101 -0.858 - OOBM770103 -0.862 MIYS990104 -0.864 WEBA780101 -0.865 - MIYS990102 -0.870 MIYS990101 -0.871 BULH740101 -0.876 - GUYH850103 -0.882 VINM940102 -0.899 PARJ860101 -0.912 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.18 2.71 1.85 1.75 3.89 2.16 1.89 1.17 2.51 4.50 - 4.71 2.12 3.63 5.88 2.09 1.66 2.18 6.46 5.01 3.77 -// -H ZHOH040102 -D The relative stability scale extracted from mutation experiments (Zhou-Zhou, - 2004) -R PMID:14696193 -A Zhou, H. and Zhou, Y. -T Quantifying the effect of burial of amino acid residues on protein stability -J Proteins 54, 315-322 (2004) -C ROSG850101 0.930 ZHOH040101 0.910 LEVM760106 0.905 - NOZY710101 0.897 BIGC670101 0.884 KRIW790103 0.884 - GOLD730102 0.882 ZIMJ680102 0.878 TSAJ990101 0.874 - TAKK010101 0.874 GRAR740103 0.872 TSAJ990102 0.867 - CIDH920102 0.862 CHOC750101 0.856 LEVM760107 0.843 - VENT840101 0.831 HARY940101 0.830 CHAM820101 0.826 - PONJ960101 0.823 CIDH920105 0.818 FAUJ880103 0.816 - SIMZ760101 0.814 GUOD860101 0.812 CIDH920101 0.811 - PLIV810101 0.809 MEEJ800102 0.808 BASU050102 0.808 - MEEJ810101 0.804 WEBA780101 -0.807 PARJ860101 -0.854 - BULH740101 -0.860 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.79 3.20 2.83 2.33 2.22 2.37 2.52 0.70 3.06 4.59 - 4.72 2.50 3.91 4.84 2.45 1.82 2.45 5.64 4.46 3.67 -// -H ZHOH040103 -D Buriability (Zhou-Zhou, 2004) -R PMID:14696193 -A Zhou, H. and Zhou, Y. -T Quantifying the effect of burial of amino acid residues on protein stability -J Proteins 54, 315-322 (2004) -C BASU050102 0.978 NISK860101 0.946 BIOV880101 0.941 - CIDH920104 0.941 ZHOH040101 0.935 FAUJ830101 0.933 - BASU050103 0.927 CIDH920105 0.926 NADH010104 0.925 - WERD780101 0.923 MEEJ810101 0.921 BASU050101 0.917 - MIYS850101 0.914 NADH010103 0.913 CIDH920102 0.909 - RADA880108 0.904 ROSG850102 0.903 MEEJ810102 0.902 - CASG920101 0.900 PONP930101 0.896 BIOV880102 0.891 - NADH010105 0.890 GUOD860101 0.889 PLIV810101 0.889 - NISK800101 0.888 PONP800108 0.887 BAEK050101 0.884 - CIDH920103 0.881 ROBB790101 0.872 NADH010102 0.864 - MANP780101 0.864 CORJ870101 0.864 SWER830101 0.863 - CORJ870102 0.863 PONP800103 0.861 PONP800102 0.858 - PONP800101 0.847 BLAS910101 0.846 CIDH920101 0.845 - NOZY710101 0.842 ROSM880105 0.839 ROSM880104 0.826 - CORJ870106 0.822 CORJ870107 0.822 MEIH800103 0.820 - NADH010106 0.819 CORJ870103 0.819 LIFS790101 0.815 - PTIO830102 0.813 RADA880102 0.813 CORJ870104 0.809 - VENT840101 0.807 NADH010101 0.803 FUKS010104 -0.803 - FUKS010103 -0.808 PUNT030101 -0.809 LEVM760101 -0.811 - CORJ870108 -0.821 BULH740101 -0.828 HOPT810101 -0.829 - RACS770102 -0.832 RACS770101 -0.835 KARP850102 -0.836 - GUYH850101 -0.839 KARP850101 -0.846 PARS000101 -0.846 - PUNT030102 -0.847 MEIH800102 -0.848 KIDA850101 -0.851 - WOLS870101 -0.870 GUYH850103 -0.879 VINM940103 -0.882 - GRAR740102 -0.895 PARJ860101 -0.897 MEIH800101 -0.898 - KRIW790101 -0.905 OOBM770103 -0.907 FASG890101 -0.910 - GUYH850102 -0.912 VINM940101 -0.922 MIYS990101 -0.926 - MIYS990102 -0.927 MIYS990103 -0.933 MIYS990105 -0.939 - VINM940102 -0.939 MIYS990104 -0.954 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 13.4 8.5 7.6 8.2 22.6 8.5 7.3 7.0 11.3 20.3 - 20.8 6.1 15.7 23.9 9.9 8.2 10.3 24.5 19.5 19.5 -// -H BAEK050101 -D Linker index (Bae et al., 2005) -R PMID:15746283 -A Bae, K., Mallick, B.K. and Elsik, C.G. -T Prediction of protein inter-domain linker regions by a hidden Markov model -J Bioinformatics 21, ??-?? (2005) -C CASG920101 0.919 BASU050102 0.898 WERD780101 0.895 - NISK860101 0.886 ZHOH040103 0.884 NISK800101 0.881 - NADH010104 0.875 ROSG850102 0.868 CORJ870101 0.862 - PONP930101 0.856 BIOV880101 0.853 NADH010103 0.853 - NADH010105 0.850 QIAN880121 0.836 PONP800108 0.833 - PONP800102 0.818 PONP800101 0.812 CIDH920104 0.809 - NADH010106 0.809 BASU050103 0.806 SUYM030101 0.805 - OOBM770103 -0.810 PARS000101 -0.821 KARP850102 -0.839 - FASG890101 -0.859 KRIW790101 -0.860 MIYS990105 -0.871 - VINM940102 -0.873 MIYS990103 -0.877 MIYS990104 -0.892 - VINM940101 -0.896 VINM940103 -0.906 GUYH850102 -0.907 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.0166 -0.0762 -0.0786 -0.1278 0.5724 -0.1051 -0.1794 -0.0442 0.1643 0.2758 - 0.2523 -0.2134 0.0197 0.3561 -0.4188 -0.1629 -0.0701 0.3836 0.2500 0.1782 -// -H HARY940101 -D Mean volumes of residues buried in protein interiors (Harpaz et al., 1994) -R PMID: 7922041 -A Harpaz, Y., Gerstein, M. and Chothia, C. -T Volume changes on protein folding -J Structure 2, 641-649 (1994) (Disulfide bonded cysteine, 103.5) -C PONJ960101 0.989 TSAJ990102 0.965 TSAJ990101 0.964 - CHOC750101 0.961 BIGC670101 0.960 GOLD730102 0.959 - KRIW790103 0.956 FAUJ880103 0.951 CHOC760101 0.946 - GRAR740103 0.946 CHAM820101 0.933 LEVM760105 0.919 - FASG760101 0.910 FAUJ880106 0.909 LEVM760102 0.905 - DAWD720101 0.900 CHAM830106 0.894 ROSG850101 0.869 - RADA880106 0.846 ZHOH040102 0.830 LEVM760106 0.829 - LEVM760107 0.815 RADA880103 -0.840 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 90.1 192.8 127.5 117.1 113.2 149.4 140.8 63.8 159.3 164.9 - 164.6 170.0 167.7 193.5 123.1 94.2 120.0 197.1 231.7 139.1 -// -H PONJ960101 -D Average volumes of residues (Pontius et al., 1996) -R PMID: 8950272 -A Pontius, J., Richelle, J. and Wodak, S.J. -T Deviations from standard atomic volumes as a quality measure for protein - crystal structures -J J. Mol. Biol 264, 121-136 (1996) (Disulfide bonded cysteine, 102.4) -C HARY940101 0.989 CHOC750101 0.966 FAUJ880103 0.963 - TSAJ990102 0.962 CHOC760101 0.961 TSAJ990101 0.960 - BIGC670101 0.950 GOLD730102 0.947 FASG760101 0.945 - KRIW790103 0.943 CHAM820101 0.938 GRAR740103 0.937 - LEVM760102 0.930 LEVM760105 0.928 CHAM830106 0.917 - FAUJ880106 0.913 DAWD720101 0.873 ROSG850101 0.862 - RADA880106 0.860 LEVM760107 0.827 ZHOH040102 0.823 - RADA880103 -0.873 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 91.5 196.1 138.3 135.2 114.4 156.4 154.6 67.5 163.2 162.6 - 163.4 162.5 165.9 198.8 123.4 102.0 126.0 209.8 237.2 138.4 -// -H DIGM050101 -D Hydrostatic pressure asymmetry index, PAI (Di Giulio, 2005) -R PMID: 15716096 -A Di Giulio M. -T A comparison of proteins from Pyrococcus furiosus and Pyrococcus abyssi: - barophily in the physicochemical properties of amino acids and in the genetic - code -J Gene 346, 1-6 (2005) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.076 1.361 1.056 1.290 0.753 0.729 1.118 1.346 0.985 0.926 - 1.054 1.105 0.974 0.869 0.820 1.342 0.871 0.666 0.531 1.131 -// -H WOLR790101 -D Hydrophobicity index (Wolfenden et al., 1979) -R PMID:493962 -A Wolfenden, R.V., Cullis, P.M. and Southgate, C.C.F. -T Water, protein folding, and the genetic code -J Science 206, 575-577 (1979) -C WOLR810101 0.996 RADA880101 0.933 RADA880104 0.926 - EISD840101 0.909 JACR890101 0.906 RADA880107 0.905 - RADA880105 0.903 KYTJ820101 0.869 JURD980101 0.864 - OLSK800101 0.859 CHOC760103 0.857 CHOC760104 0.851 - JANJ780102 0.833 NADH010101 0.826 JANJ790102 0.818 - JANJ780103 -0.806 GUYH850104 -0.815 OOBM770101 -0.831 - CHOC760102 -0.834 ROSM880102 -0.836 VHEG790101 -0.844 - JANJ780101 -0.856 ENGD860101 -0.877 PRAM900101 -0.877 - ROSM880101 -0.887 KUHL950101 -0.898 GUYH850105 -0.908 - FAUJ880109 -0.920 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.12 -2.55 -0.83 -0.83 0.59 -0.78 -0.92 1.20 -0.93 1.16 - 1.18 -0.80 0.55 0.67 0.54 -0.05 -0.02 -0.19 -0.23 1.13 -// -H OLSK800101 -D Average internal preferences (Olsen, 1980) -R PMID:7378453 -A Olsen, K.W. -T Internal residue criteria for predicting three-dimensional protein structures -J Biochim. Biophys. Acta 622, 259-267 (1980) -C CHOC760103 0.981 JURD980101 0.943 KYTJ820101 0.942 - JANJ780102 0.905 EISD860103 0.881 RADA880107 0.874 - CHOC760104 0.872 JANJ790102 0.870 WOLR810101 0.869 - EISD840101 0.869 WOLR790101 0.859 NADH010102 0.856 - DESM900102 0.849 NADH010101 0.843 RADA880101 0.840 - JANJ790101 0.828 MEIH800103 0.826 WARP780101 0.818 - LIFS790102 0.818 MANP780101 0.817 RADA880104 0.814 - NADH010103 0.807 PONP800103 0.801 ENGD860101 -0.805 - PRAM900101 -0.806 ROSM880101 -0.806 FAUJ880109 -0.821 - GUYH850101 -0.823 PUNT030101 -0.838 JANJ780103 -0.845 - RACS770102 -0.845 ROSM880102 -0.847 KUHL950101 -0.849 - MEIH800102 -0.858 JANJ780101 -0.858 GUYH850104 -0.871 - OOBM770101 -0.878 CHOC760102 -0.886 GUYH850105 -0.927 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.38 0.00 0.37 0.52 1.43 0.22 0.71 1.34 0.66 2.32 - 1.47 0.15 1.78 1.72 0.85 0.86 0.89 0.82 0.47 1.99 -// -H KIDA850101 -D Hydrophobicity-related index (Kidera et al., 1985) -R -A Kidera, A., Konishi, Y., Oka, M., Ooi, T. and Scheraga, A. -T Statistical Analysis of the Physical Properties of the 20 Naturally Occuring - Amino Acids -J J. Prot. Chem. 4, 23-55 (1985) -C ROSM880101 0.933 ROSM880102 0.920 LEVM760101 0.915 - KUHL950101 0.882 HOPT810101 0.881 GRAR740102 0.881 - PRAM900101 0.866 ENGD860101 0.866 MIYS990105 0.865 - FASG890101 0.861 PUNT030101 0.856 WOLS870101 0.852 - GUYH850104 0.848 JANJ780101 0.843 OOBM770101 0.843 - JANJ780103 0.842 MEIH800102 0.834 GUYH850101 0.834 - MIYS990104 0.822 MIYS990101 0.817 MIYS990102 0.817 - FUKS010104 0.814 PARJ860101 0.809 WOEC730101 0.807 - PUNT030102 0.807 MIYS990103 0.805 CHOC760102 0.804 - NADH010101 -0.803 CIDH920105 -0.803 RADA880104 -0.805 - BASU050103 -0.806 NAKH900110 -0.808 MEIH800103 -0.813 - CASG920101 -0.817 MEEJ800102 -0.823 GUOD860101 -0.828 - JANJ780102 -0.828 MIYS850101 -0.831 EISD860103 -0.832 - JACR890101 -0.836 CIDH920104 -0.836 RADA880107 -0.837 - PLIV810101 -0.841 NADH010104 -0.842 ROSG850102 -0.849 - MEEJ810101 -0.850 MEEJ810102 -0.851 ZHOH040103 -0.851 - JANJ790102 -0.858 NADH010103 -0.859 COWR900101 -0.868 - NADH010102 -0.874 RADA880108 -0.875 RADA880101 -0.883 - EISD860101 -0.890 BIOV880102 -0.892 BIOV880101 -0.893 - EISD840101 -0.900 BLAS910101 -0.901 ROSM880105 -0.922 - FAUJ830101 -0.946 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.27 1.87 0.81 0.81 -1.05 1.10 1.17 -0.16 0.28 -0.77 - -1.10 1.70 -0.73 -1.43 -0.75 0.42 0.63 -1.57 -0.56 -0.40 -// -H GUYH850102 -D Apparent partition energies calculated from Wertz-Scheraga index (Guy, 1985) -R PMID:3978191 -A Guy, H.R. -T Amino acid side-chain partition energies and distribution of residues in - soluble proteins -J Biophys. J. 47, 61-70 (1985) -C MIYS990104 0.928 VINM940101 0.924 MIYS990103 0.914 - MIYS990105 0.912 FASG890101 0.909 VINM940102 0.905 - OOBM770103 0.904 MEIH800101 0.899 VINM940103 0.895 - KARP850102 0.882 KRIW790101 0.878 MIYS990102 0.868 - GUYH850103 0.866 MIYS990101 0.865 RACS770101 0.859 - MEIH800102 0.856 RACS770102 0.853 FUKS010103 0.848 - KRIW790102 0.841 PARS000101 0.839 PARJ860101 0.836 - CORJ870108 0.821 RACS770103 0.821 FUKS010104 0.819 - KARP850101 0.811 KRIW710101 0.811 GRAR740102 0.806 - GUYH850101 0.805 PLIV810101 -0.802 CORJ870105 -0.804 - MEEJ810101 -0.813 BASU050101 -0.815 NADH010102 -0.824 - NADH010105 -0.826 CORJ870106 -0.830 CORJ870107 -0.834 - ZHOH040101 -0.836 CORJ870103 -0.841 CIDH920101 -0.843 - BASU050103 -0.845 MANP780101 -0.850 MEIH800103 -0.854 - CIDH920102 -0.855 PONP800103 -0.856 FAUJ830101 -0.857 - ROBB790101 -0.862 NADH010103 -0.866 CIDH920103 -0.871 - PONP800108 -0.873 PONP800101 -0.873 PONP800102 -0.874 - NADH010104 -0.879 CORJ870101 -0.883 MIYS850101 -0.884 - CIDH920105 -0.892 CIDH920104 -0.894 PONP930101 -0.897 - RADA880108 -0.902 BIOV880102 -0.903 BAEK050101 -0.907 - BASU050102 -0.911 ZHOH040103 -0.912 NISK800101 -0.914 - BIOV880101 -0.922 ROSG850102 -0.925 CASG920101 -0.941 - NISK860101 -0.950 WERD780101 -0.976 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.05 0.12 0.29 0.41 -0.84 0.46 0.38 0.31 -0.41 -0.69 - -0.62 0.57 -0.38 -0.45 0.46 0.12 0.38 -0.98 -0.25 -0.46 -// -H GUYH850103 -D Apparent partition energies calculated from Robson-Osguthorpe index (Guy, - 1985) -R PMID:3978191 -A Guy, H.R. -T Amino acid side-chain partition energies and distribution of residues in - soluble proteins -J Biophys. J. 47, 61-70 (1985) (Gly missing) -C OOBM770103 0.906 PARJ860101 0.897 MIYS990102 0.888 - MIYS990101 0.886 MIYS990105 0.883 MIYS990104 0.879 - VINM940102 0.875 FUKS010103 0.874 MEIH800101 0.873 - GUYH850102 0.866 VINM940101 0.860 FASG890101 0.860 - MIYS990103 0.857 RACS770101 0.844 WOLS870101 0.836 - CORJ870108 0.831 GRAR740102 0.831 PARS000101 0.822 - BULH740101 0.820 CORJ870103 -0.804 JOND750101 -0.807 - ROSM880104 -0.807 PONP800102 -0.808 ARGP820101 -0.808 - CORJ870104 -0.809 MEEJ800102 -0.809 CORJ870101 -0.815 - BIOV880102 -0.818 GUOD860101 -0.819 LEVM760106 -0.822 - PONP800101 -0.822 MEEJ810102 -0.823 PONP800108 -0.828 - NISK800101 -0.828 CORJ870105 -0.830 MANP780101 -0.833 - CORJ870107 -0.833 CORJ870106 -0.837 SWER830101 -0.839 - CORJ870102 -0.839 ROSG850102 -0.844 CASG920101 -0.846 - BASU050101 -0.852 CIDH920101 -0.854 BASU050103 -0.854 - PONP930101 -0.858 MEEJ810101 -0.864 FAUJ830101 -0.870 - RADA880108 -0.870 WERD780101 -0.876 ZHOH040103 -0.879 - PLIV810101 -0.881 ZHOH040101 -0.882 BIOV880101 -0.890 - CIDH920103 -0.890 MIYS850101 -0.897 CIDH920102 -0.904 - BASU050102 -0.904 CIDH920104 -0.906 NISK860101 -0.914 - CIDH920105 -0.927 ROBB790101 -0.999 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.54 -0.16 0.38 0.65 -1.13 0.05 0.38 NA -0.59 -2.15 - -1.08 0.48 -0.97 -1.51 -0.22 0.65 0.27 -1.61 -1.13 -0.75 -// -H GUYH850104 -D Apparent partition energies calculated from Janin index (Guy, 1985) -R PMID:3978191 -A Guy, H.R. -T Amino acid side-chain partition energies and distribution of residues in - soluble proteins -J Biophys. J. 47, 61-70 (1985) -C JANJ780101 0.989 JANJ780103 0.983 CHOC760102 0.970 - OOBM770101 0.966 GUYH850105 0.908 MEIH800102 0.892 - ENGD860101 0.881 PRAM900101 0.881 FASG890101 0.872 - GUYH850101 0.857 ROSM880102 0.856 KRIW790102 0.849 - RACS770102 0.849 KIDA850101 0.848 PUNT030101 0.840 - RACS770103 0.839 KUHL950101 0.835 KRIW790101 0.822 - MIYS990105 0.821 ROSM880101 0.814 FAUJ880109 0.812 - MIYS990103 0.805 NADH010101 -0.804 PONP800108 -0.807 - WOLR790101 -0.815 FAUJ830101 -0.816 CASG920101 -0.819 - DESM900101 -0.824 PONP800102 -0.824 WOLR810101 -0.826 - JACR890101 -0.827 CORJ870101 -0.830 RADA880101 -0.831 - EISD860103 -0.835 BIOV880101 -0.844 CHOC760104 -0.845 - PONP800103 -0.845 RADA880108 -0.847 MEIH800103 -0.854 - BIOV880102 -0.855 JANJ790101 -0.862 NADH010104 -0.867 - KYTJ820101 -0.869 OLSK800101 -0.871 JURD980101 -0.880 - WARP780101 -0.882 ROSG850102 -0.891 EISD840101 -0.892 - DESM900102 -0.896 RADA880107 -0.896 NADH010103 -0.899 - CHOC760103 -0.907 NADH010102 -0.946 JANJ780102 -0.968 - JANJ790102 -0.999 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.31 1.30 0.49 0.58 -0.87 0.70 0.68 -0.33 0.13 -0.66 - -0.53 1.79 -0.38 -0.45 0.34 0.10 0.21 -0.27 0.40 -0.62 -// -H GUYH850105 -D Apparent partition energies calculated from Chothia index (Guy, 1985) -R PMID:3978191 -A Guy, H.R. -T Amino acid side-chain partition energies and distribution of residues in - soluble proteins -J Biophys. J. 47, 61-70 (1985) -C CHOC760102 0.946 FAUJ880109 0.927 JANJ780101 0.923 - GUYH850104 0.908 JANJ780103 0.885 OOBM770101 0.874 - ROSM880102 0.874 PRAM900101 0.867 ENGD860101 0.867 - PUNT030101 0.858 KUHL950101 0.850 ROSM880101 0.849 - VHEG790101 0.845 GUYH850101 0.843 MEIH800102 0.811 - RADA880105 -0.809 EISD860103 -0.812 NADH010103 -0.815 - DESM900102 -0.818 CHOC760104 -0.822 YUTK870101 -0.841 - NADH010101 -0.847 NADH010102 -0.867 KYTJ820101 -0.883 - JACR890101 -0.887 JANJ780102 -0.898 RADA880104 -0.899 - RADA880101 -0.899 JURD980101 -0.900 WOLR790101 -0.908 - JANJ790102 -0.913 WOLR810101 -0.916 OLSK800101 -0.927 - CHOC760103 -0.933 EISD840101 -0.951 RADA880107 -0.953 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.27 2.00 0.61 0.50 -0.23 1.00 0.33 -0.22 0.37 -0.80 - -0.44 1.17 -0.31 -0.55 0.36 0.17 0.18 0.05 0.48 -0.65 -// -H ROSM880104 -D Hydropathies of amino acid side chains, neutral form (Roseman, 1988) -R PMID:3398047 -A Roseman, M.A. -T Hydrophilicity of Polar Amino Acid Side-chains is Markedly Reduced by - Flanking Peptide Bonds -J J. Mol. Biol. 200, 513-522 (1988) (Arg Pro missing) -C MEEJ810101 0.911 CIDH920105 0.886 MEEJ810102 0.885 - ARGP820101 0.872 JOND750101 0.872 GUOD860101 0.868 - PLIV810101 0.866 CIDH920103 0.866 CIDH920104 0.860 - CIDH920102 0.859 ZHOH040101 0.858 SIMZ760101 0.855 - NOZY710101 0.847 BASU050102 0.846 SWER830101 0.844 - CORJ870102 0.844 TAKK010101 0.840 BASU050101 0.830 - VENT840101 0.829 ZHOH040103 0.826 MIYS850101 0.824 - GOLD730101 0.808 ROBB790101 0.807 BLAS910101 0.802 - NISK860101 0.801 GUYH850103 -0.807 MIYS990102 -0.839 - MIYS990101 -0.843 WOLS870101 -0.870 BULH740101 -0.884 - PARJ860101 -0.896 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.39 NA -1.91 -0.71 0.25 -1.30 -0.18 0.00 -0.60 1.82 - 1.82 0.32 0.96 2.27 NA -1.24 -1.00 2.13 1.47 1.30 -// -H ROSM880105 -D Hydropathies of amino acid side chains, pi-values in pH 7.0 (Roseman, 1988) -R PMID:3398047 -A Roseman, M.A. -T Hydrophilicity of Polar Amino Acid Side-chains is Markedly Reduced by - Flanking Peptide Bonds -J J. Mol. Biol. 200, 513-522 (1988) (Pro missing) -C BLAS910101 0.954 EISD860101 0.948 FAUJ830101 0.937 - RADA880101 0.933 EISD840101 0.923 BIOV880101 0.874 - BIOV880102 0.871 RADA880102 0.870 BASU050103 0.864 - JACR890101 0.863 PLIV810101 0.862 RADA880108 0.861 - NAKH900110 0.859 ZIMJ680105 0.857 CIDH920104 0.855 - NADH010102 0.845 MIYS850101 0.844 SWER830101 0.843 - CIDH920105 0.843 CORJ870102 0.841 MEEJ800102 0.841 - ZHOH040103 0.839 ROSG850102 0.838 NISK860101 0.836 - CIDH920103 0.832 BASU050101 0.828 GUOD860101 0.826 - NADH010101 0.825 DESM900102 0.825 NADH010103 0.822 - JURD980101 0.818 COWR900101 0.817 CASG920101 0.814 - PONP800108 0.808 KYTJ820101 0.806 JANJ790102 0.805 - MEEJ810102 0.804 MANP780101 0.803 MEEJ810101 0.802 - EISD860103 0.801 MEIH800101 -0.802 FAUJ880110 -0.803 - VINM940101 -0.818 MEIH800102 -0.821 FASG890101 -0.822 - OOBM770101 -0.824 OOBM770103 -0.828 MIYS990103 -0.829 - GUYH850101 -0.832 MIYS990104 -0.841 MIYS990102 -0.854 - MIYS990101 -0.854 ROSM880102 -0.871 PARJ860101 -0.871 - MIYS990105 -0.873 KUHL950101 -0.896 WOLS870101 -0.899 - VHEG790101 -0.901 WOEC730101 -0.902 ENGD860101 -0.912 - PRAM900101 -0.912 PUNT030102 -0.917 KIDA850101 -0.922 - PUNT030101 -0.922 GRAR740102 -0.924 ROSM880101 -0.951 - LEVM760101 -0.954 HOPT810101 -0.955 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.39 -3.95 -1.91 -3.81 0.25 -1.30 -2.91 0.00 -0.64 1.82 - 1.82 -2.77 0.96 2.27 NA -1.24 -1.00 2.13 1.47 1.30 -// -H JACR890101 -D Weights from the IFH scale (Jacobs-White, 1989) -R PMID:2742845 -A Jacobs, R. and White, S.H. -T The nature of the hydrophobic bonding of small peptides at the bilayer - interface: implications for the insertion of transbilayer helices -J Biochemistry 28, 3421-3437 (1989) -C EISD840101 0.938 RADA880101 0.936 WOLR810101 0.908 - WOLR790101 0.906 RADA880107 0.895 RADA880104 0.868 - ROSM880105 0.863 JANJ790102 0.840 EISD860101 0.827 - BLAS910101 0.819 CHOC760102 -0.803 JANJ780103 -0.809 - PUNT030101 -0.812 OOBM770101 -0.812 HOPT810101 -0.816 - GUYH850104 -0.827 LEVM760101 -0.832 ZIMJ680103 -0.835 - KIDA850101 -0.836 ROSM880102 -0.837 KUHL950101 -0.864 - JANJ780101 -0.865 EISD860102 -0.871 GUYH850105 -0.887 - FAUJ880109 -0.889 ROSM880101 -0.892 VHEG790101 -0.903 - ENGD860101 -0.948 PRAM900101 -0.948 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.18 -5.40 -1.30 -2.36 0.27 -1.22 -2.10 0.09 -1.48 0.37 - 0.41 -2.53 0.44 0.50 -0.20 -0.40 -0.34 -0.01 -0.08 0.32 -// -H COWR900101 -D Hydrophobicity index, 3.0 pH (Cowan-Whittaker, 1990) -R PMID:2134053 -A Cowan, R. and Whittaker, R.G. -T Hydrophobicity indices for amino acid residues as determined by - high-performance liquid chromatography -J Peptide Res. 3, 75-80 (1990) -C GUOD860101 0.920 BLAS910101 0.885 FAUJ830101 0.876 - EISD860103 0.868 EISD840101 0.863 WILM950101 0.860 - PLIV810101 0.857 JURD980101 0.855 MEEJ810102 0.849 - NADH010102 0.848 KYTJ820101 0.845 RADA880101 0.840 - NADH010103 0.825 MIYS850101 0.824 MEEJ810101 0.823 - CHOC760103 0.820 RADA880104 0.818 ROSM880105 0.817 - RADA880107 0.810 NADH010104 0.807 CIDH920104 0.803 - BULH740101 -0.804 MIYS990102 -0.825 MIYS990101 -0.826 - ROSM880101 -0.849 GRAR740102 -0.854 KIDA850101 -0.868 - WOLS870101 -0.883 ROSM880102 -0.897 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.42 -1.56 -1.03 -0.51 0.84 -0.96 -0.37 0.00 -2.28 1.81 - 1.80 -2.03 1.18 1.74 0.86 -0.64 -0.26 1.46 0.51 1.34 -// -H BLAS910101 -D Scaled side chain hydrophobicity values (Black-Mould, 1991) -R PMID:2042744 -A Black, S.D. and Mould D.R. -T Development of Hydrophobicity Parameters to Analyze Proteins Which Bear Post- - or Cotranslational Modifications -J Analytical Biochemistry 193, 72-82 (1991) -C ROSM880105 0.954 FAUJ830101 0.923 RADA880101 0.922 - EISD860101 0.911 SWER830101 0.887 COWR900101 0.885 - CORJ870102 0.884 EISD840101 0.884 CIDH920104 0.881 - BASU050103 0.878 PLIV810101 0.871 GUOD860101 0.866 - ZIMJ680105 0.855 NADH010101 0.855 BASU050101 0.853 - CIDH920105 0.852 MEEJ800102 0.849 ZHOH040103 0.846 - JURD980101 0.841 CIDH920103 0.838 BIOV880101 0.838 - KYTJ820101 0.836 MEEJ810101 0.831 MEEJ810102 0.830 - EISD860103 0.830 MIYS850101 0.829 RADA880108 0.826 - RADA880102 0.826 NADH010102 0.824 GOLD730101 0.821 - JACR890101 0.819 NADH010103 0.812 PONP800108 0.810 - WILM950101 0.810 BIOV880102 0.809 BASU050102 0.807 - CIDH920102 0.805 NISK860101 0.803 ROSM880104 0.802 - MANP780101 0.802 NAKH900110 0.801 MIYS990103 -0.806 - MIYS990104 -0.818 VHEG790101 -0.847 MIYS990105 -0.848 - MIYS990102 -0.854 MIYS990101 -0.857 BULH740101 -0.860 - ENGD860101 -0.864 PRAM900101 -0.864 PUNT030101 -0.865 - PARJ860101 -0.870 HOPT810101 -0.877 PUNT030102 -0.877 - ROSM880102 -0.884 LEVM760101 -0.889 KUHL950101 -0.894 - KIDA850101 -0.901 WOEC730101 -0.902 WOLS870101 -0.930 - ROSM880101 -0.940 GRAR740102 -0.950 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.616 0.000 0.236 0.028 0.680 0.251 0.043 0.501 0.165 0.943 - 0.943 0.283 0.738 1.000 0.711 0.359 0.450 0.878 0.880 0.825 -// -H CASG920101 -D Hydrophobicity scale from native protein structures (Casari-Sippl, 1992) -R PMID:1569551 -A Casari, G. and Sippl, M. -T Structure-derived Hydrophobic Potential. Hydrophobic Potential Derived from - X-ray Structures of Globular Proteins is able to Identify Native Folds -J J. Mol. Biol. 224, 725-732 (1992) -C ROSG850102 0.952 CORJ870101 0.947 NISK860101 0.938 - BIOV880101 0.935 NISK800101 0.935 WERD780101 0.927 - BAEK050101 0.919 BIOV880102 0.919 NADH010104 0.915 - NADH010103 0.914 PONP930101 0.911 RADA880108 0.903 - CIDH920104 0.903 PONP800108 0.901 ZHOH040103 0.900 - PONP800102 0.889 NADH010102 0.889 MEIH800103 0.881 - PONP800103 0.879 FAUJ830101 0.875 PONP800101 0.874 - BASU050102 0.873 DESM900102 0.869 MIYS850101 0.863 - BASU050103 0.860 CIDH920105 0.859 JANJ780102 0.853 - ROBB790101 0.850 MANP780101 0.848 NADH010105 0.838 - JANJ790101 0.828 CIDH920103 0.827 JANJ790102 0.822 - CORJ870103 0.821 ROSM880105 0.814 CORJ870107 0.813 - DESM900101 0.806 BASU050101 0.806 CIDH920102 0.802 - RACS770101 -0.807 KRIW710101 -0.808 VINM940104 -0.810 - PUNT030101 -0.811 KIDA850101 -0.817 GUYH850104 -0.819 - JANJ780103 -0.825 PARS000101 -0.826 FUKS010102 -0.831 - PUNT030102 -0.831 MIYS990101 -0.834 GUYH850101 -0.836 - OOBM770101 -0.838 MIYS990102 -0.838 HOPT810101 -0.839 - RACS770103 -0.846 GUYH850103 -0.846 RACS770102 -0.849 - GRAR740102 -0.850 PARS000102 -0.859 KRIW790102 -0.865 - VINM940102 -0.874 MEIH800101 -0.875 MEIH800102 -0.879 - FUKS010104 -0.892 KARP850102 -0.901 KRIW790101 -0.911 - OOBM770103 -0.914 VINM940103 -0.915 MIYS990103 -0.915 - FASG890101 -0.924 MIYS990104 -0.931 MIYS990105 -0.937 - GUYH850102 -0.941 VINM940101 -0.947 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.2 -0.7 -0.5 -1.4 1.9 -1.1 -1.3 -0.1 0.4 1.4 - 0.5 -1.6 0.5 1.0 -1.0 -0.7 -0.4 1.6 0.5 0.7 -// -H CORJ870101 -D NNEIG index (Cornette et al., 1987) -R PMID:3656427 -A Cornette, J.L., Cease, K.B., Margalit, H., Spouge, J.L., Berzofsky, J.A. and - DeLisi, C. -T Hydrophobicity Scales and Computational Techniques for Detecting Amphipathic - Structures in Proteins -J J. Mol. Biol. 196, 659-685, (1987) -C NISK800101 0.976 PONP800108 0.969 PONP930101 0.960 - PONP800102 0.954 ROSG850102 0.948 CASG920101 0.947 - PONP800103 0.944 PONP800101 0.939 NISK860101 0.935 - NADH010103 0.921 MANP780101 0.918 BIOV880101 0.917 - NADH010104 0.914 NADH010102 0.909 MEIH800103 0.902 - DESM900102 0.901 BASU050103 0.897 CIDH920104 0.896 - RADA880108 0.895 JANJ790101 0.891 CORJ870103 0.889 - JANJ780102 0.885 BIOV880102 0.882 CORJ870107 0.878 - WERD780101 0.873 DESM900101 0.870 ZHOH040103 0.864 - BASU050101 0.863 CORJ870104 0.863 BAEK050101 0.862 - MIYS850101 0.861 BASU050102 0.855 JURD980101 0.849 - KYTJ820101 0.848 NADH010105 0.846 FAUJ830101 0.845 - QIAN880121 0.842 KANM800102 0.839 KANM800104 0.833 - CORJ870106 0.829 ROBB760106 0.829 NADH010101 0.827 - CIDH920105 0.827 QIAN880122 0.826 LIFS790101 0.826 - JANJ790102 0.825 CIDH920103 0.822 CHOC760103 0.822 - GEIM800107 0.821 ROBB790101 0.819 CORJ870105 0.818 - CHOP780202 0.815 ROBB760105 0.809 EISD860103 0.809 - QIAN880120 0.802 WARP780101 0.800 VINM940104 -0.805 - KRIW710101 -0.812 FUKS010104 -0.814 GUYH850103 -0.815 - MUNV940103 -0.817 GUYH850101 -0.820 JANJ780103 -0.826 - GUYH850104 -0.830 RACS770103 -0.832 VINM940103 -0.837 - RACS770102 -0.837 KRIW790102 -0.838 WOEC730101 -0.841 - VINM940102 -0.847 PARS000102 -0.850 MIYS990101 -0.854 - MEIH800101 -0.855 MIYS990102 -0.859 PUNT030102 -0.860 - KARP850102 -0.865 CORJ870108 -0.866 OOBM770101 -0.875 - MEIH800102 -0.878 GUYH850102 -0.883 GRAR740102 -0.890 - KRIW790101 -0.902 OOBM770103 -0.907 FASG890101 -0.921 - VINM940101 -0.924 MIYS990104 -0.932 MIYS990103 -0.936 - MIYS990105 -0.937 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 50.76 48.66 45.80 43.17 58.74 46.09 43.48 50.27 49.33 57.30 - 53.89 42.92 52.75 53.45 45.39 47.24 49.26 53.59 51.79 56.12 -// -H CORJ870102 -D SWEIG index (Cornette et al., 1987) -R PMID:3656427 -A Cornette, J.L., Cease, K.B., Margalit, H., Spouge, J.L., Berzofsky, J.A. and - DeLisi, C. -T Hydrophobicity Scales and Computational Techniques for Detecting Amphipathic - Structures in Proteins -J J. Mol. Biol. 196, 659-685, (1987) -C SWER830101 1.000 BASU050101 0.921 CIDH920105 0.890 - BASU050103 0.889 MIYS850101 0.887 BLAS910101 0.884 - CORJ870104 0.881 CORJ870107 0.881 BASU050102 0.881 - PLIV810101 0.873 CIDH920102 0.872 NISK860101 0.864 - CIDH920103 0.864 ZHOH040103 0.863 ZHOH040101 0.862 - CORJ870103 0.860 CIDH920104 0.860 CIDH920101 0.855 - PTIO830102 0.854 GUOD860101 0.852 CORJ870105 0.848 - CORJ870106 0.845 ROSM880104 0.844 ROSM880105 0.841 - NOZY710101 0.838 VENT840101 0.837 BIOV880101 0.837 - ROBB790101 0.835 PONP930101 0.832 FAUJ830101 0.831 - ZIMJ680105 0.828 QIAN880120 0.825 RADA880108 0.823 - EISD860101 0.822 CHOP780202 0.822 RADA880102 0.821 - MANP780101 0.818 LIFS790101 0.815 PALJ810104 0.809 - MEEJ810101 0.807 WERD780101 0.804 MUNV940103 -0.802 - RACS770101 -0.802 VINM940102 -0.812 VINM940101 -0.817 - WOEC730101 -0.828 MEIH800101 -0.829 OOBM770103 -0.832 - PUNT030101 -0.835 GUYH850103 -0.839 PARS000101 -0.848 - MIYS990103 -0.877 MIYS990105 -0.882 CORJ870108 -0.883 - WOLS870101 -0.885 MIYS990104 -0.886 PARJ860101 -0.892 - GRAR740102 -0.893 MIYS990102 -0.920 MIYS990101 -0.922 - BULH740101 -0.923 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.414 -0.584 -0.916 -1.310 0.162 -0.905 -1.218 -0.684 -0.630 1.237 - 1.215 -0.670 1.020 1.938 -0.503 -0.563 -0.289 0.514 1.699 0.899 -// -H CORJ870103 -D PRIFT index (Cornette et al., 1987) -R PMID:3656427 -A Cornette, J.L., Cease, K.B., Margalit, H., Spouge, J.L., Berzofsky, J.A. and - DeLisi, C. -T Hydrophobicity Scales and Computational Techniques for Detecting Amphipathic - Structures in Proteins -J J. Mol. Biol. 196, 659-685, (1987) -C CORJ870104 0.988 CORJ870107 0.969 PONP930101 0.920 - PONP800101 0.917 NISK860101 0.914 PONP800102 0.907 - MANP780101 0.906 MIYS850101 0.892 BASU050101 0.890 - PONP800103 0.889 CORJ870101 0.889 NISK800101 0.886 - ROSG850102 0.883 WERD780101 0.882 MEIH800103 0.880 - CORJ870106 0.880 CORJ870105 0.880 RADA880108 0.876 - BIOV880101 0.876 PONP800108 0.873 BASU050103 0.867 - SWER830101 0.862 CORJ870102 0.860 CIDH920103 0.856 - BASU050102 0.845 CIDH920104 0.841 BIOV880102 0.840 - CIDH920105 0.838 NADH010103 0.830 CIDH920101 0.825 - NADH010102 0.823 CASG920101 0.821 PONP800106 0.821 - NADH010104 0.820 ZHOH040103 0.819 DESM900102 0.815 - DESM900101 0.812 QIAN880122 0.808 JURD980101 0.808 - KYTJ820101 0.806 ROBB790101 0.804 PUNT030101 -0.802 - GUYH850103 -0.804 PARJ860101 -0.807 KRIW790102 -0.812 - GUYH850101 -0.813 PARS000101 -0.815 RACS770103 -0.827 - KRIW790101 -0.830 GRAR740102 -0.836 OOBM770103 -0.839 - GUYH850102 -0.841 VINM940101 -0.848 KARP850102 -0.850 - RACS770102 -0.852 MEIH800102 -0.855 RACS770101 -0.870 - MEIH800101 -0.871 FASG890101 -0.876 MIYS990101 -0.911 - MIYS990102 -0.913 MIYS990104 -0.920 MIYS990105 -0.923 - MIYS990103 -0.930 CORJ870108 -0.959 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.96 0.75 -1.94 -5.68 4.54 -5.30 -3.86 -1.28 -0.62 5.54 - 6.81 -5.62 4.76 5.06 -4.47 -1.92 -3.99 0.21 3.34 5.39 -// -H CORJ870104 -D PRILS index (Cornette et al., 1987) -R PMID:3656427 -A Cornette, J.L., Cease, K.B., Margalit, H., Spouge, J.L., Berzofsky, J.A. and - DeLisi, C. -T Hydrophobicity Scales and Computational Techniques for Detecting Amphipathic - Structures in Proteins -J J. Mol. Biol. 196, 659-685, (1987) -C CORJ870103 0.988 CORJ870107 0.973 PONP800101 0.913 - BASU050101 0.910 MANP780101 0.908 PONP800102 0.901 - NISK860101 0.901 PONP930101 0.901 CORJ870105 0.895 - MIYS850101 0.892 CORJ870106 0.889 PONP800103 0.884 - SWER830101 0.883 CORJ870102 0.881 RADA880108 0.880 - BASU050103 0.877 NISK800101 0.868 BIOV880101 0.867 - CORJ870101 0.863 PONP800108 0.861 ROSG850102 0.860 - CIDH920103 0.857 MEIH800103 0.856 WERD780101 0.850 - PONP800106 0.842 CIDH920101 0.840 BASU050102 0.838 - CIDH920105 0.838 CIDH920104 0.832 PLIV810101 0.821 - BIOV880102 0.815 KYTJ820101 0.812 JURD980101 0.812 - ZHOH040103 0.809 ROBB760106 0.808 ROBB790101 0.807 - ROBB760105 0.803 NADH010103 0.802 PARS000101 -0.800 - KRIW790101 -0.801 PUNT030101 -0.804 GUYH850103 -0.809 - OOBM770103 -0.814 GUYH850101 -0.815 PARJ860101 -0.823 - VINM940101 -0.826 KARP850102 -0.830 RACS770102 -0.838 - MEIH800102 -0.840 GRAR740102 -0.850 RACS770101 -0.860 - MEIH800101 -0.862 FASG890101 -0.865 MIYS990104 -0.905 - MIYS990105 -0.908 MIYS990103 -0.919 MIYS990101 -0.919 - MIYS990102 -0.920 CORJ870108 -0.972 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.26 0.08 -0.46 -1.30 0.83 -0.83 -0.73 -0.40 -0.18 1.10 - 1.52 -1.01 1.09 1.09 -0.62 -0.55 -0.71 -0.13 0.69 1.15 -// -H CORJ870105 -D ALTFT index (Cornette et al., 1987) -R PMID:3656427 -A Cornette, J.L., Cease, K.B., Margalit, H., Spouge, J.L., Berzofsky, J.A. and - DeLisi, C. -T Hydrophobicity Scales and Computational Techniques for Detecting Amphipathic - Structures in Proteins -J J. Mol. Biol. 196, 659-685, (1987) -C CORJ870106 0.991 CORJ870107 0.968 NISK860101 0.901 - CORJ870104 0.895 BASU050101 0.888 CORJ870103 0.880 - MIYS850101 0.879 PONP930101 0.878 BEGF750102 0.878 - PONP800101 0.867 ROSG850102 0.864 BIOV880101 0.859 - WERD780101 0.858 QIAN880120 0.858 RADA880108 0.854 - MANP780101 0.853 BASU050103 0.852 SWER830101 0.848 - CORJ870102 0.848 PONP800102 0.841 BASU050102 0.834 - NISK800101 0.834 CIDH920103 0.832 LIFS790101 0.830 - CIDH920101 0.828 MEIH800103 0.827 PLIV810101 0.827 - ROBB790101 0.827 BIOV880102 0.823 CIDH920105 0.822 - PONP800103 0.821 CORJ870101 0.818 PONP800107 0.812 - QIAN880119 0.810 PONP800108 0.801 GUYH850102 -0.804 - VINM940102 -0.807 GEIM800110 -0.807 GUYH850101 -0.810 - CHOP780203 -0.815 PUNT030102 -0.817 FASG890101 -0.821 - MUNV940103 -0.829 FUKS010103 -0.829 GUYH850103 -0.830 - OOBM770103 -0.833 KARP850102 -0.834 PUNT030101 -0.834 - PARJ860101 -0.837 RACS770102 -0.839 MEIH800102 -0.839 - MIYS990105 -0.867 VINM940101 -0.873 RACS770101 -0.876 - PARS000101 -0.878 MEIH800101 -0.883 MIYS990104 -0.885 - MIYS990103 -0.894 MIYS990101 -0.897 MIYS990102 -0.898 - CORJ870108 -0.967 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.73 -1.03 -5.29 -6.13 0.64 -0.96 -2.90 -2.67 3.03 5.04 - 4.91 -5.99 3.34 5.20 -4.32 -3.00 -1.91 0.51 2.87 3.98 -// -H CORJ870106 -D ALTLS index (Cornette et al., 1987) -R PMID:3656427 -A Cornette, J.L., Cease, K.B., Margalit, H., Spouge, J.L., Berzofsky, J.A. and - DeLisi, C. -T Hydrophobicity Scales and Computational Techniques for Detecting Amphipathic - Structures in Proteins -J J. Mol. Biol. 196, 659-685, (1987) -C CORJ870105 0.991 CORJ870107 0.963 NISK860101 0.908 - BASU050101 0.891 CORJ870104 0.889 PONP930101 0.889 - PONP800101 0.887 MIYS850101 0.884 CORJ870103 0.880 - WERD780101 0.878 ROSG850102 0.878 BIOV880101 0.870 - MANP780101 0.867 QIAN880120 0.866 PONP800102 0.864 - RADA880108 0.863 BASU050102 0.859 BASU050103 0.858 - NISK800101 0.857 BEGF750102 0.853 CORJ870102 0.845 - SWER830101 0.845 PONP800103 0.840 CIDH920103 0.837 - LIFS790101 0.836 ROBB790101 0.834 CIDH920101 0.832 - CORJ870101 0.829 CIDH920105 0.826 ZHOH040103 0.822 - MEIH800103 0.822 PLIV810101 0.820 BIOV880102 0.818 - PONP800108 0.813 PTIO830102 0.809 PONP800106 0.807 - QIAN880121 0.806 QIAN880119 0.803 PONP800107 0.800 - CHOP780216 -0.803 GEIM800110 -0.812 CHOP780203 -0.813 - PUNT030102 -0.814 PARJ860101 -0.820 KRIW790101 -0.825 - OOBM770103 -0.826 GUYH850102 -0.830 VINM940102 -0.830 - PUNT030101 -0.833 GUYH850101 -0.833 MEIH800102 -0.835 - GUYH850103 -0.837 RACS770102 -0.839 FASG890101 -0.841 - FUKS010103 -0.846 MUNV940103 -0.848 KARP850102 -0.870 - RACS770101 -0.879 MIYS990105 -0.879 VINM940101 -0.881 - MEIH800101 -0.882 PARS000101 -0.891 MIYS990101 -0.898 - MIYS990102 -0.899 MIYS990104 -0.902 MIYS990103 -0.909 - CORJ870108 -0.968 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -1.35 -3.89 -10.96 -11.88 4.37 -1.34 -4.56 -5.82 6.54 10.93 - 9.88 -11.92 7.47 11.35 -10.86 -6.21 -4.83 1.80 7.61 8.20 -// -H CORJ870107 -D TOTFT index (Cornette et al., 1987) -R PMID:3656427 -A Cornette, J.L., Cease, K.B., Margalit, H., Spouge, J.L., Berzofsky, J.A. and - DeLisi, C. -T Hydrophobicity Scales and Computational Techniques for Detecting Amphipathic - Structures in Proteins -J J. Mol. Biol. 196, 659-685, (1987) -C CORJ870104 0.973 CORJ870103 0.969 CORJ870105 0.968 - CORJ870106 0.963 NISK860101 0.928 PONP930101 0.923 - PONP800101 0.923 BASU050101 0.913 MIYS850101 0.911 - MANP780101 0.908 PONP800102 0.905 ROSG850102 0.898 - RADA880108 0.889 BIOV880101 0.889 WERD780101 0.887 - PONP800103 0.884 NISK800101 0.884 MEIH800103 0.883 - BASU050103 0.883 SWER830101 0.883 CORJ870102 0.881 - CORJ870101 0.878 CIDH920103 0.866 PONP800108 0.859 - BASU050102 0.855 BIOV880102 0.850 CIDH920105 0.848 - CIDH920101 0.843 QIAN880120 0.840 CIDH920104 0.835 - PONP800106 0.834 ROBB790101 0.832 BEGF750102 0.831 - PLIV810101 0.829 ZHOH040103 0.822 LIFS790101 0.820 - ROBB760106 0.819 DESM900102 0.819 NADH010103 0.817 - DESM900101 0.815 CASG920101 0.813 NADH010102 0.812 - PTIO830102 0.810 NADH010104 0.808 QIAN880121 0.806 - PONP800107 0.805 JURD980101 0.804 KYTJ820101 0.801 - ROBB760105 0.800 FUKS010103 -0.805 RACS770103 -0.808 - PUNT030102 -0.810 VINM940102 -0.811 KRIW790102 -0.816 - MUNV940103 -0.832 KRIW790101 -0.832 GUYH850103 -0.833 - GUYH850102 -0.834 PARJ860101 -0.838 GRAR740102 -0.840 - GUYH850101 -0.841 PUNT030101 -0.848 OOBM770103 -0.851 - PARS000101 -0.865 KARP850102 -0.866 MEIH800102 -0.871 - RACS770102 -0.871 FASG890101 -0.871 VINM940101 -0.877 - MEIH800101 -0.897 RACS770101 -0.898 MIYS990105 -0.918 - MIYS990104 -0.924 MIYS990101 -0.929 MIYS990102 -0.930 - MIYS990103 -0.937 CORJ870108 -0.996 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.56 -0.26 -2.87 -4.31 1.78 -2.31 -2.35 -1.35 0.81 3.83 - 4.09 -4.08 3.11 3.67 -3.22 -1.85 -1.97 -0.11 2.17 3.31 -// -H CORJ870108 -D TOTLS index (Cornette et al., 1987) -R PMID:3656427 -A Cornette, J.L., Cease, K.B., Margalit, H., Spouge, J.L., Berzofsky, J.A. and - DeLisi, C. -T Hydrophobicity Scales and Computational Techniques for Detecting Amphipathic - Structures in Proteins -J J. Mol. Biol. 196, 659-685, (1987) -C MIYS990103 0.933 MIYS990102 0.929 MIYS990101 0.928 - MIYS990104 0.918 MIYS990105 0.909 RACS770101 0.891 - MEIH800101 0.889 FASG890101 0.872 KARP850102 0.868 - RACS770102 0.863 VINM940101 0.862 MEIH800102 0.860 - PARS000101 0.854 GUYH850101 0.851 PUNT030101 0.845 - GRAR740102 0.838 KRIW790101 0.833 GUYH850103 0.831 - PARJ860101 0.831 MUNV940103 0.830 OOBM770103 0.829 - GUYH850102 0.821 FUKS010103 0.818 PUNT030102 0.810 - VINM940102 0.810 KYTJ820101 -0.802 NADH010102 -0.803 - NADH010104 -0.805 JURD980101 -0.806 DESM900101 -0.809 - DESM900102 -0.811 ROBB760105 -0.811 LIFS790101 -0.811 - PTIO830102 -0.812 NADH010103 -0.812 ROBB760106 -0.820 - ZHOH040103 -0.821 BEGF750102 -0.825 ROBB790101 -0.829 - CIDH920104 -0.829 BIOV880102 -0.831 QIAN880120 -0.834 - PLIV810101 -0.838 CIDH920105 -0.843 CIDH920101 -0.845 - PONP800108 -0.853 BASU050102 -0.855 PONP800106 -0.859 - CIDH920103 -0.864 CORJ870101 -0.866 MEIH800103 -0.870 - WERD780101 -0.878 NISK800101 -0.880 BASU050103 -0.883 - CORJ870102 -0.883 SWER830101 -0.884 BIOV880101 -0.886 - PONP800103 -0.889 ROSG850102 -0.890 RADA880108 -0.893 - MIYS850101 -0.910 PONP800102 -0.911 MANP780101 -0.911 - PONP930101 -0.912 BASU050101 -0.916 NISK860101 -0.920 - PONP800101 -0.928 CORJ870103 -0.959 CORJ870105 -0.967 - CORJ870106 -0.968 CORJ870104 -0.972 CORJ870107 -0.996 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.37 1.33 6.29 8.93 -4.47 3.88 4.04 3.39 -1.65 -7.92 - -8.68 7.70 -7.13 -7.96 6.25 4.08 4.02 0.79 -4.73 -6.94 -// -H MIYS990101 -D Relative partition energies derived by the Bethe approximation - (Miyazawa-Jernigan, 1999) -R PMID:10336383 -A Miyazawa, S. and Jernigan, R. L. -T Self-consistent estimation of inter-residue protein contact energies based on - an equilibrium mixture approximation of residues -J Proteins 34, 49-68 (1999) -C MIYS990102 1.000 MIYS990103 0.957 MIYS990104 0.954 - MIYS990105 0.951 PARJ860101 0.944 MEIH800101 0.940 - CORJ870108 0.928 FASG890101 0.926 RACS770101 0.920 - RACS770102 0.917 MEIH800102 0.913 WOLS870101 0.912 - GRAR740102 0.903 GUYH850101 0.891 PUNT030101 0.888 - OOBM770103 0.887 GUYH850103 0.886 BULH740101 0.884 - PUNT030102 0.881 VINM940101 0.880 KRIW790101 0.870 - GUYH850102 0.865 VINM940102 0.841 PARS000101 0.830 - KARP850102 0.825 KRIW790102 0.821 ROSM880102 0.819 - KIDA850101 0.817 VINM940103 0.817 WOEC730101 0.805 - HOPT810101 0.803 ZIMJ680105 -0.801 CHOC760103 -0.803 - DESM900102 -0.809 LIFS790101 -0.811 NADH010101 -0.816 - ARGP820103 -0.817 VENT840101 -0.821 NOZY710101 -0.821 - WILM950101 -0.822 COWR900101 -0.826 EISD860101 -0.827 - EISD860103 -0.829 PTIO830102 -0.833 CASG920101 -0.834 - RADA880102 -0.837 NADH010105 -0.837 KYTJ820101 -0.840 - ROSM880104 -0.843 CIDH920101 -0.847 JURD980101 -0.852 - MEEJ810102 -0.854 CORJ870101 -0.854 ROSM880105 -0.854 - BLAS910101 -0.857 NISK800101 -0.860 PONP800108 -0.866 - MEEJ810101 -0.867 NADH010102 -0.870 ZHOH040101 -0.871 - PONP800103 -0.871 CIDH920102 -0.872 PONP800102 -0.874 - PONP800107 -0.877 ROBB790101 -0.883 PONP800101 -0.883 - NADH010104 -0.885 NADH010103 -0.887 MEIH800103 -0.891 - CORJ870105 -0.897 CORJ870106 -0.898 CIDH920103 -0.900 - BIOV880102 -0.901 FAUJ830101 -0.907 CORJ870103 -0.911 - WERD780101 -0.912 ROSG850102 -0.913 MANP780101 -0.913 - CIDH920104 -0.915 PONP930101 -0.916 CIDH920105 -0.916 - GUOD860101 -0.917 CORJ870104 -0.919 CORJ870102 -0.922 - SWER830101 -0.923 ZHOH040103 -0.926 CORJ870107 -0.929 - RADA880108 -0.932 BASU050102 -0.935 BASU050103 -0.940 - PLIV810101 -0.944 BASU050101 -0.945 BIOV880101 -0.947 - NISK860101 -0.957 MIYS850101 -0.977 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.02 0.44 0.63 0.72 -0.96 0.56 0.74 0.38 0.00 -1.89 - -2.29 1.01 -1.36 -2.22 0.47 0.55 0.25 -1.28 -0.88 -1.34 -// -H MIYS990102 -D Optimized relative partition energies - method A (Miyazawa-Jernigan, 1999) -R PMID:10336383 -A Miyazawa, S. and Jernigan, R. L. -T Self-consistent estimation of inter-residue protein contact energies based on - an equilibrium mixture approximation of residues -J Proteins 34, 49-68 (1999) -C MIYS990101 1.000 MIYS990103 0.958 MIYS990104 0.956 - MIYS990105 0.953 PARJ860101 0.942 MEIH800101 0.941 - FASG890101 0.929 CORJ870108 0.929 RACS770101 0.921 - RACS770102 0.919 MEIH800102 0.916 WOLS870101 0.910 - GRAR740102 0.903 GUYH850101 0.892 OOBM770103 0.891 - GUYH850103 0.888 PUNT030101 0.887 VINM940101 0.883 - PUNT030102 0.882 BULH740101 0.880 KRIW790101 0.873 - GUYH850102 0.868 VINM940102 0.842 PARS000101 0.830 - KARP850102 0.828 KRIW790102 0.826 VINM940103 0.818 - ROSM880102 0.818 KIDA850101 0.817 WOEC730101 0.805 - HOPT810101 0.804 CHOP780202 -0.801 CHOC760103 -0.805 - DESM900102 -0.811 LIFS790101 -0.813 ARGP820103 -0.814 - NADH010101 -0.815 NOZY710101 -0.819 VENT840101 -0.820 - WILM950101 -0.822 EISD860101 -0.824 COWR900101 -0.825 - EISD860103 -0.831 RADA880102 -0.834 PTIO830102 -0.834 - NADH010105 -0.838 CASG920101 -0.838 ROSM880104 -0.839 - KYTJ820101 -0.840 CIDH920101 -0.846 MEEJ810102 -0.853 - JURD980101 -0.853 ROSM880105 -0.854 BLAS910101 -0.854 - CORJ870101 -0.859 NISK800101 -0.863 MEEJ810101 -0.866 - PONP800108 -0.869 ZHOH040101 -0.870 CIDH920102 -0.870 - NADH010102 -0.872 PONP800103 -0.875 PONP800102 -0.877 - PONP800107 -0.879 ROBB790101 -0.885 PONP800101 -0.886 - NADH010104 -0.888 NADH010103 -0.889 MEIH800103 -0.893 - CORJ870105 -0.898 CORJ870106 -0.899 CIDH920103 -0.899 - BIOV880102 -0.902 FAUJ830101 -0.908 CORJ870103 -0.913 - WERD780101 -0.914 CIDH920105 -0.915 MANP780101 -0.915 - GUOD860101 -0.916 CIDH920104 -0.916 ROSG850102 -0.916 - PONP930101 -0.919 CORJ870102 -0.920 CORJ870104 -0.920 - SWER830101 -0.921 ZHOH040103 -0.927 CORJ870107 -0.930 - RADA880108 -0.934 BASU050102 -0.936 BASU050103 -0.940 - PLIV810101 -0.942 BASU050101 -0.945 BIOV880101 -0.948 - NISK860101 -0.960 MIYS850101 -0.978 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.00 0.07 0.10 0.12 -0.16 0.09 0.12 0.06 0.00 -0.31 - -0.37 0.17 -0.22 -0.36 0.08 0.09 0.04 -0.21 -0.14 -0.22 -// -H MIYS990103 -D Optimized relative partition energies - method B (Miyazawa-Jernigan, 1999) -R PMID:10336383 -A Miyazawa, S. and Jernigan, R. L. -T Self-consistent estimation of inter-residue protein contact energies based on - an equilibrium mixture approximation of residues -J Proteins 34, 49-68 (1999) -C MIYS990104 0.995 MIYS990105 0.984 MIYS990102 0.958 - FASG890101 0.957 MIYS990101 0.957 VINM940101 0.951 - KRIW790101 0.944 CORJ870108 0.933 MEIH800101 0.923 - MEIH800102 0.917 GUYH850102 0.914 OOBM770103 0.908 - RACS770102 0.908 GUYH850101 0.907 GRAR740102 0.904 - KARP850102 0.901 KRIW790102 0.899 VINM940102 0.895 - RACS770101 0.887 VINM940103 0.886 PUNT030102 0.881 - PARS000101 0.879 PUNT030101 0.864 PARJ860101 0.859 - GUYH850103 0.857 KRIW710101 0.856 FUKS010104 0.845 - RACS770103 0.840 MUNV940103 0.831 OOBM770101 0.827 - HOPT810101 0.825 WOEC730101 0.824 WOLS870101 0.815 - MONM990101 0.809 KIDA850101 0.805 GUYH850104 0.805 - FUKS010103 0.805 FUKS010102 0.803 GEIM800107 -0.803 - JANJ790102 -0.804 BLAS910101 -0.806 PONP800106 -0.807 - PALJ810104 -0.811 PTIO830102 -0.820 KANM800102 -0.823 - ZHOH040101 -0.824 CHOP780202 -0.825 NADH010101 -0.825 - GUOD860101 -0.828 QIAN880120 -0.829 ROSM880105 -0.829 - KYTJ820101 -0.833 JANJ780102 -0.834 ROBB760106 -0.836 - LIFS790101 -0.838 QIAN880121 -0.838 CIDH920101 -0.838 - JURD980101 -0.845 CIDH920102 -0.845 ROBB790101 -0.854 - DESM900101 -0.854 PLIV810101 -0.861 CIDH920103 -0.870 - DESM900102 -0.876 BAEK050101 -0.877 CORJ870102 -0.877 - SWER830101 -0.878 NADH010105 -0.879 CIDH920105 -0.886 - FAUJ830101 -0.893 CORJ870105 -0.894 CIDH920104 -0.902 - MEIH800103 -0.906 CORJ870106 -0.909 CASG920101 -0.915 - BASU050101 -0.918 MANP780101 -0.918 CORJ870104 -0.919 - PONP800108 -0.920 NADH010102 -0.923 BIOV880102 -0.923 - BASU050102 -0.924 CORJ870103 -0.930 ZHOH040103 -0.933 - CORJ870101 -0.936 CORJ870107 -0.937 NISK800101 -0.938 - WERD780101 -0.938 PONP800101 -0.940 PONP800103 -0.943 - BASU050103 -0.943 NADH010104 -0.944 NADH010103 -0.944 - PONP800102 -0.946 RADA880108 -0.950 PONP930101 -0.951 - MIYS850101 -0.952 BIOV880101 -0.962 ROSG850102 -0.966 - NISK860101 -0.974 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.03 0.09 0.13 0.17 -0.36 0.13 0.23 0.09 -0.04 -0.33 - -0.38 0.32 -0.30 -0.34 0.20 0.10 0.01 -0.24 -0.23 -0.29 -// -H MIYS990104 -D Optimized relative partition energies - method C (Miyazawa-Jernigan, 1999) -R PMID:10336383 -A Miyazawa, S. and Jernigan, R. L. -T Self-consistent estimation of inter-residue protein contact energies based on - an equilibrium mixture approximation of residues -J Proteins 34, 49-68 (1999) -C MIYS990103 0.995 MIYS990105 0.990 VINM940101 0.965 - MIYS990102 0.956 MIYS990101 0.954 FASG890101 0.949 - KRIW790101 0.945 OOBM770103 0.931 GUYH850102 0.928 - MEIH800101 0.925 VINM940102 0.922 CORJ870108 0.918 - GRAR740102 0.910 KARP850102 0.909 MEIH800102 0.903 - PARS000101 0.903 VINM940103 0.898 RACS770102 0.892 - GUYH850101 0.889 KRIW790102 0.889 RACS770101 0.884 - GUYH850103 0.879 PARJ860101 0.877 PUNT030102 0.874 - FUKS010104 0.862 PUNT030101 0.857 HOPT810101 0.843 - KRIW710101 0.837 RACS770103 0.833 WOLS870101 0.830 - MUNV940103 0.827 WOEC730101 0.827 FUKS010103 0.822 - KARP850101 0.822 KIDA850101 0.822 FUKS010102 0.818 - OOBM770101 0.806 LEVM760101 0.801 KYTJ820101 -0.800 - MEEJ810102 -0.807 KANM800102 -0.808 NADH010101 -0.810 - PALJ810104 -0.810 JANJ780102 -0.811 JURD980101 -0.813 - ROBB760106 -0.815 PTIO830102 -0.818 BLAS910101 -0.818 - DESM900101 -0.828 CHOP780202 -0.829 MEEJ810101 -0.831 - QIAN880121 -0.832 QIAN880120 -0.833 ROSM880105 -0.841 - LIFS790101 -0.843 GUOD860101 -0.846 DESM900102 -0.854 - CIDH920101 -0.860 ZHOH040101 -0.864 PLIV810101 -0.869 - NADH010105 -0.874 CIDH920102 -0.877 ROBB790101 -0.877 - CIDH920103 -0.883 CORJ870105 -0.885 CORJ870102 -0.886 - SWER830101 -0.887 BAEK050101 -0.892 MEIH800103 -0.894 - CORJ870106 -0.902 CORJ870104 -0.905 FAUJ830101 -0.906 - CIDH920105 -0.908 MANP780101 -0.909 NADH010102 -0.910 - CIDH920104 -0.916 BASU050101 -0.918 PONP800108 -0.918 - CORJ870103 -0.920 PONP800101 -0.924 CORJ870107 -0.924 - PONP800103 -0.929 PONP800102 -0.930 CASG920101 -0.931 - BIOV880102 -0.932 CORJ870101 -0.932 BASU050103 -0.938 - NISK800101 -0.938 NADH010103 -0.938 NADH010104 -0.940 - BASU050102 -0.942 RADA880108 -0.943 WERD780101 -0.949 - PONP930101 -0.949 MIYS850101 -0.953 ZHOH040103 -0.954 - ROSG850102 -0.962 BIOV880101 -0.965 NISK860101 -0.980 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.04 0.07 0.13 0.19 -0.38 0.14 0.23 0.09 -0.04 -0.34 - -0.37 0.33 -0.30 -0.38 0.19 0.12 0.03 -0.33 -0.29 -0.29 -// -H MIYS990105 -D Optimized relative partition energies - method D (Miyazawa-Jernigan, 1999) -R PMID:10336383 -A Miyazawa, S. and Jernigan, R. L. -T Self-consistent estimation of inter-residue protein contact energies based on - an equilibrium mixture approximation of residues -J Proteins 34, 49-68 (1999) -C MIYS990104 0.990 MIYS990103 0.984 FASG890101 0.959 - MIYS990102 0.953 VINM940101 0.952 MIYS990101 0.951 - OOBM770103 0.936 GRAR740102 0.928 KRIW790101 0.925 - MEIH800102 0.914 GUYH850102 0.912 MEIH800101 0.912 - CORJ870108 0.909 GUYH850101 0.895 RACS770102 0.893 - VINM940102 0.891 KARP850102 0.888 KRIW790102 0.887 - GUYH850103 0.883 VINM940103 0.880 PARJ860101 0.878 - PARS000101 0.877 PUNT030101 0.876 PUNT030102 0.874 - FUKS010104 0.870 RACS770101 0.866 KIDA850101 0.865 - HOPT810101 0.862 RACS770103 0.852 WOEC730101 0.849 - OOBM770101 0.844 WOLS870101 0.838 LEVM760101 0.828 - GUYH850104 0.821 JANJ780103 0.816 FUKS010102 0.813 - KRIW710101 0.801 EISD860103 -0.815 MEEJ810102 -0.817 - KYTJ820101 -0.818 JANJ790102 -0.820 NADH010101 -0.821 - JURD980101 -0.829 DESM900101 -0.832 ZHOH040101 -0.838 - MEEJ810101 -0.839 JANJ780102 -0.846 GUOD860101 -0.846 - BLAS910101 -0.848 CIDH920101 -0.849 NADH010105 -0.856 - CIDH920102 -0.859 CORJ870105 -0.867 PLIV810101 -0.869 - BAEK050101 -0.871 ROSM880105 -0.873 DESM900102 -0.875 - CIDH920103 -0.876 CORJ870106 -0.879 CORJ870102 -0.882 - SWER830101 -0.883 ROBB790101 -0.885 BASU050101 -0.900 - CIDH920105 -0.901 MANP780101 -0.906 CORJ870104 -0.908 - CIDH920104 -0.916 CORJ870107 -0.918 PONP800101 -0.918 - BASU050102 -0.919 MEIH800103 -0.919 FAUJ830101 -0.920 - NADH010102 -0.923 CORJ870103 -0.923 PONP800102 -0.927 - PONP800108 -0.927 BASU050103 -0.928 PONP800103 -0.928 - NADH010104 -0.934 NISK800101 -0.935 WERD780101 -0.936 - PONP930101 -0.936 CASG920101 -0.937 CORJ870101 -0.937 - ZHOH040103 -0.939 NADH010103 -0.939 BIOV880102 -0.947 - RADA880108 -0.950 MIYS850101 -0.951 ROSG850102 -0.968 - NISK860101 -0.972 BIOV880101 -0.975 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.02 0.08 0.10 0.19 -0.32 0.15 0.21 -0.02 -0.02 -0.28 - -0.32 0.30 -0.25 -0.33 0.11 0.11 0.05 -0.27 -0.23 -0.23 -// -H ENGD860101 -D Hydrophobicity index (Engelman et al., 1986) -R PMID:3521657 -A Engelman, D.M., Steitz, T.A. and Goldman, A. -T Identifying Nonpolar Transbilayer Helices in Amino Acid Sequences of Membrane - Proteins -J Ann.Rev.Biophys.Biophys.Chem. 15, 321-353 (1986) -C PRAM900101 1.000 ROSM880101 0.917 VHEG790101 0.909 - KUHL950101 0.908 OOBM770101 0.907 JANJ780101 0.901 - ROSM880102 0.891 PUNT030101 0.889 JANJ780103 0.884 - HOPT810101 0.882 GUYH850104 0.881 LEVM760101 0.881 - WOEC730101 0.871 PUNT030102 0.870 GUYH850105 0.867 - KIDA850101 0.866 GRAR740102 0.855 ZIMJ680103 0.854 - CHOC760102 0.826 MONM990101 0.820 GUYH850101 0.820 - FAUJ880109 0.814 RADA880104 -0.803 OLSK800101 -0.805 - CHOC760103 -0.813 NADH010103 -0.815 WARP780101 -0.827 - EISD860103 -0.831 NADH010101 -0.843 KYTJ820101 -0.850 - FAUJ830101 -0.853 JANJ780102 -0.860 JURD980101 -0.861 - EISD860101 -0.862 BLAS910101 -0.864 RADA880107 -0.865 - NADH010102 -0.870 WOLR790101 -0.877 WOLR810101 -0.887 - JANJ790102 -0.890 DESM900102 -0.890 ROSM880105 -0.912 - RADA880101 -0.932 EISD840101 -0.936 JACR890101 -0.948 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -1.6 12.3 4.8 9.2 -2.0 4.1 8.2 -1.0 3.0 -3.1 - -2.8 8.8 -3.4 -3.7 0.2 -0.6 -1.2 -1.9 0.7 -2.6 -// -H FASG890101 -D Hydrophobicity index (Fasman, 1989) -R -A Fasman, G.D. -T Prediction of Protein Structure and the Principles of Protein Conformation -J Plenum, New York 1989, page 457, Table XVII -C MIYS990105 0.959 MIYS990103 0.957 MEIH800102 0.951 - MIYS990104 0.949 RACS770102 0.935 GUYH850101 0.934 - MIYS990102 0.929 MIYS990101 0.926 MEIH800101 0.919 - KRIW790101 0.914 GUYH850102 0.909 VINM940101 0.904 - KRIW790102 0.882 GUYH850104 0.872 RACS770101 0.872 - GRAR740102 0.872 CORJ870108 0.872 KARP850102 0.871 - OOBM770103 0.869 VINM940103 0.868 OOBM770101 0.868 - KRIW710101 0.865 KIDA850101 0.861 GUYH850103 0.860 - PUNT030102 0.853 PUNT030101 0.845 FUKS010104 0.844 - RACS770103 0.842 ROSM880102 0.839 JANJ780103 0.838 - VINM940102 0.836 PARJ860101 0.825 KUHL950101 0.821 - JANJ780101 0.813 FUKS010103 0.812 GUOD860101 -0.801 - DESM900101 -0.808 CORJ870105 -0.821 ROSM880105 -0.822 - PONP800106 -0.823 NADH010101 -0.838 CORJ870106 -0.841 - KYTJ820101 -0.844 CIDH920103 -0.846 CHOC760103 -0.849 - BASU050101 -0.856 JURD980101 -0.857 PLIV810101 -0.858 - BAEK050101 -0.859 CIDH920105 -0.860 ROBB790101 -0.860 - EISD860103 -0.863 CORJ870104 -0.865 CORJ870107 -0.871 - JANJ790102 -0.875 CORJ870103 -0.876 NADH010105 -0.877 - DESM900102 -0.879 BASU050102 -0.881 JANJ790101 -0.885 - CIDH920104 -0.903 JANJ780102 -0.903 MANP780101 -0.904 - PONP930101 -0.907 ZHOH040103 -0.910 FAUJ830101 -0.911 - PONP800108 -0.913 BASU050103 -0.915 CORJ870101 -0.921 - NISK800101 -0.923 MEIH800103 -0.924 CASG920101 -0.924 - WERD780101 -0.926 BIOV880102 -0.928 NADH010102 -0.929 - PONP800101 -0.932 PONP800103 -0.936 MIYS850101 -0.938 - PONP800102 -0.944 NADH010104 -0.944 NADH010103 -0.945 - NISK860101 -0.949 ROSG850102 -0.976 RADA880108 -0.977 - BIOV880101 -0.982 -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - -0.21 2.11 0.96 1.36 -6.04 1.52 2.30 0.00 -1.23 -4.81 - -4.68 3.88 -3.66 -4.65 0.75 1.74 0.78 -3.32 -1.01 -3.50 -// -H KARS160101 -D Number of vertices (order of the graph) (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.00 8.00 5.00 5.00 3.00 6.00 6.00 1.00 7.00 5.00 - 5.00 6.00 5.00 8.00 4.00 3.00 4.00 11.00 9.00 4.00 -// -H KARS160102 -D Number of edges (size of the graph) (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.00 7.00 4.00 4.00 2.00 5.00 5.00 0.00 6.00 4.00 - 4.00 5.00 4.00 8.00 4.00 2.00 3.00 12.00 9.00 3.00 -// -H KARS160103 -D Total weighted degree of the graph (obtained by adding all the weights of - all the vertices) (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.00 12.00 8.00 8.00 4.00 10.00 10.00 0.00 14.00 8.00 - 8.00 10.00 8.00 14.00 8.00 4.00 6.00 24.00 18.00 6.00 -// -H KARS160104 -D Weighted domination number (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.00 6.00 4.00 4.00 2.00 4.00 5.00 1.00 6.000 4.00 - 4.00 4.00 4.00 6.00 4.00 2.00 3.00 8.00 7.00 3.00 -// -H KARS160105 -D Average eccentricity (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.00 8.120 5.00 5.17 2.33 5.860 6.00 0.00 6.71 3.25 - 5.00 7.00 5.40 7.00 4.00 1.670 3.250 11.10 8.88 3.25 -// -H KARS160106 -D Radius (minimum eccentricity) (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.00 6.00 3.00 3.00 1.00 4.00 4.00 0.00 6.000 3.00 - 3.00 5.00 3.00 6.000 4.00 2.00 1.00 9.000 6.000 1.00 -// -H KARS160107 -D Diameter (maximum eccentricity) (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.00 12.00 6.00 6.00 3.00 8.00 8.00 0.00 9.00 6.00 - 6.00 9.00 7.00 11.000 4.000 3.00 4.00 14.000 13.000 4.00 -// -H KARS160108 -D Average weighted degree (total degree, divided by the number of vertices) - (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.00 1.50 1.60 1.60 1.333 1.667 1.667 0.00 2.00 1.600 - 1.60 1.667 1.60 1.750 2.00 1.333 1.50 2.182 2.000 1.50 -// -H KARS160109 -D Maximum eigenvalue of the weighted Laplacian matrix of the graph - (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.00 12.499 11.539 11.539 6.243 12.207 11.530 0.00 12.876 10.851 - 11.029 10.363 9.49 14.851 12.00 5.00 9.928 13.511 12.868 9.928 -// -H KARS160110 -D Minimum eigenvalue of the weighted Laplacian matrix of the graph - (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.00 -4.307 -4.178 -4.178 -2.243 -4.255 -3.425 0.00 -3.721 -6.085 - -4.729 -3.151 -2.812 -4.801 -4.00 1.00 -3.928 -6.324 -4.793 -3.928 -// -H KARS160111 -D Average eigenvalue of the Laplacian matrix of the the graph - (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 1.00 3.500 3.20 3.20 2.00 3.333 3.333 0.00 4.286 1.80 - 3.20 3.00 2.80 4.25 4.00 2.00 3.00 4.00 4.333 3.00 -// -H KARS160112 -D Second smallest eigenvalue of the Laplacian matrix of the graph - (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 2.00 -2.590 0.528 0.528 2.00 -1.043 -0.538 0.00 -1.185 -1.517 - 1.052 -0.536 0.678 -1.672 4.00 2.00 3.00 -2.576 -2.054 3.00 -// -H KARS160113 -D Weighted domination number using the atomic number (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.00 19.00 12.00 12.00 6.00 12.00 12.00 1.00 15.00 12.00 - 12.00 12.00 18.00 18.00 12.00 6.00 6.00 24.00 18.00 6.00 -// -H KARS160114 -D Average weighted eccentricity based on the the atomic number - (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.00 31.444 16.50 16.40 16.670 21.167 21.00 3.50 23.10 15.60 - 15.60 24.50 27.20 23.25 12.00 13.33 12.40 27.50 27.78 10.50 -// -H KARS160115 -D Weighted radius based on the atomic number (minimum eccentricity) - (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.00 20.00 14.00 12.00 12.00 15.00 14.00 1.00 18.00 12.00 - 12.00 18.00 18.00 18.00 12.00 8.00 8.00 18.00 20.00 6.00 -// -H KARS160116 -D Weighted diameter based on the atomic number (maximum eccentricity) - (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.00 38.00 20.00 20.00 22.00 24.00 26.00 6.00 31.00 18.00 - 18.00 31.00 34.00 24.00 12.00 20.00 14.00 36.00 38.00 12.00 -// -H KARS160117 -D Total weighted atomic number of the graph (obtained by summing all the atomic - number of each of the vertices in the graph) (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 12.00 45.00 33.007 34.00 28.00 39.00 40.00 7.00 47.00 30.00 - 30.00 37.00 40.00 48.00 24.00 22.00 27.00 68.00 56.00 24.007 -// -H KARS160118 -D Average weighted atomic number or degree based on atomic number in the graph - (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.00 5.00 6.60 6.80 9.33 6.50 6.67 3.50 4.70 6.00 - 6.00 6.17 8.00 6.00 6.00 7.33 5.40 5.667 6.22 6.00 -// -H KARS160119 -D Weighted maximum eigenvalue based on the atomic numbers - (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 12.00 23.343 27.708 28.634 28.00 27.831 28.731 7.00 24.243 24.841 - 25.021 22.739 31.344 26.993 24.00 20.00 23.819 29.778 28.252 24.00 -// -H KARS160120 -D Weighted minimum eigenvalue based on the atomic numbers - (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 -1.734 -1.641 - 0.00 -0.179 0.00 0.00 0.00 0.00 -4.227 0.211 -0.96 0.00 -// -H KARS160121 -D Weighted average eigenvalue based on the atomic numbers - (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 6.00 10.667 10.00 10.40 11.333 10.50 10.667 3.50 10.400 9.60 - 9.60 10.167 13.60 12.00 12.00 8.667 9.00 12.75 12.222 9.00 -// -H KARS160122 -D Weighted second smallest eigenvalue of the weighted Laplacian matrix - (Karkbara-Knisley, 2016) -R -A Karkbara, S. and Knisley, D. -T A graph-theoretic model of single point mutations in the cystic fibrosis - transmembrane conductance regulator -J J. Adv. Biotechnol. Vol.6, No.1, 780-786 (2016) -C -I A/L R/K N/M D/F C/P Q/S E/T G/W H/Y I/V - 0.00 4.20 3.00 2.969 6.00 1.849 1.822 0.00 1.605 3.373 - 3.113 1.372 2.656 2.026 12.00 6.00 6.00 2.044 1.599 6.00 -// diff --git a/PyBioMed/doc/_build/doctrees/User_guide.doctree b/PyBioMed/doc/_build/doctrees/User_guide.doctree deleted file mode 100644 index 6aa4c32..0000000 Binary files a/PyBioMed/doc/_build/doctrees/User_guide.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/application.doctree b/PyBioMed/doc/_build/doctrees/application.doctree deleted file mode 100644 index 9bab95b..0000000 Binary files a/PyBioMed/doc/_build/doctrees/application.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/download.doctree b/PyBioMed/doc/_build/doctrees/download.doctree deleted file mode 100644 index 9644be5..0000000 Binary files a/PyBioMed/doc/_build/doctrees/download.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/environment.pickle b/PyBioMed/doc/_build/doctrees/environment.pickle deleted file mode 100644 index b3c09fc..0000000 Binary files a/PyBioMed/doc/_build/doctrees/environment.pickle and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/index.doctree b/PyBioMed/doc/_build/doctrees/index.doctree deleted file mode 100644 index aa8a2b4..0000000 Binary files a/PyBioMed/doc/_build/doctrees/index.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/modules.doctree b/PyBioMed/doc/_build/doctrees/modules.doctree deleted file mode 100644 index 0ddb172..0000000 Binary files a/PyBioMed/doc/_build/doctrees/modules.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/overview.doctree b/PyBioMed/doc/_build/doctrees/overview.doctree deleted file mode 100644 index 08a2ef1..0000000 Binary files a/PyBioMed/doc/_build/doctrees/overview.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/AAComposition.doctree b/PyBioMed/doc/_build/doctrees/reference/AAComposition.doctree deleted file mode 100644 index 7fce9f1..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/AAComposition.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/AAIndex.doctree b/PyBioMed/doc/_build/doctrees/reference/AAIndex.doctree deleted file mode 100644 index 265327a..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/AAIndex.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/AtomProperty.doctree b/PyBioMed/doc/_build/doctrees/reference/AtomProperty.doctree deleted file mode 100644 index 06b4bdd..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/AtomProperty.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/AtomTypes.doctree b/PyBioMed/doc/_build/doctrees/reference/AtomTypes.doctree deleted file mode 100644 index 7a0a9f2..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/AtomTypes.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/Autocorrelation.doctree b/PyBioMed/doc/_build/doctrees/reference/Autocorrelation.doctree deleted file mode 100644 index 11b8a85..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/Autocorrelation.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/CTD.doctree b/PyBioMed/doc/_build/doctrees/reference/CTD.doctree deleted file mode 100644 index acc54b5..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/CTD.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/ConjointTriad.doctree b/PyBioMed/doc/_build/doctrees/reference/ConjointTriad.doctree deleted file mode 100644 index e55625e..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/ConjointTriad.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/GetDNA.doctree b/PyBioMed/doc/_build/doctrees/reference/GetDNA.doctree deleted file mode 100644 index f340807..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/GetDNA.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/GetProtein.doctree b/PyBioMed/doc/_build/doctrees/reference/GetProtein.doctree deleted file mode 100644 index f01bdb1..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/GetProtein.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/GetProteinFromUniprot.doctree b/PyBioMed/doc/_build/doctrees/reference/GetProteinFromUniprot.doctree deleted file mode 100644 index ff89bec..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/GetProteinFromUniprot.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/GetSubSeq.doctree b/PyBioMed/doc/_build/doctrees/reference/GetSubSeq.doctree deleted file mode 100644 index e238bb9..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/GetSubSeq.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/Getmol.doctree b/PyBioMed/doc/_build/doctrees/reference/Getmol.doctree deleted file mode 100644 index 8662c6e..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/Getmol.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/ProCheck.doctree b/PyBioMed/doc/_build/doctrees/reference/ProCheck.doctree deleted file mode 100644 index becef82..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/ProCheck.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PseudoAAC.doctree b/PyBioMed/doc/_build/doctrees/reference/PseudoAAC.doctree deleted file mode 100644 index 1098466..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PseudoAAC.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PubChemFingerprints.doctree b/PyBioMed/doc/_build/doctrees/reference/PubChemFingerprints.doctree deleted file mode 100644 index 4b91023..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PubChemFingerprints.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyDNA.doctree b/PyBioMed/doc/_build/doctrees/reference/PyDNA.doctree deleted file mode 100644 index 3097c96..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyDNA.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyDNAac.doctree b/PyBioMed/doc/_build/doctrees/reference/PyDNAac.doctree deleted file mode 100644 index 2b2463a..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyDNAac.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyDNAacutil.doctree b/PyBioMed/doc/_build/doctrees/reference/PyDNAacutil.doctree deleted file mode 100644 index fa24166..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyDNAacutil.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyDNAnac.doctree b/PyBioMed/doc/_build/doctrees/reference/PyDNAnac.doctree deleted file mode 100644 index b1eeaf4..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyDNAnac.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyDNAnacutil.doctree b/PyBioMed/doc/_build/doctrees/reference/PyDNAnacutil.doctree deleted file mode 100644 index c7baebe..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyDNAnacutil.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyDNApsenac.doctree b/PyBioMed/doc/_build/doctrees/reference/PyDNApsenac.doctree deleted file mode 100644 index d249f39..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyDNApsenac.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyDNApsenacutil.doctree b/PyBioMed/doc/_build/doctrees/reference/PyDNApsenacutil.doctree deleted file mode 100644 index 674b7d1..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyDNApsenacutil.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyDNAutil.doctree b/PyBioMed/doc/_build/doctrees/reference/PyDNAutil.doctree deleted file mode 100644 index c2a2293..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyDNAutil.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyGetMol.doctree b/PyBioMed/doc/_build/doctrees/reference/PyGetMol.doctree deleted file mode 100644 index 9aeead4..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyGetMol.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyInteraction.doctree b/PyBioMed/doc/_build/doctrees/reference/PyInteraction.doctree deleted file mode 100644 index 725dbda..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyInteraction.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyInteraction_module.doctree b/PyBioMed/doc/_build/doctrees/reference/PyInteraction_module.doctree deleted file mode 100644 index a03cae0..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyInteraction_module.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyMolecule.doctree b/PyBioMed/doc/_build/doctrees/reference/PyMolecule.doctree deleted file mode 100644 index c39a289..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyMolecule.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyPreTools.doctree b/PyBioMed/doc/_build/doctrees/reference/PyPreTools.doctree deleted file mode 100644 index 1a73382..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyPreTools.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyPretreat.doctree b/PyBioMed/doc/_build/doctrees/reference/PyPretreat.doctree deleted file mode 100644 index 4f967f4..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyPretreat.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyPretreatDNA.doctree b/PyBioMed/doc/_build/doctrees/reference/PyPretreatDNA.doctree deleted file mode 100644 index 6ee6cb9..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyPretreatDNA.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyPretreatMol.doctree b/PyBioMed/doc/_build/doctrees/reference/PyPretreatMol.doctree deleted file mode 100644 index d93926b..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyPretreatMol.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyPretreatMolutil.doctree b/PyBioMed/doc/_build/doctrees/reference/PyPretreatMolutil.doctree deleted file mode 100644 index 0d92eaf..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyPretreatMolutil.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyPretreatPro.doctree b/PyBioMed/doc/_build/doctrees/reference/PyPretreatPro.doctree deleted file mode 100644 index 6e096b0..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyPretreatPro.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyProtein.doctree b/PyBioMed/doc/_build/doctrees/reference/PyProtein.doctree deleted file mode 100644 index b22383f..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyProtein.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyProteinAAComposition.doctree b/PyBioMed/doc/_build/doctrees/reference/PyProteinAAComposition.doctree deleted file mode 100644 index ec179c7..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyProteinAAComposition.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyProteinAAIndex.doctree b/PyBioMed/doc/_build/doctrees/reference/PyProteinAAIndex.doctree deleted file mode 100644 index b58f2fb..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyProteinAAIndex.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/PyProteinclass.doctree b/PyBioMed/doc/_build/doctrees/reference/PyProteinclass.doctree deleted file mode 100644 index cce2824..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/PyProteinclass.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/QuasiSequenceOrder.doctree b/PyBioMed/doc/_build/doctrees/reference/QuasiSequenceOrder.doctree deleted file mode 100644 index a6b4669..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/QuasiSequenceOrder.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/Scaffolds.doctree b/PyBioMed/doc/_build/doctrees/reference/Scaffolds.doctree deleted file mode 100644 index 8acd924..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/Scaffolds.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/basak.doctree b/PyBioMed/doc/_build/doctrees/reference/basak.doctree deleted file mode 100644 index 724a956..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/basak.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/bcut.doctree b/PyBioMed/doc/_build/doctrees/reference/bcut.doctree deleted file mode 100644 index 28359bd..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/bcut.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/cats2d.doctree b/PyBioMed/doc/_build/doctrees/reference/cats2d.doctree deleted file mode 100644 index c43b198..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/cats2d.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/charge.doctree b/PyBioMed/doc/_build/doctrees/reference/charge.doctree deleted file mode 100644 index 50f3673..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/charge.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/connectivity.doctree b/PyBioMed/doc/_build/doctrees/reference/connectivity.doctree deleted file mode 100644 index 63ab3ca..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/connectivity.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/constitution.doctree b/PyBioMed/doc/_build/doctrees/reference/constitution.doctree deleted file mode 100644 index 0273904..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/constitution.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/estate.doctree b/PyBioMed/doc/_build/doctrees/reference/estate.doctree deleted file mode 100644 index c08d70a..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/estate.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/fingerprint.doctree b/PyBioMed/doc/_build/doctrees/reference/fingerprint.doctree deleted file mode 100644 index 2d5d985..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/fingerprint.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/geary.doctree b/PyBioMed/doc/_build/doctrees/reference/geary.doctree deleted file mode 100644 index d46a0fd..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/geary.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/ghosecrippen.doctree b/PyBioMed/doc/_build/doctrees/reference/ghosecrippen.doctree deleted file mode 100644 index 01c60cb..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/ghosecrippen.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/kappa.doctree b/PyBioMed/doc/_build/doctrees/reference/kappa.doctree deleted file mode 100644 index ddfc83f..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/kappa.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/moe.doctree b/PyBioMed/doc/_build/doctrees/reference/moe.doctree deleted file mode 100644 index 6ecbb2c..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/moe.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/molproperty.doctree b/PyBioMed/doc/_build/doctrees/reference/molproperty.doctree deleted file mode 100644 index ab17852..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/molproperty.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/moran.doctree b/PyBioMed/doc/_build/doctrees/reference/moran.doctree deleted file mode 100644 index c20d19b..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/moran.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/moreaubroto.doctree b/PyBioMed/doc/_build/doctrees/reference/moreaubroto.doctree deleted file mode 100644 index b9a6f26..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/moreaubroto.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/test.doctree b/PyBioMed/doc/_build/doctrees/reference/test.doctree deleted file mode 100644 index 3ec77b1..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/test.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/test2.doctree b/PyBioMed/doc/_build/doctrees/reference/test2.doctree deleted file mode 100644 index 301c507..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/test2.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/test_PyBioMed.doctree b/PyBioMed/doc/_build/doctrees/reference/test_PyBioMed.doctree deleted file mode 100644 index a66fe69..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/test_PyBioMed.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/test_PyDNA.doctree b/PyBioMed/doc/_build/doctrees/reference/test_PyDNA.doctree deleted file mode 100644 index 4510118..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/test_PyDNA.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/test_PyGetMol.doctree b/PyBioMed/doc/_build/doctrees/reference/test_PyGetMol.doctree deleted file mode 100644 index c64a7eb..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/test_PyGetMol.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/test_PyInteration.doctree b/PyBioMed/doc/_build/doctrees/reference/test_PyInteration.doctree deleted file mode 100644 index b225ca3..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/test_PyInteration.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/test_PyMolecule.doctree b/PyBioMed/doc/_build/doctrees/reference/test_PyMolecule.doctree deleted file mode 100644 index 41bfb38..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/test_PyMolecule.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/test_PyPretreat.doctree b/PyBioMed/doc/_build/doctrees/reference/test_PyPretreat.doctree deleted file mode 100644 index 800c410..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/test_PyPretreat.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/test_PyProtein.doctree b/PyBioMed/doc/_build/doctrees/reference/test_PyProtein.doctree deleted file mode 100644 index d5a8bc4..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/test_PyProtein.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/reference/topology.doctree b/PyBioMed/doc/_build/doctrees/reference/topology.doctree deleted file mode 100644 index 834ac4a..0000000 Binary files a/PyBioMed/doc/_build/doctrees/reference/topology.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/doctrees/test.doctree b/PyBioMed/doc/_build/doctrees/test.doctree deleted file mode 100644 index a16db1c..0000000 Binary files a/PyBioMed/doc/_build/doctrees/test.doctree and /dev/null differ diff --git a/PyBioMed/doc/_build/html/.buildinfo b/PyBioMed/doc/_build/html/.buildinfo deleted file mode 100644 index 2c13069..0000000 --- a/PyBioMed/doc/_build/html/.buildinfo +++ /dev/null @@ -1,4 +0,0 @@ -# Sphinx build info version 1 -# This file hashes the configuration used when building these files. When it is not found, a full rebuild will be done. -config: 18ef17ef3dae341eb72d32647ca26c22 -tags: 645f666f9bcd5a90fca523b33c5a78b7 diff --git a/PyBioMed/doc/_build/html/User_guide.html b/PyBioMed/doc/_build/html/User_guide.html deleted file mode 100644 index 45b27ef..0000000 --- a/PyBioMed/doc/_build/html/User_guide.html +++ /dev/null @@ -1,679 +0,0 @@ - - - - - - - - Getting Started with PyBioMed — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - - -
-
-
-
- -
-

Getting Started with PyBioMed

-

This document is intended to provide an overview of how one can use the PyBioMed functionality from Python. If you find mistakes, or have suggestions for improvements, please either fix them yourselves in the source document (the .py file) or send them to the mailing list: oriental-cds@163.com and gadsby@163.com.

-
-

Installing the PyBioMed package

-

PyBioMed has been successfully tested on Linux and Windows systems. The user could download the -PyBioMed package via: https://raw.githubusercontent.com/gadsbyfly/PyBioMed/master/PyBioMed/download/PyBioMed-1.0.zip. The installation process of PyBioMed is very easy:

-
-

Note

-

You first need to install RDKit and pybel successfully.

-
-

On Windows:

-

(1): download the PyBioMed-1.0.zip

-

(2): extract the PyBioMed-1.0.zip file

-

(3): open cmd.exe and change dictionary to PyBioMed-1.0 (write the command “cd PyBioMed-1.0” in cmd shell)

-

(4): write the command “python setup.py install” in cmd shell

-

On Linux:

-

(1): download the PyBioMed package (.zip)

-

(2): extract PyBioMed-1.0.zip

-

(3): open shell and change dictionary to PyBioMed-1.0 (write the command “cd PyBioMed-1.0” in shell)

-

(4): write the command “python setup.py install” in shell

-
-
-

Getting molecules

-

The PyGetMol provide different formats to get molecular structures, protein sequence and DNA sequence.

-
-

Getting molecular structure

-

In order to be convenient to users, the Getmol module provides the tool to get molecular structures by the molecular ID from website including NCBI, EBI, CAS, Kegg and Drugbank.

-
>>> from PyBioMed.PyGetMol import Getmol
->>> DrugBankID = 'DB01014'
->>> smi = Getmol.GetMolFromDrugbank(DrugBankID)
->>> print smi
-N[C@@H](CO)C(=O)O
->>> smi=Getmol.GetMolFromCAS(casid="50-12-4")
->>> print smi
-CCC1(c2ccccc2)C(=O)N(C)C(=N1)O
->>> smi=Getmol.GetMolFromNCBI(cid="2244")
->>> print smi
-CC(=O)Oc1ccccc1C(=O)O
->>> smi=Getmol.GetMolFromKegg(kid="D02176")
->>> print smi
-C[N+](C)(C)C[C@H](O)CC(=O)[O-]
-
-
-
-
-

Reading molecules

-

The Getmol module also provides the tool to read molecules in different formats including SDF, Mol, InChi and Smiles.

-

Users can read a molecule from string.

-
>>> from PyBioMed.PyGetMol.Getmol import ReadMolFromSmile
->>> mol = ReadMolFromSmile('N[C@@H](CO)C(=O)O')
->>> print mol
-<rdkit.Chem.rdchem.Mol object at 0x0D8D3688>
-
-
-

Users can also read a molecule from a file.

-
>>> from PyBioMed.PyGetMol.Getmol import ReadMolFromSDF
->>> mol = ReadMolFromSDF('./PyBioMed/test/test_data/test.sdf')  #You should change the path to your own real path
->>> print mol
-<rdkit.Chem.rdmolfiles.SDMolSupplier at 0xd8d03f0>
-
-
-
-
-

Getting protein sequence

-

The GetProtein module provides the tool to get protein sequence by the pdb ID and uniprot ID from website.

-
>>> from PyBioMed.PyGetMol import GetProtein
->>> GetProtein.GetPDB(['1atp'])
->>> seq = GetProtein.GetSeqFromPDB('1atp.pdb')
->>> print seq
-GNAAAAKKGSEQESVKEFLAKAKEDFLKKWETPSQNTAQLDQFDRIKTLGTGSFGRVMLVKHKESGNHYAMKILDKQKVVKLKQ
-IEHTLNEKRILQAVNFPFLVKLEFSFKDNSNLYMVMEYVAGGEMFSHLRRIGRFSEPHARFYAAQIVLTFEYLHSLDLIYRDLK
-PENLLIDQQGYIQVTDFGFAKRVKGRTWXLCGTPEYLAPEIILSKGYNKAVDWWALGVLIYEMAAGYPPFFADQPIQIYEKIVS
-GKVRFPSHFSSDLKDLLRNLLQVDLTKRFGNLKNGVNDIKNHKWFATTDWIAIYQRKVEAPFIPKFKGPGDTSNFDDYEEEEIR
-VXINEKCGKEFTEFTTYADFIASGRTGRRNAIHD
->>> seq = GetProtein.GetProteinSequence('O00560')
->>> print seq
-MSLYPSLEDLKVDKVIQAQTAFSANPANPAILSEASAPIPHDGNLYPRLYPELSQYMGLSLNEEEIRANVAVVSGAPLQGQLVA
-RPSSINYMVAPVTGNDVGIRRAEIKQGIREVILCKDQDGKIGLRLKSIDNGIFVQLVQANSPASLVGLRFGDQVLQINGENCAG
-WSSDKAHKVLKQAFGEKITMTIRDRPFERTITMHKDSTGHVGFIFKNGKITSIVKDSSAARNGLLTEHNICEINGQNVIGLKDS
-QIADILSTSGTVVTITIMPAFIFEHIIKRMAPSIMKSLMDHTIPEV
-
-
-
-
-

Reading protein sequence

-
>>> from PyBioMed.PyGetMol.GetProtein import ReadFasta
->>> f = open('./PyBioMed/test/test_data/protein.fasta')  #You should change the path to your own real path
->>> protein_seq = ReadFasta(f)
->>> print protein
-['MLIHQYDHATAQYIASHLADPDPLNDGRWLIPAFATATPLPERPARTWPFFLDGAWVLRPDHRGQRLYRTDTGEAAEIVAAG
-IAPEAAGLTPTPRPSDEHRWIDGAWQIDPQIVAQRARDAAMREFDLRMASARQANAGRADAYAAGLLSDAEIAVFKAWAIYQMD
-LVRVVSAASFPDDVQWPAEPDEAAVIEQADGKASAGDAAAA',
-'MLIHQYDHATAQYIASHLADPDPLNDGRWLIPAFATATPLPERPARTWPFFLDGAWVLRPDHRGQRLYRTDTGEAAEIVAAGI
-APEAAGLTPTPRPSDEHRWIDGAWQIDPQIVAQRARDAAMREFDLRMASARQANAGRADAYAAGLLSDAEIAVFKAWAIYQMDL
-VRVVSAASFPDDVQWPAEPDEAAVIEQADGKASAGDAAAA']
-
-
-
-
-

Getting DNA sequence

-

The GetDNA module provides the tool to get DNA sequence by the Gene ID from website.

-
>>> from PyBioMed.PyGetMol import GetDNA
->>> seq = GetDNA.GetDNAFromUniGene('AA954964')
->>> print seq
->ENA|AA954964|AA954964.1 op24b10.s1 Soares_NFL_T_GBC_S1 Homo sapiens cDNA clone IMAGE:1577755 3&apos;, mRNA sequence.
-TTTTAAAATATAAAAGGATAACTTTATTGAATATACAAATTCAAGAGCATTCAATTTTTT
-TTTAAGATTATGGCATAAGACAGATCAATGGTAATGGTTTATATATCCTATACTTACCAA
-ACAGATTAGGTAGATATACTGACCTATCAATGCTCAAAATAACAAAATGAATACATGTCC
-CTAAACTATTTCTGTATTCTATGACTACTAAATGGGAAATCTGTCAGCTGACCACCCACC
-AGACTTTTTCCCATAGGAAGTTTGATATGCTGTCATTGATATATACCATTTCTGAATATA
-AACCTCTATCTTGGGTCCTTTTCTCTTTGCCTACTTCATTATCTGTCTTCCCAACCCACC
-TAAGACTTAGTCAAAACAGGATACAGAGATCTGGATGGCTCTACGCAGAG
-
-
-
-
-

Reading DNA sequence

-
>>> from PyBioMed.PyGetMol.GetDNA import ReadFasta
->>> f = open('./PyBioMed/test/test_data/example.fasta')  #You should change the path to your own real path
->>> dna_seq = ReadFasta(f)
->>> print dna
-['GACTGAACTGCACTTTGGTTTCATATTATTTGCTC']
-
-
-
-
-
-

Pretreating structure

-

The PyPretreat can pretreat the molecular structure, the protein sequence and the DNA sequence.

-
-

Pretreating molecules

-

The PyPretreatMol can pretreat the molecular structure. The PyPretreatMol proivdes the following functions:

-
    -
  • Normalization of functional groups to a consistent format.
  • -
  • Recombination of separated charges.
  • -
  • Breaking of bonds to metal atoms.
  • -
  • Competitive reionization to ensure strongest acids ionize first in partially ionize molecules.
  • -
  • Tautomer enumeration and canonicalization.
  • -
  • Neutralization of charges.
  • -
  • Standardization or removal of stereochemistry information.
  • -
  • Filtering of salt and solvent fragments.
  • -
  • Generation of fragment, isotope, charge, tautomer or stereochemistry insensitive parent structures.
  • -
  • Validations to identify molecules with unusual and potentially troublesome characteristics.
  • -
-

The user can diconnect metal ion.

-
>>> from PyBioMed.PyPretreat.PyPretreatMol import StandardizeMol
->>> from rdkit import Chem
->>> mol = Chem.MolFromSmiles('[Na]OC(=O)c1ccc(C[S+2]([O-])([O-]))cc1')
->>> sdm = StandardizeMol()
->>> mol = sdm.disconnect_metals(mol)
->>> print Chem.MolToSmiles(mol, isomericSmiles=True)
-O=C([O-])c1ccc(C[S+2]([O-])[O-])cc1.[Na+]
-
-
-

Pretreat the molecular structure using all functions.

-
>>> from PyBioMed.PyPretreat import PyPretreatMol
->>> stdsmi = PyPretreatMol.StandardSmi('[Na]OC(=O)c1ccc(C[S+2]([O-])([O-]))cc1')
->>> print stdsmi
-O=C([O-])c1ccc(C[S](=O)=O)cc1
-
-
-
-
-

Pretreating protein sequence

-

The user can check the protein sequence using the PyPretreatPro. If the sequence is right, the result is the number of amino acids. If the sequence is wrong, the result is 0.

-
>>> from PyBioMed.PyPretreat import PyPretreatPro
->>> protein="ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDASU"
->>> print PyPretreatPro.ProteinCheck(protein)
-0
->>> from PyBioMed.PyPretreat import PyPretreatPro
->>> protein="ADGCRN"
->>> print PyPretreatPro.ProteinCheck(protein)
-6
-
-
-
-
-

Pretreating DNA sequence

-

The user can check the DNA sequence using the PyPretreatDNA. If the sequence is right, the result is True. If the sequence is wrong, the result is the wrong word.

-
>>> from PyBioMed.PyPretreat import PyPretreatDNA
->>> DNA="ATTTAC"
->>> print PyPretreatDNA.DNAChecks(DNA)
-True
->>> DNA= "ATCGUA"
->>> print PyPretreatDNA.DNAChecks(DNA)
-U
-
-
-
-
-
-

Calculating molecular descriptors

-

The PyBioMed package could calculate a large number of molecular descriptors. These descriptors capture and magnify distinct aspects of chemical structures. Generally speaking, all descriptors could be divided into two classes: descriptors and fingerprints. Descriptors only used the property of molecular topology, including constitutional descriptors, topological descriptors, connectivity indices, E-state indices, Basak information indices, Burden descriptors, autocorrelation descriptors, charge descriptors, molecular properties, kappa shape indices, MOE-type descriptors. Molecular fingerprints contain FP2, FP3, FP4,topological fingerprints, Estate, atompairs, torsions, morgan and MACCS.

-
-_images/single_features.png -

The descriptors could be calculated through PyBioMed package

-
-
-

Calculating descriptors

-

We could import the corresponding module to calculate the molecular descriptors as need. There is 14 modules to compute descriptors. Moreover, a easier way to compute these descriptors is construct a PyMolecule object, which encapsulates all methods for the calculation of descriptors.

-
-

Calculating molecular descriptors via functions

-

The GetConnectivity() function in the connectivity module can calculate the connectivity descriptors. The result is given in the form of dictionary.

-
>>> from PyBioMed.PyMolecule import connectivity
->>> from rdkit import Chem
->>> smi = 'CCC1(c2ccccc2)C(=O)N(C)C(=N1)O'
->>> mol = Chem.MolFromSmiles(smi)
->>> molecular_descriptor = connectivity.GetConnectivity(mol)
->>> print molecular_descriptor
-{'Chi3ch': 0.0, 'knotp': 2.708, 'dchi3': 3.359, 'dchi2': 2.895, 'dchi1': 2.374, 'dchi0': 2.415, 'Chi5ch': 0.068, 'Chiv4': 1.998, 'Chiv7': 0.259, 'Chiv6': 0.591, 'Chiv1': 5.241, 'Chiv0': 9.344, 'Chiv3': 3.012, 'Chiv2': 3.856, 'Chi4c': 0.083, 'dchi4': 2.96, 'Chiv4pc': 1.472, 'Chiv3c': 0.588, 'Chiv8': 0.118, 'Chi3c': 1.264, 'Chi8': 0.636, 'Chi9': 0.322, 'Chi2': 6.751, 'Chi3': 6.372, 'Chi0': 11.759, 'Chi1': 7.615, 'Chi6': 2.118, 'Chi7': 1.122, 'Chi4': 4.959, 'Chi5': 3.649, 'Chiv5': 1.244, 'Chiv4c': 0.04, 'Chiv9': 0.046, 'Chi4pc': 3.971, 'knotpv': 0.884, 'Chiv5ch': 0.025, 'Chiv3ch': 0.0, 'Chiv10': 0.015, 'Chiv6ch': 0.032, 'Chi10': 0.135, 'Chi4ch': 0.0, 'Chiv4ch': 0.0, 'mChi1': 0.448, 'Chi6ch': 0.102}
-
-
-

The function GetTopology() in the topology module can calculate all topological descriptors.

-
>>> from PyBioMed.PyMolecule import topology
->>> from rdkit import Chem
->>> smi = 'CCC1(c2ccccc2)C(=O)N(C)C(=N1)O'
->>> mol = Chem.MolFromSmiles(smi)
->>> molecular_descriptor = topology.GetTopology(mol)
->>> print len(molecular_descriptor)
-25
-
-
-

The function CATS2D() in the cats2d module can calculate all CATS2D descriptors.

-
>>> from PyBioMed.PyMolecule.cats2d import CATS2D
->>> smi = 'CC(N)C(=O)[O-]'
->>> mol = Chem.MolFromSmiles(smi)
->>> cats = CATS2D(mol,PathLength = 10,scale = 3)
->>> print cats
-{'CATS_AP4': 0.0, 'CATS_AP3': 1.0, 'CATS_AP6': 0.0, 'CATS_AA8': 0.0, 'CATS_AA9': 0.0, 'CATS_AP1': 0.0, ......, 'CATS_AP5': 0.0}
->>> print len(cats)
-150
-
-
-
-
-

Calculating molecular descriptors via PyMolecule object

-

The PyMolecule class can read molecules in different format including MOL, SMI, InChi and CAS. For example, the user can read a molecule in the format of SMI and calculate the E-state descriptors (316).

-
>>> from PyBioMed import Pymolecule
->>> smi = 'CCC1(c2ccccc2)C(=O)N(C)C(=N1)O'
->>> mol = Pymolecule.PyMolecule()
->>> mol.ReadMolFromSmile(smi)
->>> molecular_descriptor = mol.GetEstate()
->>> print len(molecular_descriptor)
-237
-
-
-

The object can also read molecules in the format of MOL file and calculate charge descriptors (25).

-
>>> from PyBioMed import Pymolecule
->>> mol = Pymolecule.PyMolecule()
->>> mol.ReadMolFromMol('test/test_data/test.mol')   #change path to the real path in your own computer
->>> molecular_descriptor = mol.GetCharge()
->>> print molecular_descriptor
-{'QNmin': 0, 'QOss': 0.534, 'Mpc': 0.122, 'QHss': 0.108, 'SPP': 0.817, 'LDI': 0.322, 'QCmin': -0.061, 'Mac': 0.151, 'Qass': 0.893, 'QNss': 0, 'QCmax': 0.339, 'QOmax': -0.246, 'Tpc': 1.584, 'Qmax': 0.339, 'QOmin': -0.478, 'Tnc': -1.584, 'QHmin': 0.035, 'QCss': 0.252, 'QHmax': 0.297, 'QNmax': 0, 'Rnc': 0.302, 'Rpc': 0.214, 'Qmin': -0.478, 'Tac': 3.167, 'Mnc': -0.198}
-
-
-

In order to be convenient to users, the object also provides the tool to get molecular structures by the molecular ID from website including NCBI, EBI, CAS, Kegg and Drugbank.

-
>>> from PyBioMed import Pymolecule
->>> DrugBankID = 'DB01014'
->>> mol = Pymolecule.PyMolecule()
->>> smi = mol.GetMolFromDrugbank(DrugBankID)
->>> mol.ReadMolFromSmile(smi)
->>> molecular_descriptor = mol.GetKappa()
->>> print molecular_descriptor
-{'phi': 5.989303307692309, 'kappa1': 22.291, 'kappa3': 7.51, 'kappa2': 11.111, 'kappam1': 18.587, 'kappam3': 5.395, 'kappam2': 8.378}
-
-
-

The code below can calculate all molecular descriptors except fingerprints.

-
>>> from PyBioMed import Pymolecule
->>> smi = 'CCOC=N'
->>> mol = Pymolecule.PyMolecule()
->>> mol.ReadMolFromSmile(smi)
->>> alldes = mol.GetAllDescriptor()
->>> print len(alldes)
-765
-
-
-
-
-
-

Calculating molecular fingerprints

-

In the fingerprint module, there are eighteen types of molecular fingerprints which are defined by abstracting and magnifying different aspects of molecular topology.

-
-

Calculating fingerprint via functions

-

The CalculateFP2Fingerprint() function calculates the FP2 fingerprint.

-
>>> from PyBioMed.PyMolecule.fingerprint import CalculateFP2Fingerprint
->>> import pybel
->>> smi = 'CCC1(c2ccccc2)C(=O)N(C)C(=N1)O'
->>> mol = pybel.readstring("smi", smi)
->>> mol_fingerprint = CalculateFP2Fingerprint(mol)
->>> print len(mol_fingerprint[1])
-103
-
-
-

The CalculateEstateFingerprint() function calculates the Estate fingerprint.

-
>>> from PyBioMed.PyMolecule.fingerprint import CalculateEstateFingerprint
->>> smi = 'CCC1(c2ccccc2)C(=O)N(C)C(=N1)O'
->>> mol = Chem.MolFromSmiles(smi)
->>> mol_fingerprint = CalculateEstateFingerprint(mol)
->>> print len(mol_fingerprint[2])
-79
-
-
-

The function GhoseCrippenFingerprint() in the ghosecrippen module can calculate all ghosecrippen descriptors.

-
>>> from PyBioMed.PyMolecule.ghosecrippen import GhoseCrippenFingerprint
->>> smi = 'CC(N)C(=O)O'
->>> mol = Chem.MolFromSmiles(smi)
->>> ghoseFP = GhoseCrippenFingerprint(mol)
->>> print ghoseFP
-{'S3': 0, 'S2': 0, 'S1': 0, 'S4': 0, ......, 'N9': 0, 'Hal2': 0}
->>> print len(ghoseFP)
-110
-
-
-
-
-

Calculating fingerprint via object

-

The PyMolecule class can calculate eleven kinds of fingerprints. For example, the user can read a molecule in the format of SMI and calculate the ECFP4 fingerprint (1024).

-
>>> from PyBioMed import Pymolecule
->>> smi = 'CCOC=N'
->>> mol = Pymolecule.PyMolecule()
->>> mol.ReadMolFromSmile(smi)
->>> res = mol.GetFingerprint(FPName='ECFP4')
->>> print res
-(4294967295L, {3994088662L: 1, 2246728737L: 1, 3542456614L: 1, 2072128742: 1, 2222711142L: 1, 2669064385L: 1, 3540009223L: 1, 849275503: 1, 2245384272L: 1, 2246703798L: 1, 864674487: 1, 4212523324L: 1, 3340482365L: 1}, <rdkit.DataStructs.cDataStructs.UIntSparseIntVect object at 0x0CA010D8>)
-
-
-
-
-
-
-

Calculating protein descriptors

-

PyProtein is a tool used for protein feature calculation. PyProtein calculates structural and physicochemical features of proteins and peptides from amino acid sequence. These sequence-derived structural and physicochemical features have been widely used in the development of machine learning models for predicting protein structural and functional classes, post-translational modification, subcellular locations and peptides of specific properties. There are two ways to calculate protein descriptors in the PyProtein module. One is to directly use the corresponding methods, the other one is firstly to construct a PyProtein class and then run their methods to obtain the protein descriptors. It should be noted that the output is a dictionary form, whose keys and values represent the descriptor name and the descriptor value, respectively. The user could clearly understand the meaning of each descriptor.

-
-

Calculating protein descriptors via functions

-

The user can input the protein sequence and calculate the protein descriptors using function.

-
>>> from PyBioMed.PyProtein import AAComposition
->>> protein="ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS"
->>> AAC=AAComposition.CalculateAAComposition(protein)
->>> print AAC
-{'A': 11.94, 'C': 7.463, 'E': 8.955, 'D': 14.925, 'G': 8.955, 'F': 5.97, 'I': 0.0, 'H': 0.0, 'K': 1.493, 'M': 4.478, 'L': 2.985, 'N': 2.985, 'Q': 2.985, 'P': 2.985, 'S': 11.94, 'R': 1.493, 'T': 1.493, 'W': 2.985, 'V': 4.478, 'Y': 1.493}
-
-
-

PyBioMed also provides getpdb to get sequence from PDB website to calculate protein descriptors.

-
>>> from PyBioMed.PyGetMol import GetProtein
->>> GetProtein.GetPDB(['1atp','1efz','1f88'])
->>> seq = GetProtein.GetSeqFromPDB('1atp.pdb')
->>> print seq
-GNAAAAKKGSEQESVKEFLAKAKEDFLKKWETPSQNTAQLDQFDRIKTLGTGSFGRVMLVKHKESGNHYAMKILDKQKVVKLKQ
-IEHTLNEKRILQAVNFPFLVKLEFSFKDNSNLYMVMEYVAGGEMFSHLRRIGRFSEPHARFYAAQIVLTFEYLHSLDLIYRDLK
-PENLLIDQQGYIQVTDFGFAKRVKGRTWXLCGTPEYLAPEIILSKGYNKAVDWWALGVLIYEMAAGYPPFFADQPIQIYEKIVS
-GKVRFPSHFSSDLKDLLRNLLQVDLTKRFGNLKNGVNDIKNHKWFATTDWIAIYQRKVEAPFIPKFKGPGDTSNFDDYEEEEIR
-VXINEKCGKEFTEFTTYADFIASGRTGRRNAIHD
->>> from PyBioMed.PyProtein import CTD
->>> protein_descriptor = CTD.CalculateC(protein)
->>> print protein_descriptor
-{'_NormalizedVDWVC2': 0.224, '_PolarizabilityC2': 0.328, '_PolarizabilityC3': 0.179, '_ChargeC1': 0.03, '_PolarizabilityC1': 0.493, '_SecondaryStrC2': 0.239, '_SecondaryStrC3': 0.418, '_NormalizedVDWVC3': 0.179, '_SecondaryStrC1': 0.343, '_SolventAccessibilityC1': 0.448, '_SolventAccessibilityC2': 0.328, '_SolventAccessibilityC3': 0.224, '_NormalizedVDWVC1': 0.522, '_HydrophobicityC3': 0.284, '_HydrophobicityC1': 0.328, '_ChargeC3': 0.239, '_PolarityC2': 0.179, '_PolarityC1': 0.299, '_HydrophobicityC2': 0.388, '_PolarityC3': 0.03, '_ChargeC2': 0.731}
-
-
-
-
-

Calculate protein descriptors via object

-

The PyProtein can calculate all kinds of protein descriptors in the PyBioMed. -For example, the PyProtein can calculate DPC.

-
>>> from PyBioMed import Pyprotein
->>> protein="ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS"
->>> protein_class = Pyprotein.PyProtein(protein)
->>> print len(protein_class.GetDPComp())
-400
-
-
-

The PyProtein also provide the tool to get sequence from Uniprot through the Uniprot ID.

-
>>> from PyBioMed import Pyprotein
->>> from PyBioMed.PyProtein.GetProteinFromUniprot import GetProteinSequence
->>> uniprotID = 'P48039'
->>> protein_sequence = GetProteinSequence(uniprotID)
->>> print protein_sequence
-MEDINFASLAPRHGSRPFMGTWNEIGTSQLNGGAFSWSSLWSGIKNFGSSIKSFGNKAWNSNTGQMLRDKLKDQNFQQKVVDGL
-ASGINGVVDIANQALQNQINQRLENSRQPPVALQQRPPPKVEEVEVEEKLPPLEVAPPLPSKGEKRPRPDLEETLVVESREPPS
-YEQALKEGASPYPMTKPIGSMARPVYGKESKPVTLELPPPVPTVPPMPAPTLGTAVSRPTAPTVAVATPARRPRGANWQSTLNS
-IVGLGVKSLKRRRCY
->>> protein_class = Pyprotein.PyProtein(protein_sequence)
->>> CTD = protein_class.GetCTD()
->>> print len(CTD)
-147
-
-
-

The PyProtein can calculate all protein descriptors except the tri-peptide composition descriptors.

-
>>> from PyBioMed import Pyprotein
->>> protein="ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS"
->>> protein_class = Pyprotein.PyProtein(protein)
->>> print len(protein_class.GetALL())
-10049
-
-
-
-
-
-

Calculating DNA descriptors

-

The PyDNA module can generate various feature vectors for DNA sequences, this module could:

-
    -
  • Calculating three nucleic acid composition features describing the local sequence information by means of kmers (subsequences of DNA sequences);
  • -
  • Calculating six autocorrelation features describing the level of correlation between two oligonucleotides along a DNA sequence in terms of their specific physicochemical properties;
  • -
  • Calculating six pseudo nucleotide composition features, which can be used to represent a DNA sequence with a discrete model or vector yet still keep considerable sequence order information, particularly the global or long-range sequence order information, via the physicochemical properties of its constituent oligonucleotides.
  • -
-
-

Calculating DNA descriptors via functions

-

The user can input a DNA sequence and calculate the DNA descriptors using functions.

-
>>> from PyBioMed.PyDNA.PyDNAac import GetDAC
->>> dac = GetDAC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist','Tilt'])
->>> print(dac)
-{'DAC_4': -0.004, 'DAC_1': -0.175, 'DAC_2': -0.185, 'DAC_3': -0.173}
-
-
-

The user can check the parameters and calculate the descriptors.

-
>>> from PyBioMed.PyDNA import PyDNApsenac
->>> from PyBioMed.PyDNA.PyDNApsenac import GetPseDNC
->>> dnaseq = 'GACTGAACTGCACTTTGGTTTCATATTATTTGCTC'
->>> PyDNApsenac.CheckPsenac(lamada = 2, w = 0.05, k = 2)
->>> psednc = GetPseDNC('ACCCCA',lamada=2, w=0.05)
->>> print(psednc)
-{'PseDNC_18': 0.0521, 'PseDNC_16': 0.0, 'PseDNC_17': 0.0391, 'PseDNC_14': 0.0, 'PseDNC_15': 0.0, 'PseDNC_12': 0.0, 'PseDNC_13': 0.0, 'PseDNC_10': 0.0, 'PseDNC_11': 0.0, 'PseDNC_4': 0.0, 'PseDNC_5': 0.182, 'PseDNC_6': 0.545, 'PseDNC_7': 0.0, 'PseDNC_1': 0.0, 'PseDNC_2': 0.182, 'PseDNC_3': 0.0, 'PseDNC_8': 0.0, 'PseDNC_9': 0.0}
-
-
-
-
-

Calculating DNA descriptors via object

-

The PyDNA can calculate all kinds of protein descriptors in the PyBioMed. -For example, the PyDNA can calculate SCPseDNC.

-
>>> from PyBioMed import Pydna
->>> dna = Pydna.PyDNA('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC')
->>> scpsednc = dna.GetSCPseDNC()
->>> print len(scpsednc)
-16
-
-
-
-
-
-

Calculating Interaction descriptors

-

The PyInteraction module can generate six types of interaction descriptors indcluding chemical-chemical interaction features, chemical-protein interaction features, chemical-DNA interaction features, protein-protein interaction features, protein-DNA interaction features, and DNA-DNA interaction features by integrating two groups of features.

-

The user can choose three different types of methods to calculate interaction descriptors. The function CalculateInteraction1() can calculate two interaction features by combining two features.

-
-\[F_{ab} = \bigl(F_a, F_b\bigr)\]
-

The function CalculateInteraction2() can calculate two interaction features by two multiplied features.

-
-\[F = \{F(k)= F_a(i) ×F_b(j), i = 1, 2, …, p, j = 1, 2 ,… , p, k = (i-1) ×p+j\}\]
-

The function CalculateInteraction3() can calculate two interaction features by

-
-\[F=[F_a(i)+F_b(i)),F_a(i)*F_b(i)]\]
-

The function CalculateInteraction3() is only used in the same type of descriptors including chemical-chemical interaction, protein-protein interaction and DNA-DNA interaction.

-

The user can calculate chemical-chemical features using three methods .

-
-_images/CCI.png -

The calculation process for chemical-chemical interaction descriptors.

-
-
>>> from PyBioMed.PyInteraction import PyInteraction
->>> from PyBioMed.PyMolecule import moe
->>> from rdkit import Chem
->>> smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]']
->>> m = Chem.MolFromSmiles(smis[3])
->>> mol_des = moe.GetMOE(m)
->>> mol_mol_interaction1 = PyInteraction.CalculateInteraction1(mol_des,mol_des)
->>> print mol_mol_interaction1
-{'slogPVSA6ex': 0.0, 'PEOEVSA10ex': 0.0,......, 'EstateVSA9ex': 4.795, 'slogPVSA2': 4.795, 'slogPVSA3': 0.0, 'slogPVSA0': 5.734, 'slogPVSA1': 17.118, 'slogPVSA6': 0.0, 'slogPVSA7': 0.0, 'slogPVSA4': 6.924, 'slogPVSA5': 0.0, 'slogPVSA8': 0.0, 'slogPVSA9': 0.0}
->>> print len(mol_mol_interaction1)
-120
->>> mol_mol_interaction2 = PyInteraction.CalculateInteraction2(mol_des,mol_des)
->>> print len(mol_mol_interaction2)
-3600
->>> mol_mol_interaction3 = PyInteraction.CalculateInteraction3(mol_des,mol_des)
-{'EstateVSA9*EstateVSA9': 22.992, 'EstateVSA9+EstateVSA9': 9.59, 'PEOEVSA1+PEOEVSA1': 9.59, 'VSAEstate10*VSAEstate10': 0.0, 'PEOEVSA3*PEOEVSA3': 0.0, 'PEOEVSA11*PEOEVSA11': 0.0, 'PEOEVSA4*PEOEVSA4': 0.0, 'VSAEstate2+VSAEstate2': 0.0, 'MRVSA0+MRVSA0': 19.802, 'MRVSA6+MRVSA6': 0.0......}
->>> print len(mol_mol_interaction3)
-120
-
-
-

The user can calculate chemical-protein feature using two methods.

-
-_images/CPI.png -

The calculation process for chemical-protein interaction descriptors.

-
-
>>> from rdkit import Chem
->>> from PyBioMed.PyMolecule import moe
->>> from PyBioMed.PyInteraction.PyInteraction import CalculateInteraction2
->>> smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]']
->>> m = Chem.MolFromSmiles(smis[3])
->>> mol_des = moe.GetMOE(m)
->>> from PyBioMed.PyDNA.PyDNApsenac import GetPseDNC
->>> protein_des = GetPseDNC('ACCCCA',lamada=2, w=0.05)
->>> pro_mol_interaction1 = PyInteraction.CalculateInteraction1(mol_des,protein_des)
->>> print len(pro_mol_interaction1)
-78
->>> pro_mol_interaction2 = CalculateInteraction2(mol_des,protein_des)
->>> print len(pro_mol_interaction2)
-1080
-
-
-

The user can calculate chemical-DNA feature using two methods.

-
>>> from PyBioMed.PyDNA import PyDNAac
->>> DNA_des = PyDNAac.GetTCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome','MW-kg'])
->>> from rdkit import Chem
->>> smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]']
->>> m = Chem.MolFromSmiles(smis[3])
->>> mol_des = moe.GetMOE(m)
->>> mol_DNA_interaction1 = PyInteraction.CalculateInteraction1(mol_des,DNA_des)
->>> print len(mol_DNA_interaction1)
-72
->>> mol_DNA_interaction2 = PyInteraction.CalculateInteraction2(mol_des,DNA_des)
->>> print len(mol_DNA_interaction2)
-720
-
-
-
-
- - -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_images/CCI.png b/PyBioMed/doc/_build/html/_images/CCI.png deleted file mode 100644 index a3dd0d5..0000000 Binary files a/PyBioMed/doc/_build/html/_images/CCI.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_images/CPI.png b/PyBioMed/doc/_build/html/_images/CPI.png deleted file mode 100644 index e09e024..0000000 Binary files a/PyBioMed/doc/_build/html/_images/CPI.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_images/DNA.png b/PyBioMed/doc/_build/html/_images/DNA.png deleted file mode 100644 index 3198272..0000000 Binary files a/PyBioMed/doc/_build/html/_images/DNA.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_images/DPI.png b/PyBioMed/doc/_build/html/_images/DPI.png deleted file mode 100644 index e8e38b3..0000000 Binary files a/PyBioMed/doc/_build/html/_images/DPI.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_images/brief.png b/PyBioMed/doc/_build/html/_images/brief.png deleted file mode 100644 index 1c0d097..0000000 Binary files a/PyBioMed/doc/_build/html/_images/brief.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_images/caco2.png b/PyBioMed/doc/_build/html/_images/caco2.png deleted file mode 100644 index 0537e00..0000000 Binary files a/PyBioMed/doc/_build/html/_images/caco2.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_images/logocbdd.png b/PyBioMed/doc/_build/html/_images/logocbdd.png deleted file mode 100644 index 0134c32..0000000 Binary files a/PyBioMed/doc/_build/html/_images/logocbdd.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_images/single_features.png b/PyBioMed/doc/_build/html/_images/single_features.png deleted file mode 100644 index 95c6416..0000000 Binary files a/PyBioMed/doc/_build/html/_images/single_features.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_images/solubility.png b/PyBioMed/doc/_build/html/_images/solubility.png deleted file mode 100644 index 89b6b54..0000000 Binary files a/PyBioMed/doc/_build/html/_images/solubility.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_images/subcell.png b/PyBioMed/doc/_build/html/_images/subcell.png deleted file mode 100644 index 0082fc2..0000000 Binary files a/PyBioMed/doc/_build/html/_images/subcell.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_modules/AAComposition.html b/PyBioMed/doc/_build/html/_modules/AAComposition.html deleted file mode 100644 index b27d123..0000000 --- a/PyBioMed/doc/_build/html/_modules/AAComposition.html +++ /dev/null @@ -1,284 +0,0 @@ - - - - - - - - AAComposition — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for AAComposition

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-###############################################################################
-
-The module is used for computing the composition of amino acids, dipetide and 
-
-3-mers (tri-peptide) for a given protein sequence. You can get 8420 descriptors 
-
-for a given protein sequence. You can freely use and distribute it. If you hava 
-
-any problem, you could contact with us timely!
-
-References:
-
-[1]: Reczko, M. and Bohr, H. (1994) The DEF data base of sequence based protein
-
-fold class predictions. Nucleic Acids Res, 22, 3616-3619.
-
-[2]: Hua, S. and Sun, Z. (2001) Support vector machine approach for protein
-
-subcellular localization prediction. Bioinformatics, 17, 721-728.
-
-
-[3]:Grassmann, J., Reczko, M., Suhai, S. and Edler, L. (1999) Protein fold class
-
-prediction: new methods of statistical classification. Proc Int Conf Intell Syst Mol
-
-Biol, 106-112.
-
-Authors: Dongsheng Cao and Zhijiang Yao.
-
-Date: 2016.7.27
-
-Email: oriental-cds@163.com and gadsby@163.com
-
-###############################################################################
-"""
-
-import re
-
-AALetter = ["A", "R", "N", "D", "C", "E", "Q", "G", "H", "I", "L", "K", "M", "F", "P", "S", "T", "W", "Y", "V"]
-
-
-#############################################################################################
-
[docs]def CalculateAAComposition(ProteinSequence): - """ - ######################################################################## - Calculate the composition of Amino acids - - for a given protein sequence. - - Usage: - - result=CalculateAAComposition(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing the composition of - - 20 amino acids. - ######################################################################## - """ - LengthSequence = len(ProteinSequence) - Result = {} - for i in AALetter: - Result[i] = round(float(ProteinSequence.count(i)) / LengthSequence * 100, 3) - return Result
- - -############################################################################################# -
[docs]def CalculateDipeptideComposition(ProteinSequence): - """ - ######################################################################## - Calculate the composition of dipeptidefor a given protein sequence. - - Usage: - - result=CalculateDipeptideComposition(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing the composition of - - 400 dipeptides. - ######################################################################## - """ - - LengthSequence = len(ProteinSequence) - Result = {} - for i in AALetter: - for j in AALetter: - Dipeptide = i + j - Result[Dipeptide] = round(float(ProteinSequence.count(Dipeptide)) / (LengthSequence - 1) * 100, 2) - return Result
- - -############################################################################################# - -
[docs]def Getkmers(): - """ - ######################################################################## - Get the amino acid list of 3-mers. - - Usage: - - result=Getkmers() - - Output: result is a list form containing 8000 tri-peptides. - - ######################################################################## - """ - kmers = list() - for i in AALetter: - for j in AALetter: - for k in AALetter: - kmers.append(i + j + k) - return kmers
- - -############################################################################################# -
[docs]def GetSpectrumDict(proteinsequence): - """ - ######################################################################## - Calcualte the spectrum descriptors of 3-mers for a given protein. - - Usage: - - result=GetSpectrumDict(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing the composition values of 8000 - - 3-mers. - ######################################################################## - """ - result = {} - kmers = Getkmers() - for i in kmers: - result[i] = len(re.findall(i, proteinsequence)) - return result
- - -############################################################################################# -
[docs]def CalculateAADipeptideComposition(ProteinSequence): - """ - ######################################################################## - Calculate the composition of AADs, dipeptide and 3-mers for a - - given protein sequence. - - Usage: - - result=CalculateAADipeptideComposition(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing all composition values of - - AADs, dipeptide and 3-mers (8420). - ######################################################################## - """ - - result = {} - result.update(CalculateAAComposition(ProteinSequence)) - result.update(CalculateDipeptideComposition(ProteinSequence)) - result.update(GetSpectrumDict(ProteinSequence)) - - return result
- - -############################################################################################# -if __name__ == "__main__": - protein = "ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS" - - AAC = CalculateAAComposition(protein) - print AAC - DIP = CalculateDipeptideComposition(protein) - print DIP - spectrum = GetSpectrumDict(protein) - print spectrum - res = CalculateAADipeptideComposition(protein) - print len(res) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/AAIndex.html b/PyBioMed/doc/_build/html/_modules/AAIndex.html deleted file mode 100644 index d78f738..0000000 --- a/PyBioMed/doc/_build/html/_modules/AAIndex.html +++ /dev/null @@ -1,418 +0,0 @@ - - - - - - - - AAIndex — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for AAIndex

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-'''
-This module is used for obtaining the properties of amino acids or their pairs
-
-from the aaindex database. You can freely use and distribute it. If you hava 
-
-any problem, you could contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
- 
-'''
-
-import sys, os, string
-
-AALetter = ["A", "R", "N", "D", "C", "E", "Q", "G", "H", "I", "L", "K", "M", "F", "P", "S", "T", "W", "Y", "V"]
-_aaindex = dict()
-
-
-#####################################################################################################
-
[docs]class Record: - ''' - Amino acid index (AAindex) Record - ''' - aakeys = 'ARNDCQEGHILKMFPSTWYV' - - def __init__(self): - self.key = None - self.desc = '' - self.ref = '' - self.authors = '' - self.title = '' - self.journal = '' - self.correlated = dict() - self.index = dict() - self.comment = '' - -
[docs] def extend(self, row): - i = len(self.index) - for x in row: - self.index[self.aakeys[i]] = x - i += 1
- -
[docs] def get(self, aai, aaj=None, d=None): - assert aaj is None - return self.index.get(aai, d)
- - def __getitem__(self, aai): - return self.get(aai) - -
[docs] def median(self): - x = sorted(filter(None, self.index.values())) - half = len(x) / 2 - if len(x) % 2 == 1: - return x[half] - return (x[half - 1] + x[half]) / 2.0
- - def __str__(self): - desc = self.desc.replace('\n', ' ').strip() - return '%s(%s: %s)' % (self.__class__.__name__, self.key, desc)
- - -##################################################################################################### -
[docs]class MatrixRecord(Record): - ''' - Matrix record for mutation matrices or pair-wise contact potentials - ''' - - def __init__(self): - Record.__init__(self) - self.index = [] - self.rows = dict() - self.cols = dict() - -
[docs] def extend(self, row): - self.index.append(row)
- - def _get(self, aai, aaj): - i = self.rows[aai] - j = self.cols[aaj] - return self.index[i][j] - -
[docs] def get(self, aai, aaj, d=None): - try: - return self._get(aai, aaj) - except: - pass - try: - return self._get(aaj, aai) - except: - return d
- - def __getitem__(self, aaij): - return self.get(aaij[0], aaij[1]) - -
[docs] def median(self): - x = [] - for y in self.index: - x.extend(filter(None, y)) - x.sort() - if len(x) % 2 == 1: - return x[len(x) / 2] - return sum(x[len(x) / 2 - 1:len(x) / 2 + 1]) / 2.0
- - -##################################################################################################### - - - -##################################################################################################### -
[docs]def grep(pattern): - ''' - Search for pattern in title and description of all records (case - insensitive) and print results on standard output. - - ''' - for record in search(pattern): - print record
- - -##################################################################################################### -
[docs]def get(key): - ''' - Get record for key - ''' - if len(_aaindex) == 0: - init() - return _aaindex[key]
- - -##################################################################################################### -def _float_or_None(x): - if x == 'NA' or x == '-': - return None - return float(x) - - -##################################################################################################### -
[docs]def init(path=None, index='123'): - ''' - Read in the aaindex files. You need to run this (once) before you can - access any records. If the files are not within the current directory, - you need to specify the correct directory path. By default all three - aaindex files are read in. - ''' - index = str(index) - if path is None: - for path in [os.path.split(__file__)[0], '.']: - if os.path.exists(os.path.join(path, 'aaindex' + index[0])): - break - print >> sys.stderr, 'path =', path - if '1' in index: - _parse(path + '/aaindex1', Record) - if '2' in index: - _parse(path + '/aaindex2', MatrixRecord) - if '3' in index: - _parse(path + '/aaindex3', MatrixRecord)
- - -##################################################################################################### -
[docs]def init_from_file(filename, type=Record): - _parse(filename, type)
- - -##################################################################################################### -def _parse(filename, rec, quiet=True): - ''' - Parse aaindex input file. `rec` must be `Record` for aaindex1 and - `MarixRecord` for aaindex2 and aaindex3. - ''' - if not os.path.exists(filename): - import urllib - url = 'ftp://ftp.genome.jp/pub/db/community/aaindex/' + os.path.split(filename)[1] - # print 'Downloading "%s"' % (url) - filename = urllib.urlretrieve(url, filename)[0] - # print 'Saved to "%s"' % (filename) - f = open(filename) - - current = rec() - lastkey = None - for line in f: - key = line[0:2] - if key[0] == ' ': - key = lastkey - if key == '//': - _aaindex[current.key] = current - current = rec() - elif key == 'H ': - current.key = line[2:].strip() - elif key == 'R ': - current.ref += line[2:] - elif key == 'D ': - current.desc += line[2:] - elif key == 'A ': - current.authors += line[2:] - elif key == 'T ': - current.title += line[2:] - elif key == 'J ': - current.journal += line[2:] - elif key == '* ': - current.comment += line[2:] - elif key == 'C ': - a = line[2:].split() - for i in range(0, len(a), 2): - current.correlated[a[i]] = float(a[i + 1]) - elif key == 'I ': - a = line[1:].split() - if a[0] != 'A/L': - current.extend(map(_float_or_None, a)) - elif list(Record.aakeys) != [i[0] for i in a] + [i[-1] for i in a]: - print 'Warning: wrong amino acid sequence for', current.key - else: - try: - assert list(Record.aakeys[:10]) == [i[0] for i in a] - assert list(Record.aakeys[10:]) == [i[2] for i in a] - except: - print 'Warning: wrong amino acid sequence for', current.key - elif key == 'M ': - a = line[2:].split() - if a[0] == 'rows': - if a[4] == 'rows': - a.pop(4) - assert a[3] == 'cols' and len(a) == 6 - i = 0 - for aa in a[2]: - current.rows[aa] = i - i += 1 - i = 0 - for aa in a[5]: - current.cols[aa] = i - i += 1 - else: - current.extend(map(_float_or_None, a)) - elif not quiet: - print 'Warning: line starts with "%s"' % (key) - lastkey = key - f.close() - - -##################################################################################################### -
[docs]def GetAAIndex1(name, path='.'): - """ - Get the amino acid property values from aaindex1 - - Usage: - - result=GetAAIndex1(name) - - Input: name is the name of amino acid property (e.g., KRIW790103) - - Output: result is a dict form containing the properties of 20 amino acids - """ - - init(path=path) - name = str(name) - temp = get(string.strip(name)) - res = {} - for i in AALetter: - res[i] = temp.get(i) - return res
- - -##################################################################################################### -
[docs]def GetAAIndex23(name, path='.'): - """ - Get the amino acid property values from aaindex2 and aaindex3 - - Usage: - - result=GetAAIndex23(name) - - Input: name is the name of amino acid property (e.g.,TANS760101,GRAR740104) - - Output: result is a dict form containing the properties of 400 amino acid pairs - """ - init(path=path) - name = str(name) - temp = get(string.strip(name)) - res = {} - for i in AALetter: - for j in AALetter: - res[i + j] = temp.get(i, j) - return res
- - -##################################################################################################### - -if __name__ == "__main__": - # init(path='.') - - # grep('volume') - # x = get('KRIW790103') - # print x - # print x.get('W') - temp1 = GetAAIndex1('KRIW790103') - print len(temp1) - - temp2 = GetAAIndex23('TANS760101') - print len(temp2) - temp2 = GetAAIndex23('GRAR740104') - print len(temp2) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/AtomProperty.html b/PyBioMed/doc/_build/html/_modules/AtomProperty.html deleted file mode 100644 index 6196a1f..0000000 --- a/PyBioMed/doc/_build/html/_modules/AtomProperty.html +++ /dev/null @@ -1,207 +0,0 @@ - - - - - - - - AtomProperty — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for AtomProperty

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-You can freely use and distribute it. If you hava  
-
-any problem, you could contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-Z: atomic number
-L: principal quantum number
-Zv: number of valence electrons
-Rv: van der Waals atomic radius
-Rc: covalent radius
-m: atomic mass
-V: van der Waals vloume
-En: Sanderson electronegativity
-alapha: atomic polarizability (10e-24 cm3)
-IP: ionization potential (eV)
-EA: electron affinity (eV)
-"""
-
-################################################################################
-AtomProperty={
-'H':{'Z':1,'L':1,'Zv':1,'Rv':1.17,'Rc':0.37,'m':1.01,'V':6.71,'En':2.59,'alapha':0.67,'IP':13.598,'EA':0.754},
-'Li':{'Z':3,'L':2,'Zv':1,'Rv':1.82,'Rc':1.34,'m':6.94,'V':25.25,'En':0.89,'alapha':24.3,'IP':5.392,'EA':0.618},
-'Be':{'Z':4,'L':2,'Zv':2,'Rv':0.0,'Rc':0.90,'m':9.01,'V':0.0,'En':1.81,'alapha':5.60,'IP':9.323,'EA':0.0},
-'B':{'Z':5,'L':2,'Zv':3,'Rv':1.62,'Rc':0.82,'m':10.81,'V':17.88,'En':2.28,'alapha':3.03,'IP':8.298,'EA':0.277},
-'C':{'Z':6,'L':2,'Zv':4,'Rv':1.75,'Rc':0.77,'m':12.01,'V':22.45,'En':2.75,'alapha':1.76,'IP':11.260,'EA':1.263},
-'N':{'Z':7,'L':2,'Zv':5,'Rv':1.55,'Rc':0.75,'m':14.01,'V':15.60,'En':3.19,'alapha':1.10,'IP':14.534,'EA':0.0},
-'O':{'Z':8,'L':2,'Zv':6,'Rv':1.40,'Rc':0.73,'m':16.00,'V':11.49,'En':3.65,'alapha':0.80,'IP':13.618,'EA':1.461},
-'F':{'Z':9,'L':2,'Zv':7,'Rv':1.30,'Rc':0.71,'m':19.00,'V':9.20,'En':4.00,'alapha':0.56,'IP':17.423,'EA':3.401},
-'Na':{'Z':11,'L':3,'Zv':1,'Rv':2.27,'Rc':1.54,'m':22.99,'V':49.00,'En':0.56,'alapha':23.6,'IP':5.139,'EA':0.548},
-'Mg':{'Z':12,'L':3,'Zv':2,'Rv':1.73,'Rc':1.30,'m':24.31,'V':21.69,'En':1.32,'alapha':10.6,'IP':7.646,'EA':0.0},
-'Al':{'Z':13,'L':3,'Zv':3,'Rv':2.06,'Rc':1.18,'m':26.98,'V':36.51,'En':1.71,'alapha':6.80,'IP':5.986,'EA':0.441},
-'Si':{'Z':14,'L':3,'Zv':4,'Rv':1.97,'Rc':1.11,'m':28.09,'V':31.98,'En':2.14,'alapha':5.38,'IP':8.152,'EA':1.385},
-'P':{'Z':15,'L':3,'Zv':5,'Rv':1.85,'Rc':1.06,'m':30.97,'V':26.52,'En':2.52,'alapha':3.63,'IP':10.487,'EA':0.747},
-'S':{'Z':16,'L':3,'Zv':6,'Rv':1.80,'Rc':1.02,'m':32.07,'V':24.43,'En':2.96,'alapha':2.90,'IP':10.360,'EA':2.077},
-'Cl':{'Z':17,'L':3,'Zv':7,'Rv':1.75,'Rc':0.99,'m':35.45,'V':22.45,'En':3.48,'alapha':2.18,'IP':12.968,'EA':3.613},
-'K':{'Z':19,'L':4,'Zv':1,'Rv':2.75,'Rc':1.96,'m':39.10,'V':87.11,'En':0.45,'alapha':43.4,'IP':4.341,'EA':0.501},
-'Ca':{'Z':20,'L':4,'Zv':2,'Rv':0.0,'Rc':1.74,'m':40.08,'V':0.0,'En':0.95,'alapha':22.8,'IP':6.113,'EA':0.018},
-'Cr':{'Z':24,'L':4,'Zv':6,'Rv':2.20,'Rc':1.27,'m':52.00,'V':44.60,'En':1.66,'alapha':11.60,'IP':6.767,'EA':0.666},
-'Mn':{'Z':25,'L':4,'Zv':7,'Rv':2.18,'Rc':1.39,'m':54.94,'V':43.40,'En':2.20,'alapha':9.40,'IP':7.434,'EA':0.0},
-'Fe':{'Z':26,'L':4,'Zv':8,'Rv':2.14,'Rc':1.25,'m':55.85,'V':41.05,'En':2.20,'alapha':8.40,'IP':7.902,'EA':1.151},
-'Co':{'Z':27,'L':4,'Zv':9,'Rv':2.03,'Rc':1.26,'m':58.93,'V':35.04,'En':2.56,'alapha':7.50,'IP':7.881,'EA':0.662},
-'Ni':{'Z':28,'L':4,'Zv':10,'Rv':1.60,'Rc':1.21,'m':58.69,'V':17.16,'En':1.94,'alapha':6.80,'IP':7.640,'EA':1.156},
-'Cu':{'Z':29,'L':4,'Zv':11,'Rv':1.40,'Rc':1.38,'m':63.55,'V':11.49,'En':1.95,'alapha':6.10,'IP':7.723,'EA':1.235},
-'Zn':{'Z':30,'L':4,'Zv':12,'Rv':1.39,'Rc':1.31,'m':65.39,'V':11.25,'En':2.23,'alapha':7.10,'IP':9.394,'EA':0.0},
-'Ga':{'Z':31,'L':4,'Zv':3,'Rv':1.87,'Rc':1.26,'m':69.72,'V':27.39,'En':2.42,'alapha':8.12,'IP':5.999,'EA':0.300},
-'Ge':{'Z':32,'L':4,'Zv':4,'Rv':1.90,'Rc':1.22,'m':72.61,'V':28.73,'En':2.62,'alapha':6.07,'IP':7.900,'EA':1.233},
-'As':{'Z':33,'L':4,'Zv':5,'Rv':1.85,'Rc':1.19,'m':74.92,'V':26.52,'En':2.82,'alapha':4.31,'IP':9.815,'EA':0.810},
-'Se':{'Z':34,'L':4,'Zv':6,'Rv':1.90,'Rc':1.16,'m':78.96,'V':28.73,'En':3.01,'alapha':3.73,'IP':9.752,'EA':2.021},
-'Br':{'Z':35,'L':4,'Zv':7,'Rv':1.95,'Rc':1.14,'m':79.90,'V':31.06,'En':3.22,'alapha':3.05,'IP':11.814,'EA':3.364},
-'Rb':{'Z':37,'L':5,'Zv':1,'Rv':0.0,'Rc':2.11,'m':85.47,'V':0.0,'En':0.31,'alapha':47.3,'IP':4.177,'EA':0.486},
-'Sr':{'Z':38,'L':5,'Zv':2,'Rv':0.0,'Rc':1.92,'m':87.62,'V':0.0,'En':0.72,'alapha':27.6,'IP':5.695,'EA':0.110},
-'Mo':{'Z':42,'L':5,'Zv':6,'Rv':2.00,'Rc':1.45,'m':95.94,'V':33.51,'En':1.15,'alapha':12.80,'IP':7.092,'EA':0.746},
-'Ag':{'Z':47,'L':5,'Zv':11,'Rv':1.72,'Rc':1.53,'m':107.87,'V':21.31,'En':1.83,'alapha':7.20,'IP':7.576,'EA':1.302},
-'Cd':{'Z':48,'L':5,'Zv':12,'Rv':1.58,'Rc':1.48,'m':112.41,'V':16.52,'En':1.98,'alapha':7.20,'IP':8.994,'EA':0.0},
-'In':{'Z':49,'L':5,'Zv':3,'Rv':1.93,'Rc':1.44,'m':114.82,'V':30.11,'En':2.14,'alapha':10.20,'IP':5.786,'EA':0.300},
-'Sn':{'Z':50,'L':5,'Zv':4,'Rv':2.22,'Rc':1.41,'m':118.71,'V':45.83,'En':2.30,'alapha':7.70,'IP':7.344,'EA':1.112},
-'Sb':{'Z':51,'L':5,'Zv':5,'Rv':2.10,'Rc':1.38,'m':121.76,'V':38.79,'En':2.46,'alapha':6.60,'IP':8.64,'EA':1.07},
-'Te':{'Z':52,'L':5,'Zv':6,'Rv':2.06,'Rc':1.35,'m':127.60,'V':36.62,'En':2.62,'alapha':5.50,'IP':9.01,'EA':1.971},
-'I':{'Z':53,'L':5,'Zv':7,'Rv':2.10,'Rc':1.33,'m':126.90,'V':38.79,'En':2.78,'alapha':5.35,'IP':10.451,'EA':3.059},
-'Gd':{'Z':64,'L':6,'Zv':10,'Rv':2.59,'Rc':1.79,'m':157.25,'V':72.78,'En':2.00,'alapha':23.50,'IP':6.15,'EA':0.50},
-'Pt':{'Z':78,'L':6,'Zv':10,'Rv':1.75,'Rc':1.28,'m':195.08,'V':22.45,'En':2.28,'alapha':6.50,'IP':9.00,'EA':2.128},
-'Au':{'Z':79,'L':6,'Zv':11,'Rv':1.66,'Rc':1.44,'m':196.97,'V':19.16,'En':2.65,'alapha':5.80,'IP':9.226,'EA':2.309},
-'Hg':{'Z':80,'L':6,'Zv':12,'Rv':1.55,'Rc':1.49,'m':200.59,'V':15.60,'En':2.20,'alapha':5.70,'IP':10.438,'EA':0.0},
-'Tl':{'Z':81,'L':6,'Zv':3,'Rv':1.96,'Rc':1.48,'m':204.38,'V':31.54,'En':2.25,'alapha':7.60,'IP':6.108,'EA':0.200},
-'Pb':{'Z':82,'L':6,'Zv':4,'Rv':2.02,'Rc':1.47,'m':207.20,'V':34.53,'En':2.29,'alapha':6.80,'IP':7.417,'EA':0.364},
-'Bi':{'Z':83,'L':6,'Zv':5,'Rv':2.10,'Rc':1.46,'m':208.98,'V':38.79,'En':2.34,'alapha':7.40,'IP':7.289,'EA':0.946},
-
-}
-
-
-
-
[docs]def GetAbsoluteAtomicProperty(element='C',propertyname='m'): - """ - Get the absolute property value with propertyname for the given atom. - """ - - PropertyDic=AtomProperty[element] - - return PropertyDic[propertyname]
- - -
[docs]def GetRelativeAtomicProperty(element='C',propertyname='m'): - """ - Get the absolute property value with propertyname for the given atom. - """ - - CpropertyDic=AtomProperty['C'] - PropertyDic=AtomProperty[element] - - return PropertyDic[propertyname]/(CpropertyDic[propertyname]+0.0)
- -############################################################################### - -if __name__=="__main__": - - for i,j in AtomProperty.items(): - print j - print GetAbsoluteAtomicProperty(element='S',propertyname='En') - print GetRelativeAtomicProperty(element='S',propertyname='En') -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/AtomTypes.html b/PyBioMed/doc/_build/html/_modules/AtomTypes.html deleted file mode 100644 index ad5344e..0000000 --- a/PyBioMed/doc/_build/html/_modules/AtomTypes.html +++ /dev/null @@ -1,287 +0,0 @@ - - - - - - - - AtomTypes — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for AtomTypes

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-You can freely use and distribute it. If you hava  
-
-any problem, you could contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-contains SMARTS definitions and calculators for EState atom types
-
-defined in: Hall and Kier JCICS _35_ 1039-1045 (1995)  Table 1
-"""
-from rdkit import Chem
-import numpy
-import sys
-
-_rawD = [
-  ('sLi','[LiD1]-*'),
-
-  ('ssBe','[BeD2](-*)-*'),
-  ('ssssBe','[BeD4](-*)(-*)(-*)-*'),
-
-  ('ssBH', '[BD2H](-*)-*'),
-  ('sssB', '[BD3](-*)(-*)-*'),
-  ('ssssB','[BD4](-*)(-*)(-*)-*'),
-
-  ('sCH3', '[CD1H3]-*'),
-  ('dCH2', '[CD1H2]=*'),
-  ('ssCH2','[CD2H2](-*)-*'),
-  ('tCH',  '[CD1H]#*'),
-  ('dsCH', '[CD2H](=*)-*'),
-  ('aaCH', '[C,c;D2H](:*):*'),
-  ('sssCH','[CD3H](-*)(-*)-*'),
-  ('ddC',  '[CD2H0](=*)=*'),
-  ('tsC',  '[CD2H0](#*)-*'),
-  ('dssC', '[CD3H0](=*)(-*)-*'),  
-  ('aasC', '[C,c;D3H0](:*)(:*)-*'),
-  ('aaaC', '[C,c;D3H0](:*)(:*):*'),
-  ('ssssC','[CD4H0](-*)(-*)(-*)-*'),
-
-  ('sNH3', '[ND1H3]-*'),
-  ('sNH2', '[ND1H2]-*'),
-  ('ssNH2','[ND2H2](-*)-*'),
-  ('dNH',  '[ND1H]=*'),
-  ('ssNH', '[ND2H](-*)-*'),
-  ('aaNH', '[N,nD2H](:*):*'),
-  ('tN',   '[ND1H0]#*'),
-  ('sssNH','[ND3H](-*)(-*)-*'),
-  ('dsN',  '[ND2H0](=*)-*'),
-  ('aaN',  '[N,nD2H0](:*):*'),
-  ('sssN', '[ND3H0](-*)(-*)-*'),
-  ('ddsN', '[ND3H0](~[OD1H0])(~[OD1H0])-,:*'),  # mod
-  ('aasN', '[N,nD3H0](:*)(:*)-,:*'),              # mod
-  ('ssssN','[ND4H0](-*)(-*)(-*)-*'),
-
-  ('sOH','[OD1H]-*'),
-  ('dO', '[OD1H0]=*'),
-  ('ssO','[OD2H0](-*)-*'),
-  ('aaO','[O,oD2H0](:*):*'),
-
-  ('sF','[FD1]-*'),
-
-  ('sSiH3', '[SiD1H3]-*'),
-  ('ssSiH2','[SiD2H2](-*)-*'),
-  ('sssSiH','[SiD3H1](-*)(-*)-*'),
-  ('ssssSi','[SiD4H0](-*)(-*)(-*)-*'),
-
-  ('sPH2',  '[PD1H2]-*'),
-  ('ssPH',  '[PD2H1](-*)-*'),
-  ('sssP',  '[PD3H0](-*)(-*)-*'),
-  ('dsssP', '[PD4H0](=*)(-*)(-*)-*'),
-  ('sssssP','[PD5H0](-*)(-*)(-*)(-*)-*'),
-   
-  ('sSH',  '[SD1H1]-*'),
-  ('dS',   '[SD1H0]=*'),
-  ('ssS',  '[SD2H0](-*)-*'),
-  ('aaS',  '[S,sD2H0](:*):*'),
-  ('dssS', '[SD3H0](=*)(-*)-*'),
-  ('ddssS','[SD4H0](~[OD1H0])(~[OD1H0])(-*)-*'),  # mod
-
-  ('sCl', '[ClD1]-*'),
-
-  ('sGeH3', '[GeD1H3](-*)'),
-  ('ssGeH2','[GeD2H2](-*)-*'),
-  ('sssGeH','[GeD3H1](-*)(-*)-*'),
-  ('ssssGe','[GeD4H0](-*)(-*)(-*)-*'),
-
-  ('sAsH2',  '[AsD1H2]-*'),
-  ('ssAsH',  '[AsD2H1](-*)-*'),
-  ('sssAs',  '[AsD3H0](-*)(-*)-*'),
-  ('sssdAs', '[AsD4H0](=*)(-*)(-*)-*'),
-  ('sssssAs','[AsD5H0](-*)(-*)(-*)(-*)-*'),
-
-  ('sSeH',  '[SeD1H1]-*'),
-  ('dSe',   '[SeD1H0]=*'),
-  ('ssSe',  '[SeD2H0](-*)-*'),
-  ('aaSe',  '[SeD2H0](:*):*'),
-  ('dssSe', '[SeD3H0](=*)(-*)-*'),
-  ('ddssSe','[SeD4H0](=*)(=*)(-*)-*'),
-
-  ('sBr','[BrD1]-*'),
-
-  ('sSnH3', '[SnD1H3]-*'),
-  ('ssSnH2','[SnD2H2](-*)-*'),
-  ('sssSnH','[SnD3H1](-*)(-*)-*'),
-  ('ssssSn','[SnD4H0](-*)(-*)(-*)-*'),
-
-  ('sI','[ID1]-*'),
-
-  ('sPbH3', '[PbD1H3]-*'),
-  ('ssPbH2','[PbD2H2](-*)-*'),
-  ('sssPbH','[PbD3H1](-*)(-*)-*'),
-  ('ssssPb','[PbD4H0](-*)(-*)(-*)-*'),
-]
-
-esPatterns=None
-
[docs]def BuildPatts(rawV=None): - """ Internal Use Only - """ - global esPatterns,_rawD - if rawV is None: - rawV = _rawD - - esPatterns = [None]*len(rawV) - for i,(name,sma) in enumerate(rawV): - try: - patt = Chem.MolFromSmarts(sma) - except: - sys.stderr.write('WARNING: problems with pattern %s (name: %s), skipped.\n'%(sma,name)) - else: - esPatterns[i] = name,patt
- - -
[docs]def TypeAtoms(mol): - """ assigns each atom in a molecule to an EState type - - **Returns:** - - list of tuples (atoms can possibly match multiple patterns) with atom types - - """ - if esPatterns is None: - BuildPatts() - nAtoms = mol.GetNumAtoms() - res = [None]*nAtoms - for name,patt in esPatterns: - matches = mol.GetSubstructMatches(patt,uniquify=0) - for match in matches: - idx = match[0] - if res[idx] is None: - res[idx] = [name] - elif name not in res[idx]: - res[idx].append(name) - for i,v in enumerate(res): - if v is not None: - res[i] = tuple(v) - else: - res[i] = () - return res
- - - -
[docs]def GetAtomLabel(mol): - - """ - Obtain the atom index in a molecule for the above given atom types - """ - - if esPatterns is None: - BuildPatts() - res=[] - for name, patt in esPatterns: - matches = mol.GetSubstructMatches(patt,uniquify=0) - cc=[] - - for match in matches: -# remain=match[1:] - cc.append(match[0]) - bb=list(numpy.unique(numpy.array(cc))) - res.append(bb) - return res
- -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/Autocorrelation.html b/PyBioMed/doc/_build/html/_modules/Autocorrelation.html deleted file mode 100644 index 677bc57..0000000 --- a/PyBioMed/doc/_build/html/_modules/Autocorrelation.html +++ /dev/null @@ -1,1127 +0,0 @@ - - - - - - - - Autocorrelation — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for Autocorrelation

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##########################################################################################
-
-This module is used for computing the Autocorrelation descriptors based different
-
- properties of AADs.You can also input your properties of AADs, then it can help you
-
-to compute Autocorrelation descriptors based on the property of AADs. Currently, You 
-
-can get 720 descriptors for a given protein sequence based on our provided physicochemical
-
-properties of AADs. You can freely use and distribute it. If you hava  any problem, 
-
-you could contact with us timely!
-
-References:
-
-[1]: http://www.genome.ad.jp/dbget/aaindex.html
-
-[2]:Feng, Z.P. and Zhang, C.T. (2000) Prediction of membrane protein types based on
-
-the hydrophobic index of amino acids. J Protein Chem, 19, 269-275.
-
-[3]:Horne, D.S. (1988) Prediction of protein helix content from an autocorrelation
-
-analysis of sequence hydrophobicities. Biopolymers, 27, 451-477.
-
-[4]:Sokal, R.R. and Thomson, B.A. (2006) Population structure inferred by local
-
-spatial autocorrelation: an Usage from an Amerindian tribal population. Am J
-
-Phys Anthropol, 129, 121-131.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-##########################################################################################
-"""
-
-import math, string
-
-AALetter = ["A", "R", "N", "D", "C", "Q", "E", "G", "H", "I", "L", "K", "M", "F", "P", "S", "T", "W", "Y", "V"]
-
-_Hydrophobicity = {"A": 0.02, "R": -0.42, "N": -0.77, "D": -1.04, "C": 0.77, "Q": -1.10, "E": -1.14, "G": -0.80,
-                   "H": 0.26, "I": 1.81, "L": 1.14, "K": -0.41, "M": 1.00, "F": 1.35, "P": -0.09, "S": -0.97,
-                   "T": -0.77, "W": 1.71, "Y": 1.11, "V": 1.13}
-
-_AvFlexibility = {"A": 0.357, "R": 0.529, "N": 0.463, "D": 0.511, "C": 0.346, "Q": 0.493, "E": 0.497, "G": 0.544,
-                  "H": 0.323, "I": 0.462, "L": 0.365, "K": 0.466, "M": 0.295, "F": 0.314, "P": 0.509, "S": 0.507,
-                  "T": 0.444, "W": 0.305, "Y": 0.420, "V": 0.386}
-
-_Polarizability = {"A": 0.046, "R": 0.291, "N": 0.134, "D": 0.105, "C": 0.128, "Q": 0.180, "E": 0.151, "G": 0.000,
-                   "H": 0.230, "I": 0.186, "L": 0.186, "K": 0.219, "M": 0.221, "F": 0.290, "P": 0.131, "S": 0.062,
-                   "T": 0.108, "W": 0.409, "Y": 0.298, "V": 0.140}
-
-_FreeEnergy = {"A": -0.368, "R": -1.03, "N": 0.0, "D": 2.06, "C": 4.53, "Q": 0.731, "E": 1.77, "G": -0.525, "H": 0.0,
-               "I": 0.791, "L": 1.07, "K": 0.0, "M": 0.656, "F": 1.06, "P": -2.24, "S": -0.524, "T": 0.0, "W": 1.60,
-               "Y": 4.91, "V": 0.401}
-
-_ResidueASA = {"A": 115.0, "R": 225.0, "N": 160.0, "D": 150.0, "C": 135.0, "Q": 180.0, "E": 190.0, "G": 75.0,
-               "H": 195.0, "I": 175.0, "L": 170.0, "K": 200.0, "M": 185.0, "F": 210.0, "P": 145.0, "S": 115.0,
-               "T": 140.0, "W": 255.0, "Y": 230.0, "V": 155.0}
-
-_ResidueVol = {"A": 52.6, "R": 109.1, "N": 75.7, "D": 68.4, "C": 68.3, "Q": 89.7, "E": 84.7, "G": 36.3, "H": 91.9,
-               "I": 102.0, "L": 102.0, "K": 105.1, "M": 97.7, "F": 113.9, "P": 73.6, "S": 54.9, "T": 71.2, "W": 135.4,
-               "Y": 116.2, "V": 85.1}
-
-_Steric = {"A": 0.52, "R": 0.68, "N": 0.76, "D": 0.76, "C": 0.62, "Q": 0.68, "E": 0.68, "G": 0.00, "H": 0.70, "I": 1.02,
-           "L": 0.98, "K": 0.68, "M": 0.78, "F": 0.70, "P": 0.36, "S": 0.53, "T": 0.50, "W": 0.70, "Y": 0.70, "V": 0.76}
-
-_Mutability = {"A": 100.0, "R": 65.0, "N": 134.0, "D": 106.0, "C": 20.0, "Q": 93.0, "E": 102.0, "G": 49.0, "H": 66.0,
-               "I": 96.0, "L": 40.0, "K": -56.0, "M": 94.0, "F": 41.0, "P": 56.0, "S": 120.0, "T": 97.0, "W": 18.0,
-               "Y": 41.0, "V": 74.0}
-
-
-###You can continuely add other properties of AADs to compute the descriptors of protein sequence.
-
-
-_AAProperty = (
-_Hydrophobicity, _AvFlexibility, _Polarizability, _FreeEnergy, _ResidueASA, _ResidueVol, _Steric, _Mutability)
-
-_AAPropertyName = (
-'_Hydrophobicity', '_AvFlexibility', '_Polarizability', '_FreeEnergy', '_ResidueASA', '_ResidueVol', '_Steric',
-'_Mutability')
-
-
-##################################################################################################
-def _mean(listvalue):
-    """
-    The mean value of the list data.
-    """
-    return sum(listvalue) / len(listvalue)
-
-
-##################################################################################################
-def _std(listvalue, ddof=1):
-    """
-    The standard deviation of the list data.
-    """
-    mean = _mean(listvalue)
-    temp = [math.pow(i - mean, 2) for i in listvalue]
-    res = math.sqrt(sum(temp) / (len(listvalue) - ddof))
-    return res
-
-
-##################################################################################################
-
-
[docs]def NormalizeEachAAP(AAP): - """ - #################################################################################### - All of the amino acid indices are centralized and - - standardized before the calculation. - - Usage: - - result=NormalizeEachAAP(AAP) - - Input: AAP is a dict form containing the properties of 20 amino acids. - - Output: result is the a dict form containing the normalized properties - - of 20 amino acids. - #################################################################################### - """ - if len(AAP.values()) != 20: - print 'You can not input the correct number of properities of Amino acids!' - else: - Result = {} - for i, j in AAP.items(): - Result[i] = (j - _mean(AAP.values())) / _std(AAP.values(), ddof=0) - - return Result
- - -
[docs]def CalculateEachNormalizedMoreauBrotoAuto(ProteinSequence, AAP, AAPName): - """ - #################################################################################### - you can use the function to compute MoreauBrotoAuto - - descriptors for different properties based on AADs. - - Usage: - - result=CalculateEachNormalizedMoreauBrotoAuto(protein,AAP,AAPName) - - Input: protein is a pure protein sequence. - - AAP is a dict form containing the properties of 20 amino acids (e.g., _AvFlexibility). - - AAPName is a string used for indicating the property (e.g., '_AvFlexibility'). - - Output: result is a dict form containing 30 Normalized Moreau-Broto autocorrelation - - descriptors based on the given property. - #################################################################################### - """ - - AAPdic = NormalizeEachAAP(AAP) - - Result = {} - for i in range(1, 31): - temp = 0 - for j in range(len(ProteinSequence) - i): - temp = temp + AAPdic[ProteinSequence[j]] * AAPdic[ProteinSequence[j + 1]] - if len(ProteinSequence) - i == 0: - Result['MoreauBrotoAuto' + AAPName + str(i)] = round(temp / (len(ProteinSequence)), 3) - else: - Result['MoreauBrotoAuto' + AAPName + str(i)] = round(temp / (len(ProteinSequence) - i), 3) - - return Result
- - -
[docs]def CalculateEachMoranAuto(ProteinSequence, AAP, AAPName): - """ - #################################################################################### - you can use the function to compute MoranAuto - - descriptors for different properties based on AADs. - - Usage: - - result=CalculateEachMoranAuto(protein,AAP,AAPName) - - Input: protein is a pure protein sequence. - - AAP is a dict form containing the properties of 20 amino acids (e.g., _AvFlexibility). - - AAPName is a string used for indicating the property (e.g., '_AvFlexibility'). - - Output: result is a dict form containing 30 Moran autocorrelation - - descriptors based on the given property. - #################################################################################### - """ - - AAPdic = NormalizeEachAAP(AAP) - - cds = 0 - for i in AALetter: - cds = cds + (ProteinSequence.count(i)) * (AAPdic[i]) - Pmean = cds / len(ProteinSequence) - - cc = [] - for i in ProteinSequence: - cc.append(AAPdic[i]) - - K = (_std(cc, ddof=0)) ** 2 - - Result = {} - for i in range(1, 31): - temp = 0 - for j in range(len(ProteinSequence) - i): - temp = temp + (AAPdic[ProteinSequence[j]] - Pmean) * (AAPdic[ProteinSequence[j + i]] - Pmean) - if len(ProteinSequence) - i == 0: - Result['MoranAuto' + AAPName + str(i)] = round(temp / (len(ProteinSequence)) / K, 3) - else: - Result['MoranAuto' + AAPName + str(i)] = round(temp / (len(ProteinSequence) - i) / K, 3) - - return Result
- - -
[docs]def CalculateEachGearyAuto(ProteinSequence, AAP, AAPName): - """ - #################################################################################### - you can use the function to compute GearyAuto - - descriptors for different properties based on AADs. - - Usage: - - result=CalculateEachGearyAuto(protein,AAP,AAPName) - - Input: protein is a pure protein sequence. - - AAP is a dict form containing the properties of 20 amino acids (e.g., _AvFlexibility). - - AAPName is a string used for indicating the property (e.g., '_AvFlexibility'). - - Output: result is a dict form containing 30 Geary autocorrelation - - descriptors based on the given property. - #################################################################################### - """ - - AAPdic = NormalizeEachAAP(AAP) - - cc = [] - for i in ProteinSequence: - cc.append(AAPdic[i]) - - K = ((_std(cc)) ** 2) * len(ProteinSequence) / (len(ProteinSequence) - 1) - Result = {} - for i in range(1, 31): - temp = 0 - for j in range(len(ProteinSequence) - i): - temp = temp + (AAPdic[ProteinSequence[j]] - AAPdic[ProteinSequence[j + i]]) ** 2 - if len(ProteinSequence) - i == 0: - Result['GearyAuto' + AAPName + str(i)] = round(temp / (2 * (len(ProteinSequence))) / K, 3) - else: - Result['GearyAuto' + AAPName + str(i)] = round(temp / (2 * (len(ProteinSequence) - i)) / K, 3) - return Result
- - -################################################################################################## - -
[docs]def CalculateNormalizedMoreauBrotoAuto(ProteinSequence, AAProperty, AAPropertyName): - """ - #################################################################################### - A method used for computing MoreauBrotoAuto for all properties. - - Usage: - - result=CalculateNormalizedMoreauBrotoAuto(protein,AAP,AAPName) - - Input: protein is a pure protein sequence. - - AAProperty is a list or tuple form containing the properties of 20 amino acids (e.g., _AAProperty). - - AAPName is a list or tuple form used for indicating the property (e.g., '_AAPropertyName'). - - Output: result is a dict form containing 30*p Normalized Moreau-Broto autocorrelation - - descriptors based on the given properties. - #################################################################################### - - """ - Result = {} - for i in range(len(AAProperty)): - Result[AAPropertyName[i]] = CalculateEachNormalizedMoreauBrotoAuto(ProteinSequence, AAProperty[i], - AAPropertyName[i]) - - return Result
- - -
[docs]def CalculateMoranAuto(ProteinSequence, AAProperty, AAPropertyName): - """ - #################################################################################### - A method used for computing MoranAuto for all properties - - Usage: - - result=CalculateMoranAuto(protein,AAP,AAPName) - - Input: protein is a pure protein sequence. - - AAProperty is a list or tuple form containing the properties of 20 amino acids (e.g., _AAProperty). - - AAPName is a list or tuple form used for indicating the property (e.g., '_AAPropertyName'). - - Output: result is a dict form containing 30*p Moran autocorrelation - - descriptors based on the given properties. - #################################################################################### - """ - Result = {} - for i in range(len(AAProperty)): - Result[AAPropertyName[i]] = CalculateEachMoranAuto(ProteinSequence, AAProperty[i], AAPropertyName[i]) - - return Result
- - -
[docs]def CalculateGearyAuto(ProteinSequence, AAProperty, AAPropertyName): - """ - #################################################################################### - A method used for computing GearyAuto for all properties - - Usage: - - result=CalculateGearyAuto(protein,AAP,AAPName) - - Input: protein is a pure protein sequence. - - AAProperty is a list or tuple form containing the properties of 20 amino acids (e.g., _AAProperty). - - AAPName is a list or tuple form used for indicating the property (e.g., '_AAPropertyName'). - - Output: result is a dict form containing 30*p Geary autocorrelation - - descriptors based on the given properties. - #################################################################################### - """ - Result = {} - for i in range(len(AAProperty)): - Result[AAPropertyName[i]] = CalculateEachGearyAuto(ProteinSequence, AAProperty[i], AAPropertyName[i]) - - return Result
- - -########################NormalizedMoreauBorto################################## -
[docs]def CalculateNormalizedMoreauBrotoAutoHydrophobicity(ProteinSequence): - """ - #################################################################################### - Calculte the NormalizedMoreauBorto Autocorrelation descriptors based on - - hydrophobicity. - - Usage: - - result=CalculateNormalizedMoreauBrotoAutoHydrophobicity(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Normalized Moreau-Broto Autocorrelation - - descriptors based on Hydrophobicity. - #################################################################################### - """ - - result = CalculateEachNormalizedMoreauBrotoAuto(ProteinSequence, _Hydrophobicity, '_Hydrophobicity') - return result
- - -
[docs]def CalculateNormalizedMoreauBrotoAutoAvFlexibility(ProteinSequence): - """ - #################################################################################### - Calculte the NormalizedMoreauBorto Autocorrelation descriptors based on - - AvFlexibility. - - Usage: - - result=CalculateNormalizedMoreauBrotoAutoAvFlexibility(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Normalized Moreau-Broto Autocorrelation - - descriptors based on AvFlexibility. - #################################################################################### - """ - - result = CalculateEachNormalizedMoreauBrotoAuto(ProteinSequence, _AvFlexibility, '_AvFlexibility') - return result
- - -
[docs]def CalculateNormalizedMoreauBrotoAutoPolarizability(ProteinSequence): - """ - #################################################################################### - Calculte the NormalizedMoreauBorto Autocorrelation descriptors based on - - Polarizability. - - Usage: - - result=CalculateNormalizedMoreauBrotoAutoPolarizability(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Normalized Moreau-Broto Autocorrelation - - descriptors based on Polarizability. - #################################################################################### - """ - - result = CalculateEachNormalizedMoreauBrotoAuto(ProteinSequence, _Polarizability, '_Polarizability') - return result
- - -
[docs]def CalculateNormalizedMoreauBrotoAutoFreeEnergy(ProteinSequence): - """ - #################################################################################### - Calculte the NormalizedMoreauBorto Autocorrelation descriptors based on - - FreeEnergy. - - Usage: - - result=CalculateNormalizedMoreauBrotoAutoFreeEnergy(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Normalized Moreau-Broto Autocorrelation - - descriptors based on FreeEnergy. - #################################################################################### - """ - - result = CalculateEachNormalizedMoreauBrotoAuto(ProteinSequence, _FreeEnergy, '_FreeEnergy') - return result
- - -
[docs]def CalculateNormalizedMoreauBrotoAutoResidueASA(ProteinSequence): - """ - #################################################################################### - Calculte the NormalizedMoreauBorto Autocorrelation descriptors based on - - ResidueASA. - - Usage: - - result=CalculateNormalizedMoreauBrotoAutoResidueASA(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Normalized Moreau-Broto Autocorrelation - - descriptors based on ResidueASA. - #################################################################################### - """ - - result = CalculateEachNormalizedMoreauBrotoAuto(ProteinSequence, _ResidueASA, '_ResidueASA') - return result
- - -
[docs]def CalculateNormalizedMoreauBrotoAutoResidueVol(ProteinSequence): - """ - #################################################################################### - Calculte the NormalizedMoreauBorto Autocorrelation descriptors based on - - ResidueVol. - - Usage: - - result=CalculateNormalizedMoreauBrotoAutoResidueVol(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Normalized Moreau-Broto Autocorrelation - - descriptors based on ResidueVol. - #################################################################################### - """ - - result = CalculateEachNormalizedMoreauBrotoAuto(ProteinSequence, _ResidueVol, '_ResidueVol') - return result
- - -
[docs]def CalculateNormalizedMoreauBrotoAutoSteric(ProteinSequence): - """ - #################################################################################### - Calculte the NormalizedMoreauBorto Autocorrelation descriptors based on Steric. - - Usage: - - result=CalculateNormalizedMoreauBrotoAutoSteric(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Normalized Moreau-Broto Autocorrelation - - descriptors based on Steric. - #################################################################################### - """ - - result = CalculateEachNormalizedMoreauBrotoAuto(ProteinSequence, _Steric, '_Steric') - return result
- - -
[docs]def CalculateNormalizedMoreauBrotoAutoMutability(ProteinSequence): - """ - #################################################################################### - Calculte the NormalizedMoreauBorto Autocorrelation descriptors based on Mutability. - - Usage: - - result=CalculateNormalizedMoreauBrotoAutoMutability(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Normalized Moreau-Broto Autocorrelation - - descriptors based on Mutability. - #################################################################################### - """ - - result = CalculateEachNormalizedMoreauBrotoAuto(ProteinSequence, _Mutability, '_Mutability') - return result
- - -############################################################################ - -##############################MoranAuto###################################### -
[docs]def CalculateMoranAutoHydrophobicity(ProteinSequence): - """ - #################################################################################### - Calculte the MoranAuto Autocorrelation descriptors based on hydrophobicity. - - Usage: - - result=CalculateMoranAutoHydrophobicity(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Moran Autocorrelation - - descriptors based on hydrophobicity. - #################################################################################### - """ - - result = CalculateEachMoranAuto(ProteinSequence, _Hydrophobicity, '_Hydrophobicity') - return result
- - -
[docs]def CalculateMoranAutoAvFlexibility(ProteinSequence): - """ - #################################################################################### - Calculte the MoranAuto Autocorrelation descriptors based on - - AvFlexibility. - - Usage: - - result=CalculateMoranAutoAvFlexibility(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Moran Autocorrelation - - descriptors based on AvFlexibility. - #################################################################################### - """ - - result = CalculateEachMoranAuto(ProteinSequence, _AvFlexibility, '_AvFlexibility') - return result
- - -
[docs]def CalculateMoranAutoPolarizability(ProteinSequence): - """ - #################################################################################### - Calculte the MoranAuto Autocorrelation descriptors based on - - Polarizability. - - Usage: - - result=CalculateMoranAutoPolarizability(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Moran Autocorrelation - - descriptors based on Polarizability. - #################################################################################### - """ - - result = CalculateEachMoranAuto(ProteinSequence, _Polarizability, '_Polarizability') - return result
- - -
[docs]def CalculateMoranAutoFreeEnergy(ProteinSequence): - """ - #################################################################################### - Calculte the MoranAuto Autocorrelation descriptors based on - - FreeEnergy. - - Usage: - - result=CalculateMoranAutoFreeEnergy(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Moran Autocorrelation - - descriptors based on FreeEnergy. - #################################################################################### - """ - - result = CalculateEachMoranAuto(ProteinSequence, _FreeEnergy, '_FreeEnergy') - return result
- - -
[docs]def CalculateMoranAutoResidueASA(ProteinSequence): - """ - #################################################################################### - Calculte the MoranAuto Autocorrelation descriptors based on - - ResidueASA. - - Usage: - - result=CalculateMoranAutoResidueASA(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Moran Autocorrelation - - descriptors based on ResidueASA. - #################################################################################### - """ - - result = CalculateEachMoranAuto(ProteinSequence, _ResidueASA, '_ResidueASA') - return result
- - -
[docs]def CalculateMoranAutoResidueVol(ProteinSequence): - """ - #################################################################################### - Calculte the MoranAuto Autocorrelation descriptors based on - - ResidueVol. - - Usage: - - result=CalculateMoranAutoResidueVol(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Moran Autocorrelation - - descriptors based on ResidueVol. - #################################################################################### - """ - - result = CalculateEachMoranAuto(ProteinSequence, _ResidueVol, '_ResidueVol') - return result
- - -
[docs]def CalculateMoranAutoSteric(ProteinSequence): - """ - #################################################################################### - Calculte the MoranAuto Autocorrelation descriptors based on - - AutoSteric. - - Usage: - - result=CalculateMoranAutoSteric(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Moran Autocorrelation - - descriptors based on AutoSteric. - #################################################################################### - """ - - result = CalculateEachMoranAuto(ProteinSequence, _Steric, '_Steric') - return result
- - -
[docs]def CalculateMoranAutoMutability(ProteinSequence): - """ - #################################################################################### - Calculte the MoranAuto Autocorrelation descriptors based on - - Mutability. - - Usage: - - result=CalculateMoranAutoMutability(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Moran Autocorrelation - - descriptors based on Mutability. - #################################################################################### - """ - - result = CalculateEachMoranAuto(ProteinSequence, _Mutability, '_Mutability') - return result
- - -############################################################################ - - -################################GearyAuto##################################### -
[docs]def CalculateGearyAutoHydrophobicity(ProteinSequence): - """ - #################################################################################### - Calculte the GearyAuto Autocorrelation descriptors based on - - hydrophobicity. - - Usage: - - result=CalculateGearyAutoHydrophobicity(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Geary Autocorrelation - - descriptors based on hydrophobicity. - #################################################################################### - """ - - result = CalculateEachGearyAuto(ProteinSequence, _Hydrophobicity, '_Hydrophobicity') - return result
- - -
[docs]def CalculateGearyAutoAvFlexibility(ProteinSequence): - """ - #################################################################################### - Calculte the GearyAuto Autocorrelation descriptors based on - - AvFlexibility. - - Usage: - result=CalculateGearyAutoAvFlexibility(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Geary Autocorrelation - - descriptors based on AvFlexibility. - #################################################################################### - """ - - result = CalculateEachGearyAuto(ProteinSequence, _AvFlexibility, '_AvFlexibility') - return result
- - -
[docs]def CalculateGearyAutoPolarizability(ProteinSequence): - """ - #################################################################################### - Calculte the GearyAuto Autocorrelation descriptors based on - - Polarizability. - - Usage: - - result=CalculateGearyAutoPolarizability(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Geary Autocorrelation - - descriptors based on Polarizability. - #################################################################################### - """ - - result = CalculateEachGearyAuto(ProteinSequence, _Polarizability, '_Polarizability') - return result
- - -
[docs]def CalculateGearyAutoFreeEnergy(ProteinSequence): - """ - #################################################################################### - Calculte the GearyAuto Autocorrelation descriptors based on - - FreeEnergy. - - Usage: - - result=CalculateGearyAutoFreeEnergy(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Geary Autocorrelation - - descriptors based on FreeEnergy. - #################################################################################### - """ - - result = CalculateEachGearyAuto(ProteinSequence, _FreeEnergy, '_FreeEnergy') - return result
- - -
[docs]def CalculateGearyAutoResidueASA(ProteinSequence): - """ - #################################################################################### - Calculte the GearyAuto Autocorrelation descriptors based on - - ResidueASA. - - Usage: - - result=CalculateGearyAutoResidueASA(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Geary Autocorrelation - - descriptors based on ResidueASA. - #################################################################################### - """ - - result = CalculateEachGearyAuto(ProteinSequence, _ResidueASA, '_ResidueASA') - return result
- - -
[docs]def CalculateGearyAutoResidueVol(ProteinSequence): - """ - #################################################################################### - Calculte the GearyAuto Autocorrelation descriptors based on - - ResidueVol. - - Usage: - - result=CalculateGearyAutoResidueVol(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Geary Autocorrelation - - descriptors based on ResidueVol. - #################################################################################### - """ - - result = CalculateEachGearyAuto(ProteinSequence, _ResidueVol, '_ResidueVol') - return result
- - -
[docs]def CalculateGearyAutoSteric(ProteinSequence): - """ - #################################################################################### - Calculte the GearyAuto Autocorrelation descriptors based on - - Steric. - - Usage: - - result=CalculateGearyAutoSteric(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Geary Autocorrelation - - descriptors based on Steric. - #################################################################################### - """ - - result = CalculateEachGearyAuto(ProteinSequence, _Steric, '_Steric') - return result
- - -
[docs]def CalculateGearyAutoMutability(ProteinSequence): - """ - #################################################################################### - Calculte the GearyAuto Autocorrelation descriptors based on - - Mutability. - - Usage: - - result=CalculateGearyAutoMutability(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30 Geary Autocorrelation - - descriptors based on Mutability. - #################################################################################### - """ - - result = CalculateEachGearyAuto(ProteinSequence, _Mutability, '_Mutability') - return result
- - -################################################################################################## - -
[docs]def CalculateNormalizedMoreauBrotoAutoTotal(ProteinSequence): - """ - #################################################################################### - A method used for computing normalized Moreau Broto autocorrelation descriptors based - - on 8 proterties of AADs. - - Usage: - - result=CalculateNormalizedMoreauBrotoAutoTotal(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30*8=240 normalized Moreau Broto - - autocorrelation descriptors based on the given properties(i.e., _AAPropert). - #################################################################################### - """ - result = {} - result.update(CalculateNormalizedMoreauBrotoAutoHydrophobicity(ProteinSequence)) - result.update(CalculateNormalizedMoreauBrotoAutoAvFlexibility(ProteinSequence)) - result.update(CalculateNormalizedMoreauBrotoAutoPolarizability(ProteinSequence)) - result.update(CalculateNormalizedMoreauBrotoAutoFreeEnergy(ProteinSequence)) - result.update(CalculateNormalizedMoreauBrotoAutoResidueASA(ProteinSequence)) - result.update(CalculateNormalizedMoreauBrotoAutoResidueVol(ProteinSequence)) - result.update(CalculateNormalizedMoreauBrotoAutoSteric(ProteinSequence)) - result.update(CalculateNormalizedMoreauBrotoAutoMutability(ProteinSequence)) - return result
- - -
[docs]def CalculateMoranAutoTotal(ProteinSequence): - """ - #################################################################################### - A method used for computing Moran autocorrelation descriptors based on 8 properties of AADs. - - Usage: - - result=CalculateMoranAutoTotal(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30*8=240 Moran - - autocorrelation descriptors based on the given properties(i.e., _AAPropert). - #################################################################################### - """ - result = {} - result.update(CalculateMoranAutoHydrophobicity(ProteinSequence)) - result.update(CalculateMoranAutoAvFlexibility(ProteinSequence)) - result.update(CalculateMoranAutoPolarizability(ProteinSequence)) - result.update(CalculateMoranAutoFreeEnergy(ProteinSequence)) - result.update(CalculateMoranAutoResidueASA(ProteinSequence)) - result.update(CalculateMoranAutoResidueVol(ProteinSequence)) - result.update(CalculateMoranAutoSteric(ProteinSequence)) - result.update(CalculateMoranAutoMutability(ProteinSequence)) - return result
- - -
[docs]def CalculateGearyAutoTotal(ProteinSequence): - """ - #################################################################################### - A method used for computing Geary autocorrelation descriptors based on 8 properties of AADs. - - Usage: - - result=CalculateGearyAutoTotal(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30*8=240 Geary - - autocorrelation descriptors based on the given properties(i.e., _AAPropert). - #################################################################################### - """ - result = {} - result.update(CalculateGearyAutoHydrophobicity(ProteinSequence)) - result.update(CalculateGearyAutoAvFlexibility(ProteinSequence)) - result.update(CalculateGearyAutoPolarizability(ProteinSequence)) - result.update(CalculateGearyAutoFreeEnergy(ProteinSequence)) - result.update(CalculateGearyAutoResidueASA(ProteinSequence)) - result.update(CalculateGearyAutoResidueVol(ProteinSequence)) - result.update(CalculateGearyAutoSteric(ProteinSequence)) - result.update(CalculateGearyAutoMutability(ProteinSequence)) - return result
- - -################################################################################################## -
[docs]def CalculateAutoTotal(ProteinSequence): - """ - #################################################################################### - A method used for computing all autocorrelation descriptors based on 8 properties of AADs. - - Usage: - - result=CalculateGearyAutoTotal(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing 30*8*3=720 normalized Moreau Broto, Moran, and Geary - - autocorrelation descriptors based on the given properties(i.e., _AAPropert). - #################################################################################### - """ - result = {} - result.update(CalculateNormalizedMoreauBrotoAutoTotal(ProteinSequence)) - result.update(CalculateMoranAutoTotal(ProteinSequence)) - result.update(CalculateGearyAutoTotal(ProteinSequence)) - return result
- - -################################################################################################## -if __name__ == "__main__": - protein = "ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS" - temp1 = CalculateNormalizedMoreauBrotoAuto(protein, AAProperty=_AAProperty, AAPropertyName=_AAPropertyName) - # print temp1 - temp2 = CalculateMoranAutoMutability(protein) - print temp2 - print len(CalculateAutoTotal(protein)) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/CTD.html b/PyBioMed/doc/_build/html/_modules/CTD.html deleted file mode 100644 index a859778..0000000 --- a/PyBioMed/doc/_build/html/_modules/CTD.html +++ /dev/null @@ -1,875 +0,0 @@ - - - - - - - - CTD — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for CTD

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-'''
-#####################################################################################
-
-This module is used for computing the composition, transition and distribution 
-
-descriptors based on the different properties of AADs. The AADs with the same 
-
-properties is marked as the same number. You can get 147 descriptors for a given
-
-protein sequence. You can freely use and distribute it. If you hava  any problem, 
-
-you could contact with us timely!
-
-References:
-
-[1]: Inna Dubchak, Ilya Muchink, Stephen R.Holbrook and Sung-Hou Kim. Prediction 
-
-of protein folding class using global description of amino acid sequence. Proc.Natl.
-
-Acad.Sci.USA, 1995, 92, 8700-8704.
-
-[2]:Inna Dubchak, Ilya Muchink, Christopher Mayor, Igor Dralyuk and Sung-Hou Kim. 
-
-Recognition of a Protein Fold in the Context of the SCOP classification. Proteins: 
-
-Structure, Function and Genetics,1999,35,401-407.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-#####################################################################################
-'''
-
-import string, math, copy
-
-AALetter = ["A", "R", "N", "D", "C", "E", "Q", "G", "H", "I", "L", "K", "M", "F", "P", "S", "T", "W", "Y", "V"]
-
-_Hydrophobicity = {'1': 'RKEDQN', '2': 'GASTPHY', '3': 'CLVIMFW'}
-# '1'stand for Polar; '2'stand for Neutral, '3' stand for Hydrophobicity
-
-_NormalizedVDWV = {'1': 'GASTPD', '2': 'NVEQIL', '3': 'MHKFRYW'}
-# '1'stand for (0-2.78); '2'stand for (2.95-4.0), '3' stand for (4.03-8.08)
-
-_Polarity = {'1': 'LIFWCMVY', '2': 'CPNVEQIL', '3': 'KMHFRYW'}
-# '1'stand for (4.9-6.2); '2'stand for (8.0-9.2), '3' stand for (10.4-13.0)
-
-_Charge = {'1': 'KR', '2': 'ANCQGHILMFPSTWYV', '3': 'DE'}
-# '1'stand for Positive; '2'stand for Neutral, '3' stand for Negative
-
-_SecondaryStr = {'1': 'EALMQKRH', '2': 'VIYCWFT', '3': 'GNPSD'}
-# '1'stand for Helix; '2'stand for Strand, '3' stand for coil
-
-_SolventAccessibility = {'1': 'ALFCGIVW', '2': 'RKQEND', '3': 'MPSTHY'}
-# '1'stand for Buried; '2'stand for Exposed, '3' stand for Intermediate
-
-_Polarizability = {'1': 'GASDT', '2': 'CPNVEQIL', '3': 'KMHFRYW'}
-# '1'stand for (0-0.108); '2'stand for (0.128-0.186), '3' stand for (0.219-0.409)
-
-
-##You can continuely add other properties of AADs to compute descriptors of protein sequence.
-
-_AATProperty = (
-_Hydrophobicity, _NormalizedVDWV, _Polarity, _Charge, _SecondaryStr, _SolventAccessibility, _Polarizability)
-
-_AATPropertyName = (
-'_Hydrophobicity', '_NormalizedVDWV', '_Polarity', '_Charge', '_SecondaryStr', '_SolventAccessibility',
-'_Polarizability')
-
-
-##################################################################################################
-
-
[docs]def StringtoNum(ProteinSequence, AAProperty): - """ - ############################################################################################### - Tranform the protein sequence into the string form such as 32123223132121123. - - Usage: - - result=StringtoNum(protein,AAProperty) - - Input: protein is a pure protein sequence. - - AAProperty is a dict form containing classifciation of amino acids such as _Polarizability. - - Output: result is a string such as 123321222132111123222 - ############################################################################################### - """ - - hardProteinSequence = copy.deepcopy(ProteinSequence) - for k, m in AAProperty.items(): - for index in m: - hardProteinSequence = string.replace(hardProteinSequence, index, k) - TProteinSequence = hardProteinSequence - - return TProteinSequence
- - -
[docs]def CalculateComposition(ProteinSequence, AAProperty, AAPName): - """ - ############################################################################################### - A method used for computing composition descriptors. - - Usage: - - result=CalculateComposition(protein,AAProperty,AAPName) - - Input: protein is a pure protein sequence. - - AAProperty is a dict form containing classifciation of amino acids such as _Polarizability. - - AAPName is a string used for indicating a AAP name. - - Output: result is a dict form containing composition descriptors based on the given property. - ############################################################################################### - """ - TProteinSequence = StringtoNum(ProteinSequence, AAProperty) - Result = {} - Num = len(TProteinSequence) - Result[AAPName + 'C' + '1'] = round(float(TProteinSequence.count('1')) / Num, 3) - Result[AAPName + 'C' + '2'] = round(float(TProteinSequence.count('2')) / Num, 3) - Result[AAPName + 'C' + '3'] = round(float(TProteinSequence.count('3')) / Num, 3) - return Result
- - -
[docs]def CalculateTransition(ProteinSequence, AAProperty, AAPName): - """ - ############################################################################################### - A method used for computing transition descriptors - - Usage: - - result=CalculateTransition(protein,AAProperty,AAPName) - - Input:protein is a pure protein sequence. - - AAProperty is a dict form containing classifciation of amino acids such as _Polarizability. - - AAPName is a string used for indicating a AAP name. - - Output:result is a dict form containing transition descriptors based on the given property. - ############################################################################################### - """ - - TProteinSequence = StringtoNum(ProteinSequence, AAProperty) - Result = {} - Num = len(TProteinSequence) - CTD = TProteinSequence - Result[AAPName + 'T' + '12'] = round(float(CTD.count('12') + CTD.count('21')) / (Num - 1), 3) - Result[AAPName + 'T' + '13'] = round(float(CTD.count('13') + CTD.count('31')) / (Num - 1), 3) - Result[AAPName + 'T' + '23'] = round(float(CTD.count('23') + CTD.count('32')) / (Num - 1), 3) - return Result
- - -
[docs]def CalculateDistribution(ProteinSequence, AAProperty, AAPName): - """ - ############################################################################################### - A method used for computing distribution descriptors. - - Usage: - - result=CalculateDistribution(protein,AAProperty,AAPName) - - Input:protein is a pure protein sequence. - - AAProperty is a dict form containing classifciation of amino acids such as _Polarizability. - - AAPName is a string used for indicating a AAP name. - - Output:result is a dict form containing Distribution descriptors based on the given property. - ############################################################################################### - """ - TProteinSequence = StringtoNum(ProteinSequence, AAProperty) - Result = {} - Num = len(TProteinSequence) - temp = ('1', '2', '3') - for i in temp: - num = TProteinSequence.count(i) - ink = 1 - indexk = 0 - cds = [] - while ink <= num: - indexk = string.find(TProteinSequence, i, indexk) + 1 - cds.append(indexk) - ink = ink + 1 - - if cds == []: - Result[AAPName + 'D' + i + '001'] = 0 - Result[AAPName + 'D' + i + '025'] = 0 - Result[AAPName + 'D' + i + '050'] = 0 - Result[AAPName + 'D' + i + '075'] = 0 - Result[AAPName + 'D' + i + '100'] = 0 - else: - - Result[AAPName + 'D' + i + '001'] = round(float(cds[0]) / Num * 100, 3) - Result[AAPName + 'D' + i + '025'] = round(float(cds[int(math.floor(num * 0.25)) - 1]) / Num * 100, 3) - Result[AAPName + 'D' + i + '050'] = round(float(cds[int(math.floor(num * 0.5)) - 1]) / Num * 100, 3) - Result[AAPName + 'D' + i + '075'] = round(float(cds[int(math.floor(num * 0.75)) - 1]) / Num * 100, 3) - Result[AAPName + 'D' + i + '100'] = round(float(cds[-1]) / Num * 100, 3) - - return Result
- - -################################################################################################## -
[docs]def CalculateCompositionHydrophobicity(ProteinSequence): - """ - ############################################################################################### - A method used for calculating composition descriptors based on Hydrophobicity of - - AADs. - - Usage: - - result=CalculateCompositionHydrophobicity(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Composition descriptors based on Hydrophobicity. - ############################################################################################### - """ - - result = CalculateComposition(ProteinSequence, _Hydrophobicity, '_Hydrophobicity') - return result
- - -
[docs]def CalculateCompositionNormalizedVDWV(ProteinSequence): - """ - ############################################################################################### - A method used for calculating composition descriptors based on NormalizedVDWV of - - AADs. - - Usage: - - result=CalculateCompositionNormalizedVDWV(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Composition descriptors based on NormalizedVDWV. - ############################################################################################### - """ - result = CalculateComposition(ProteinSequence, _NormalizedVDWV, '_NormalizedVDWV') - return result
- - -
[docs]def CalculateCompositionPolarity(ProteinSequence): - """ - ############################################################################################### - A method used for calculating composition descriptors based on Polarity of - - AADs. - - Usage: - - result=CalculateCompositionPolarity(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Composition descriptors based on Polarity. - ############################################################################################### - """ - - result = CalculateComposition(ProteinSequence, _Polarity, '_Polarity') - return result
- - -
[docs]def CalculateCompositionCharge(ProteinSequence): - """ - ############################################################################################### - A method used for calculating composition descriptors based on Charge of - - AADs. - - Usage: - - result=CalculateCompositionCharge(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Composition descriptors based on Charge. - ############################################################################################### - """ - - result = CalculateComposition(ProteinSequence, _Charge, '_Charge') - return result
- - -
[docs]def CalculateCompositionSecondaryStr(ProteinSequence): - """ - ############################################################################################### - A method used for calculating composition descriptors based on SecondaryStr of - - AADs. - - Usage: - - result=CalculateCompositionSecondaryStr(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Composition descriptors based on SecondaryStr. - ############################################################################################### - """ - - result = CalculateComposition(ProteinSequence, _SecondaryStr, '_SecondaryStr') - return result
- - -
[docs]def CalculateCompositionSolventAccessibility(ProteinSequence): - """ - ############################################################################################### - A method used for calculating composition descriptors based on SolventAccessibility - - of AADs. - - Usage: - - result=CalculateCompositionSolventAccessibility(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Composition descriptors based on SolventAccessibility. - ############################################################################################### - """ - - result = CalculateComposition(ProteinSequence, _SolventAccessibility, '_SolventAccessibility') - return result
- - -
[docs]def CalculateCompositionPolarizability(ProteinSequence): - """ - ############################################################################################### - A method used for calculating composition descriptors based on Polarizability of - - AADs. - - Usage: - - result=CalculateCompositionPolarizability(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Composition descriptors based on Polarizability. - ############################################################################################### - """ - - result = CalculateComposition(ProteinSequence, _Polarizability, '_Polarizability') - return result
- - -################################################################################################## - - -################################################################################################## -
[docs]def CalculateTransitionHydrophobicity(ProteinSequence): - """ - ############################################################################################### - A method used for calculating Transition descriptors based on Hydrophobicity of - - AADs. - - Usage: - - result=CalculateTransitionHydrophobicity(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Transition descriptors based on Hydrophobicity. - ############################################################################################### - """ - - result = CalculateTransition(ProteinSequence, _Hydrophobicity, '_Hydrophobicity') - return result
- - -
[docs]def CalculateTransitionNormalizedVDWV(ProteinSequence): - """ - ############################################################################################### - A method used for calculating Transition descriptors based on NormalizedVDWV of - - AADs. - - Usage: - - result=CalculateTransitionNormalizedVDWV(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Transition descriptors based on NormalizedVDWV. - ############################################################################################### - """ - - result = CalculateTransition(ProteinSequence, _NormalizedVDWV, '_NormalizedVDWV') - return result
- - -
[docs]def CalculateTransitionPolarity(ProteinSequence): - """ - ############################################################################################### - A method used for calculating Transition descriptors based on Polarity of - - AADs. - - Usage: - - result=CalculateTransitionPolarity(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Transition descriptors based on Polarity. - ############################################################################################### - """ - - result = CalculateTransition(ProteinSequence, _Polarity, '_Polarity') - return result
- - -
[docs]def CalculateTransitionCharge(ProteinSequence): - """ - ############################################################################################### - A method used for calculating Transition descriptors based on Charge of - - AADs. - - Usage: - - result=CalculateTransitionCharge(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Transition descriptors based on Charge. - ############################################################################################### - """ - - result = CalculateTransition(ProteinSequence, _Charge, '_Charge') - return result
- - -
[docs]def CalculateTransitionSecondaryStr(ProteinSequence): - """ - ############################################################################################### - A method used for calculating Transition descriptors based on SecondaryStr of - - AADs. - - Usage: - - result=CalculateTransitionSecondaryStr(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Transition descriptors based on SecondaryStr. - ############################################################################################### - """ - - result = CalculateTransition(ProteinSequence, _SecondaryStr, '_SecondaryStr') - return result
- - -
[docs]def CalculateTransitionSolventAccessibility(ProteinSequence): - """ - ############################################################################################### - A method used for calculating Transition descriptors based on SolventAccessibility - - of AADs. - - Usage: - - result=CalculateTransitionSolventAccessibility(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Transition descriptors based on SolventAccessibility. - ############################################################################################### - """ - - result = CalculateTransition(ProteinSequence, _SolventAccessibility, '_SolventAccessibility') - return result
- - -
[docs]def CalculateTransitionPolarizability(ProteinSequence): - """ - ############################################################################################### - A method used for calculating Transition descriptors based on Polarizability of - - AADs. - - Usage: - - result=CalculateTransitionPolarizability(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Transition descriptors based on Polarizability. - ############################################################################################### - """ - - result = CalculateTransition(ProteinSequence, _Polarizability, '_Polarizability') - return result
- - -################################################################################################## -################################################################################################## -
[docs]def CalculateDistributionHydrophobicity(ProteinSequence): - """ - ############################################################################################### - A method used for calculating Distribution descriptors based on Hydrophobicity of - - AADs. - - Usage: - - result=CalculateDistributionHydrophobicity(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Distribution descriptors based on Hydrophobicity. - ############################################################################################### - """ - - result = CalculateDistribution(ProteinSequence, _Hydrophobicity, '_Hydrophobicity') - return result
- - -
[docs]def CalculateDistributionNormalizedVDWV(ProteinSequence): - """ - ############################################################################################### - A method used for calculating Distribution descriptors based on NormalizedVDWV of - - AADs. - - Usage: - - result=CalculateDistributionNormalizedVDWV(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Distribution descriptors based on NormalizedVDWV. - ############################################################################################### - """ - - result = CalculateDistribution(ProteinSequence, _NormalizedVDWV, '_NormalizedVDWV') - return result
- - -
[docs]def CalculateDistributionPolarity(ProteinSequence): - """ - ############################################################################################### - A method used for calculating Distribution descriptors based on Polarity of - - AADs. - - Usage: - - result=CalculateDistributionPolarity(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Distribution descriptors based on Polarity. - ############################################################################################### - """ - - result = CalculateDistribution(ProteinSequence, _Polarity, '_Polarity') - return result
- - -
[docs]def CalculateDistributionCharge(ProteinSequence): - """ - ############################################################################################### - A method used for calculating Distribution descriptors based on Charge of - - AADs. - - Usage: - - result=CalculateDistributionCharge(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Distribution descriptors based on Charge. - ############################################################################################### - """ - - result = CalculateDistribution(ProteinSequence, _Charge, '_Charge') - return result
- - -
[docs]def CalculateDistributionSecondaryStr(ProteinSequence): - """ - ############################################################################################### - A method used for calculating Distribution descriptors based on SecondaryStr of - - AADs. - - Usage: - - result=CalculateDistributionSecondaryStr(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Distribution descriptors based on SecondaryStr. - ############################################################################################### - """ - - result = CalculateDistribution(ProteinSequence, _SecondaryStr, '_SecondaryStr') - return result
- - -
[docs]def CalculateDistributionSolventAccessibility(ProteinSequence): - """ - ############################################################################################### - A method used for calculating Distribution descriptors based on SolventAccessibility - - of AADs. - - Usage: - - result=CalculateDistributionSolventAccessibility(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Distribution descriptors based on SolventAccessibility. - ############################################################################################### - """ - - result = CalculateDistribution(ProteinSequence, _SolventAccessibility, '_SolventAccessibility') - return result
- - -
[docs]def CalculateDistributionPolarizability(ProteinSequence): - """ - ############################################################################################### - A method used for calculating Distribution descriptors based on Polarizability of - - AADs. - - Usage: - - result=CalculateDistributionPolarizability(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing Distribution descriptors based on Polarizability. - ############################################################################################### - """ - - result = CalculateDistribution(ProteinSequence, _Polarizability, '_Polarizability') - return result
- - -################################################################################################## - -
[docs]def CalculateC(ProteinSequence): - """ - ############################################################################################### - Calculate all composition descriptors based seven different properties of AADs. - - Usage: - - result=CalculateC(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing all composition descriptors. - ############################################################################################### - """ - result = {} - result.update(CalculateCompositionPolarizability(ProteinSequence)) - result.update(CalculateCompositionSolventAccessibility(ProteinSequence)) - result.update(CalculateCompositionSecondaryStr(ProteinSequence)) - result.update(CalculateCompositionCharge(ProteinSequence)) - result.update(CalculateCompositionPolarity(ProteinSequence)) - result.update(CalculateCompositionNormalizedVDWV(ProteinSequence)) - result.update(CalculateCompositionHydrophobicity(ProteinSequence)) - return result
- - -
[docs]def CalculateT(ProteinSequence): - """ - ############################################################################################### - Calculate all transition descriptors based seven different properties of AADs. - - Usage: - - result=CalculateT(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing all transition descriptors. - ############################################################################################### - """ - result = {} - result.update(CalculateTransitionPolarizability(ProteinSequence)) - result.update(CalculateTransitionSolventAccessibility(ProteinSequence)) - result.update(CalculateTransitionSecondaryStr(ProteinSequence)) - result.update(CalculateTransitionCharge(ProteinSequence)) - result.update(CalculateTransitionPolarity(ProteinSequence)) - result.update(CalculateTransitionNormalizedVDWV(ProteinSequence)) - result.update(CalculateTransitionHydrophobicity(ProteinSequence)) - return result
- - -
[docs]def CalculateD(ProteinSequence): - """ - ############################################################################################### - Calculate all distribution descriptors based seven different properties of AADs. - - Usage: - - result=CalculateD(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing all distribution descriptors. - ############################################################################################### - """ - result = {} - result.update(CalculateDistributionPolarizability(ProteinSequence)) - result.update(CalculateDistributionSolventAccessibility(ProteinSequence)) - result.update(CalculateDistributionSecondaryStr(ProteinSequence)) - result.update(CalculateDistributionCharge(ProteinSequence)) - result.update(CalculateDistributionPolarity(ProteinSequence)) - result.update(CalculateDistributionNormalizedVDWV(ProteinSequence)) - result.update(CalculateDistributionHydrophobicity(ProteinSequence)) - return result
- - -
[docs]def CalculateCTD(ProteinSequence): - """ - ############################################################################################### - Calculate all CTD descriptors based seven different properties of AADs. - - Usage: - - result=CalculateCTD(protein) - - Input:protein is a pure protein sequence. - - Output:result is a dict form containing all CTD descriptors. - ############################################################################################### - """ - result = {} - result.update(CalculateCompositionPolarizability(ProteinSequence)) - result.update(CalculateCompositionSolventAccessibility(ProteinSequence)) - result.update(CalculateCompositionSecondaryStr(ProteinSequence)) - result.update(CalculateCompositionCharge(ProteinSequence)) - result.update(CalculateCompositionPolarity(ProteinSequence)) - result.update(CalculateCompositionNormalizedVDWV(ProteinSequence)) - result.update(CalculateCompositionHydrophobicity(ProteinSequence)) - result.update(CalculateTransitionPolarizability(ProteinSequence)) - result.update(CalculateTransitionSolventAccessibility(ProteinSequence)) - result.update(CalculateTransitionSecondaryStr(ProteinSequence)) - result.update(CalculateTransitionCharge(ProteinSequence)) - result.update(CalculateTransitionPolarity(ProteinSequence)) - result.update(CalculateTransitionNormalizedVDWV(ProteinSequence)) - result.update(CalculateTransitionHydrophobicity(ProteinSequence)) - result.update(CalculateDistributionPolarizability(ProteinSequence)) - result.update(CalculateDistributionSolventAccessibility(ProteinSequence)) - result.update(CalculateDistributionSecondaryStr(ProteinSequence)) - result.update(CalculateDistributionCharge(ProteinSequence)) - result.update(CalculateDistributionPolarity(ProteinSequence)) - result.update(CalculateDistributionNormalizedVDWV(ProteinSequence)) - result.update(CalculateDistributionHydrophobicity(ProteinSequence)) - return result
- - -################################################################################################## - -if __name__ == "__main__": - protein = "ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS" - print CalculateCTD(protein) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/ConjointTriad.html b/PyBioMed/doc/_build/html/_modules/ConjointTriad.html deleted file mode 100644 index c3d6eb8..0000000 --- a/PyBioMed/doc/_build/html/_modules/ConjointTriad.html +++ /dev/null @@ -1,188 +0,0 @@ - - - - - - - - ConjointTriad — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for ConjointTriad

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-###############################################################################
-This module is used for calculating the conjoint triad features only from the 
-
-protein sequence information. You can get 7*7*7=343 features.You can freely 
-
-use and distribute it. If you hava any problem, you could contact with us timely!
-
-Reference:
-
-Juwen Shen, Jian Zhang, Xiaomin Luo, Weiliang Zhu, Kunqian Yu, Kaixian Chen, 
-
-Yixue Li, Huanliang Jiang. Predicting proten-protein interactions based only 
-
-on sequences inforamtion. PNAS. 2007 (104) 4337-4341.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-###############################################################################
-"""
-
-import string
-
-###############################################################################
-AALetter = ["A", "R", "N", "D", "C", "E", "Q", "G", "H", "I", "L", "K", "M", "F", "P", "S", "T", "W", "Y", "V"]
-
-# a Dipole scale (Debye): -, Dipole<1.0; +, 1.0<Dipole<2.0; ++, 2.0<Dipole<3.0; +++, Dipole>3.0; +'+'+', Dipole>3.0 with opposite orientation.
-# b Volume scale (Å3): -, Volume<50; +, Volume> 50.
-# c Cys is separated from class 3 because of its ability to form disulfide bonds.
-
-_repmat = {1: ["A", 'G', 'V'], 2: ['I', 'L', 'F', 'P'], 3: ['Y', 'M', 'T', 'S'], 4: ['H', 'N', 'Q', 'W'], 5: ['R', 'K'],
-           6: ['D', 'E'], 7: ['C']}
-
-
-###############################################################################
-
-def _Str2Num(proteinsequence):
-    """
-    translate the amino acid letter into the corresponding class based on the
-
-    given form.
-
-    """
-    repmat = {}
-    for i in _repmat:
-        for j in _repmat[i]:
-            repmat[j] = i
-
-    res = proteinsequence
-    for i in repmat:
-        res = res.replace(i, str(repmat[i]))
-    return res
-
-
-###############################################################################
-
[docs]def CalculateConjointTriad(proteinsequence): - """ - Calculate the conjoint triad features from protein sequence. - - Useage: - - res = CalculateConjointTriad(protein) - - Input: protein is a pure protein sequence. - - Output is a dict form containing all 343 conjoint triad features. - """ - res = {} - proteinnum = _Str2Num(proteinsequence) - for i in range(8): - for j in range(8): - for k in range(8): - temp = str(i) + str(j) + str(k) - res[temp] = proteinnum.count(temp) - return res
- - -############################################################################### - -if __name__ == "__main__": - protein = "ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS" - print CalculateConjointTriad(protein) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/GetDNA.html b/PyBioMed/doc/_build/html/_modules/GetDNA.html deleted file mode 100644 index 8f4ea12..0000000 --- a/PyBioMed/doc/_build/html/_modules/GetDNA.html +++ /dev/null @@ -1,253 +0,0 @@ - - - - - - - - GetDNA — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for GetDNA

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-
-This module is used for downloading the DNA sequence from ncbi web. You can only 
-
-need input a DNA ID.
-
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.11.04
-
-Email: gadsby@163.com
-
-"""
-
-
-import urllib
-import sys
-
-ALPHABET = 'ACGT'
-
-
[docs]class Seq: - def __init__(self, name, seq, no): - self.name = name - self.seq = seq.upper() - self.no = no - self.length = len(seq) - - def __str__(self): - """Output seq when 'print' method is called.""" - return "%s\tNo:%s\tlength:%s\n%s" % (self.name, str(self.no), str(self.length), self.seq)
- -
[docs]def GetDNAFromUniGene(SeqID = ''): - - ''' - This module is used for downloading the DNA sequence from ncbi web. You can only - - need input a DNA ID. - - ''' - url = 'http://www.ebi.ac.uk/ena/data/view/{0}&display=fasta'.format(SeqID) - temp = urllib.urlopen(url).read() - return temp
- -
[docs]def IsUnderAlphabet(s, alphabet): - """ - ################################################################# - Judge the string is within the scope of the alphabet or not. - - :param s: The string. - :param alphabet: alphabet. - - Return True or the error character. - ################################################################# - """ - for e in s: - if e not in alphabet: - return e - - return True
- -
[docs]def IsFasta(seq): - """ - ################################################################# - Judge the Seq object is in FASTA format. - Two situation: - 1. No seq name. - 2. Seq name is illegal. - 3. No sequence. - - :param seq: Seq object. - ################################################################# - """ - if not seq.name: - error_info = 'Error, sequence ' + str(seq.no) + ' has no sequence name.' - print(seq) - sys.stderr.write(error_info) - return False - if -1 != seq.name.find('>'): - error_info = 'Error, sequence ' + str(seq.no) + ' name has > character.' - sys.stderr.write(error_info) - return False - if 0 == seq.length: - error_info = 'Error, sequence ' + str(seq.no) + ' is null.' - sys.stderr.write(error_info) - return False - - return True
- -
[docs]def ReadFasta(f): - """ - ################################################################# - Read a fasta file. - - :param f: HANDLE to input. e.g. sys.stdin, or open(<file>) - - Return Seq obj list. - ################################################################# - """ - name, seq = '', '' - count = 0 - seq_list = [] - lines = f.readlines() - for line in lines: - if not line: - break - - if '>' == line[0]: - if 0 != count or (0 == count and seq != ''): - if IsFasta(Seq(name, seq, count)): - seq_list.append(seq) - else: - sys.exit(0) - - seq = '' - name = line[1:].strip() - count += 1 - else: - seq += line.strip() - - count += 1 - if IsFasta(Seq(name, seq, count)): - seq_list.append(seq) - else: - sys.exit(0) - - return seq_list
- - -if __name__ == '__main__': - print '-'*10+'START'+'-'*10 - print 'Only PyBioMed is successfully installed the code below can be run!' - from PyBioMed.PyGetMol.GetProtein import timelimited - @timelimited(10) - def run_GetDNAFromUniGene(): - seqid = 'AA954964' - seqid2 = 'CB216422' - print GetDNAFromUniGene(seqid) - - @timelimited(10) - def run_ReadFasta(): - - dna = ReadFasta(open('../test/test_data/example.fasta')) - print dna - - run_GetDNAFromUniGene() - print '-'*25 - run_ReadFasta() - print '-'*10+'END'+'-'*10 - - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/GetProtein.html b/PyBioMed/doc/_build/html/_modules/GetProtein.html deleted file mode 100644 index 4321981..0000000 --- a/PyBioMed/doc/_build/html/_modules/GetProtein.html +++ /dev/null @@ -1,532 +0,0 @@ - - - - - - - - GetProtein — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for GetProtein

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-Created on Sat Jul 13 11:18:26 2013
-
-This module is used for downloading the PDB file from RCSB PDB web and 
-
-extract its amino acid sequence. This module can also download the protein 
-
-sequence from the uniprot (http://www.uniprot.org/) website. You can only 
-
-need input a protein ID or prepare a file (ID.txt) related to ID. You can
-
-obtain a .txt (ProteinSequence.txt) file saving protein sequence you need.  
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-"""
-
-import os, ftplib, gzip, sys
-import time
-from threading import Thread
-
-ThreadStop = Thread._Thread__stop
-
[docs]class TimeoutException(Exception): - pass
-HOSTNAME = "ftp.wwpdb.org" -DIRECTORY = "/pub/pdb/data/structures/all/pdb/" -PREFIX = "pdb" -SUFFIX = ".ent.gz" - -# List of three and one letter amino acid codes -_aa_index = [('ALA', 'A'), - ('CYS', 'C'), - ('ASP', 'D'), - ('GLU', 'E'), - ('PHE', 'F'), - ('GLY', 'G'), - ('HIS', 'H'), - ('HSE', 'H'), - ('HSD', 'H'), - ('ILE', 'I'), - ('LYS', 'K'), - ('LEU', 'L'), - ('MET', 'M'), - ('MSE', 'M'), - ('ASN', 'N'), - ('PRO', 'P'), - ('GLN', 'Q'), - ('ARG', 'R'), - ('SER', 'S'), - ('THR', 'T'), - ('VAL', 'V'), - ('TRP', 'W'), - ('TYR', 'Y')] - - -# AA3_TO_AA1 = dict(_aa_index) -# AA1_TO_AA3 = dict([(aa[1],aa[0]) for aa in _aa_index]) - - -
[docs]def timelimited(timeout): - """ - A decorator to limit the execution time. - """ - def decorator(function): - def decorator2(*args,**kwargs): - class TimeLimited(Thread): - def __init__(self,_error= None,): - Thread.__init__(self) - self._error = _error - - def run(self): - try: - self.result = function(*args,**kwargs) - except Exception as e: - self._error = e - - def _stop(self): - if self.isAlive(): - ThreadStop(self) - - t = TimeLimited() - t.start() - t.join(timeout) - - if isinstance(t._error,TimeoutException): - t._stop() - print 'Network timeout, skip!!' - return 'Network timeout, skip!!' - - if t.isAlive(): - t._stop() - print 'Network timeout, skip!!' - return 'Network timeout, skip!!' - - if t._error is None: - return t.result - - return decorator2 - return decorator
- - -
[docs]def unZip(some_file, some_output): - """ - Unzip some_file using the gzip library and write to some_output. - """ - - f = gzip.open(some_file, 'r') - g = open(some_output, 'w') - g.writelines(f.readlines()) - f.close() - g.close() - - os.remove(some_file)
- - -
[docs]def pdbDownload(file_list, hostname=HOSTNAME, directory=DIRECTORY, prefix=PREFIX, - suffix=SUFFIX): - """ - Download all pdb files in file_list and unzip them. - """ - - success = True - - # Log into server - print "Connecting..." - ftp = ftplib.FTP() - ftp.connect(hostname) - ftp.login() - - # Remove .pdb extensions from file_list - for file_index, file in enumerate(file_list): - try: - file_list[file_index] = file[:file.index(".pdb")] - except ValueError: - pass - - # Download all files in file_list - to_get = ["%s/%s%s%s" % (directory, prefix, f, suffix) for f in file_list] - to_write = ["%s%s" % (f, suffix) for f in file_list] - - for i in range(len(to_get)): - try: - ftp.retrbinary("RETR %s" % to_get[i], open(to_write[i], "wb").write) - final_name = "%s.pdb" % to_write[i][:to_write[i].index(".")] - unZip(to_write[i], final_name) - print "%s retrieved successfully." % final_name - except ftplib.error_perm: - os.remove(to_write[i]) - print "ERROR! %s could not be retrieved!" % file_list[i] - success = False - - # Log out - ftp.quit() - - if success: - return True - else: - return False
- - -
[docs]def GetPDB(pdbidlist=[]): - """ - Download the PDB file from PDB FTP server by providing a list of pdb id. - """ - - for i in pdbidlist: - templist = [] - templist.append(i) - pdbDownload(templist) - - return True
- - -
[docs]def pdbSeq(pdb, use_atoms=False): - """ - Parse the SEQRES entries in a pdb file. If this fails, use the ATOM - entries. Return dictionary of sequences keyed to chain and type of - sequence used. - """ - - # Try using SEQRES - seq = [l for l in pdb if l[0:6] == "SEQRES"] - if len(seq) != 0 and not use_atoms: - seq_type = "SEQRES" - chain_dict = dict([(l[11], []) for l in seq]) - for c in chain_dict.keys(): - chain_seq = [l[19:70].split() for l in seq if l[11] == c] - for x in chain_seq: - chain_dict[c].extend(x) - - # Otherwise, use ATOM - else: - - seq_type = "ATOM " - - # Check to see if there are multiple models. If there are, only look - # at the first model. - models = [i for i, l in enumerate(pdb) if l.startswith("MODEL")] - if len(models) > 1: - pdb = pdb[models[0]:models[1]] - - # Grab all CA from ATOM entries, as well as MSE from HETATM - atoms = [] - for l in pdb: - if l[0:6] == "ATOM " and l[13:16] == "CA ": - - # Check to see if this is a second conformation of the previous - # atom - if len(atoms) != 0: - if atoms[-1][17:26] == l[17:26]: - continue - - atoms.append(l) - elif l[0:6] == "HETATM" and l[13:16] == "CA " and l[17:20] == "MSE": - - # Check to see if this is a second conformation of the previous - # atom - if len(atoms) != 0: - if atoms[-1][17:26] == l[17:26]: - continue - - atoms.append(l) - - chain_dict = dict([(l[21], []) for l in atoms]) - for c in chain_dict.keys(): - chain_dict[c] = [l[17:20] for l in atoms if l[21] == c] - - AA3_TO_AA1 = dict(_aa_index) - tempchain = chain_dict.keys() - tempchain.sort() - seq = '' - for i in tempchain: - for j in chain_dict[i]: - if j in AA3_TO_AA1.keys(): - seq = seq + (AA3_TO_AA1[j]) - else: - seq = seq + ('X') - - return seq, seq_type
- - -import urllib -import string - - -################################################################################################## -
[docs]def GetProteinSequence(ProteinID): - """ - ######################################################################################### - Get the protein sequence from the uniprot website by ID. - - Usage: - - result=GetProteinSequence(ProteinID) - - Input: ProteinID is a string indicating ID such as "P48039". - - Output: result is a protein sequence. - ######################################################################################### - """ - - ID = str(ProteinID) - localfile = urllib.urlopen('http://www.uniprot.org/uniprot/' + ID + '.fasta') - temp = localfile.readlines() - res = '' - for i in range(1, len(temp)): - res = res + string.strip(temp[i]) - return res
- - -################################################################################################## -
[docs]def GetProteinSequenceFromTxt(path, openfile, savefile): - """ - ######################################################################################### - Get the protein sequence from the uniprot website by the file containing ID. - - Usage: - - result=GetProteinSequenceFromTxt(path,openfile,savefile) - - Input: path is a directory path containing the ID file such as "/home/orient/protein/" - - openfile is the ID file such as "proteinID.txt" - - savefile is the file saving the obtained protein sequences such as "protein.txt" - ######################################################################################### - """ - f1 = file(path + savefile, 'wb') - f2 = file(path + openfile, 'r') - # res=[] - for index, i in enumerate(f2): - - itrim = string.strip(i) - if itrim == "": - continue - else: - temp = GetProteinSequence(itrim) - print "--------------------------------------------------------" - print "The %d protein sequence has been downloaded!" % (index + 1) - print temp - f1.write(temp + '\n') - print "--------------------------------------------------------" - # res.append(temp+'\n') - # f1.writelines(res) - f2.close() - f1.close() - return 0
- - -
[docs]def GetSeqFromPDB(pdbfile=''): - """ - Get the amino acids sequences from pdb file. - """ - f1 = file(pdbfile, 'r') - res1, res2 = pdbSeq(f1) - f1.close() - return res1
- - -
[docs]class Seq: - def __init__(self, name, seq, no): - self.name = name - self.seq = seq.upper() - self.no = no - self.length = len(seq) - - def __str__(self): - """Output seq when 'print' method is called.""" - return "%s\tNo:%s\tlength:%s\n%s" % (self.name, str(self.no), str(self.length), self.seq)
- - -
[docs]def IsFasta(seq): - """ - ################################################################# - Judge the Seq object is in FASTA format. - Two situation: - 1. No seq name. - 2. Seq name is illegal. - 3. No sequence. - - :param seq: Seq object. - ################################################################# - """ - if not seq.name: - error_info = 'Error, sequence ' + str(seq.no) + ' has no sequence name.' - print(seq) - sys.stderr.write(error_info) - return False - if -1 != seq.name.find('>'): - error_info = 'Error, sequence ' + str(seq.no) + ' name has > character.' - sys.stderr.write(error_info) - return False - if 0 == seq.length: - error_info = 'Error, sequence ' + str(seq.no) + ' is null.' - sys.stderr.write(error_info) - return False - - return True
- - -
[docs]def ReadFasta(f): - """ - ################################################################# - Read a fasta file. - - :param f: HANDLE to input. e.g. sys.stdin, or open(<file>) - - Return Seq obj list. - ################################################################# - """ - name, seq = '', '' - count = 0 - seq_list = [] - lines = f.readlines() - for line in lines: - if not line: - break - - if '>' == line[0]: - if 0 != count or (0 == count and seq != ''): - if IsFasta(Seq(name, seq, count)): - seq_list.append(seq) - else: - sys.exit(0) - - seq = '' - name = line[1:].strip() - count += 1 - else: - seq += line.strip() - - count += 1 - if IsFasta(Seq(name, seq, count)): - seq_list.append(seq) - else: - sys.exit(0) - - return seq_list
- - -#################################################################### -if __name__ == "__main__": - - print '-'*10+'START'+'-'*10 - @timelimited(10) - def run_GetPDB(): - - GetPDB(['1atp', '1efz', '1f88']) - - @timelimited(10) - def run_GetSeqFromPDB(): - - seq = GetSeqFromPDB('1atp.pdb') - print seq - - @timelimited(10) - def run_GetProteinSequence(): - GetProteinSequence('O00560') - - print ReadFasta(open('../test/test_data/protein.fasta')) - - run_GetPDB() - print '-'*25 - run_GetSeqFromPDB() - print '-'*25 - run_GetProteinSequence() - print '-'*10+'END'+'-'*10 -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/GetProteinFromUniprot.html b/PyBioMed/doc/_build/html/_modules/GetProteinFromUniprot.html deleted file mode 100644 index 4880bf2..0000000 --- a/PyBioMed/doc/_build/html/_modules/GetProteinFromUniprot.html +++ /dev/null @@ -1,204 +0,0 @@ - - - - - - - - GetProteinFromUniprot — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for GetProteinFromUniprot

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-################################################################################################
-
-This module is used to download the protein sequence from the uniprot (http://www.uniprot.org/) 
-
-website. You can only need input a protein ID or prepare a file (ID.txt) related to ID. You can
-
- obtain a .txt (ProteinSequence.txt) file saving protein sequence you need.  You can freely use 
- 
- and distribute it. If you hava  any problem, you could contact with us timely!
- 
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-################################################################################################
-"""
-
-import urllib
-import string
-
-
-##################################################################################################
-
[docs]def GetProteinSequence(ProteinID): - """ - ######################################################################################### - Get the protein sequence from the uniprot website by ID. - - Usage: - - result=GetProteinSequence(ProteinID) - - Input: ProteinID is a string indicating ID such as "P48039". - - Output: result is a protein sequence. - ######################################################################################### - """ - - ID = str(ProteinID) - localfile = urllib.urlopen('http://www.uniprot.org/uniprot/' + ID + '.fasta') - temp = localfile.readlines() - res = '' - for i in range(1, len(temp)): - res = res + string.strip(temp[i]) - return res
- - -################################################################################################## -
[docs]def GetProteinSequenceFromTxt(path, openfile, savefile): - """ - ######################################################################################### - Get the protein sequence from the uniprot website by the file containing ID. - - Usage: - - result=GetProteinSequenceFromTxt(path,openfile,savefile) - - Input: path is a directory path containing the ID file such as "/home/orient/protein/" - - openfile is the ID file such as "proteinID.txt" - - savefile is the file saving the obtained protein sequences such as "protein.txt" - ######################################################################################### - """ - f1 = file(path + savefile, 'wb') - f2 = file(path + openfile, 'r') - # res=[] - for index, i in enumerate(f2): - - itrim = string.strip(i) - if itrim == "": - continue - else: - temp = GetProteinSequence(itrim) - print "--------------------------------------------------------" - print "The %d protein sequence has been downloaded!" % (index + 1) - print temp - f1.write(temp + '\n') - print "--------------------------------------------------------" - # res.append(temp+'\n') - # f1.writelines(res) - f2.close() - f1.close() - return 0
- - -################################################################################################## -if __name__ == '__main__': - - localfile = ['P48039'] - for index, i in enumerate(localfile): - itrim = string.strip(i) - if itrim == "": - continue - else: - temp = GetProteinSequence(itrim) - print "--------------------------------------------------------" - print "The %d protein sequence has been downloaded!" % (index + 1) - print temp - print "--------------------------------------------------------" -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/GetSubSeq.html b/PyBioMed/doc/_build/html/_modules/GetSubSeq.html deleted file mode 100644 index fc08233..0000000 --- a/PyBioMed/doc/_build/html/_modules/GetSubSeq.html +++ /dev/null @@ -1,176 +0,0 @@ - - - - - - - - GetSubSeq — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for GetSubSeq

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-#####################################################################################
-
-The prediction of functional sites (e.g.,methylation) of proteins usually needs to 
-
-split the total protein into a set of segments around specific amino acid. Given a 
-
-specific window size p, we can obtain all segments of length equal to (2*p+1) very 
-
-easily. Note that the output of the method is a list form. You can freely use and 
-
-distribute it. If you have any problem, you could contact with us timely.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-#####################################################################################
-
-"""
-
-import re
-import string
-
-AALetter = ["A", "R", "N", "D", "C", "E", "Q", "G", "H", "I", "L", "K", "M", "F", "P", "S", "T", "W", "Y", "V"]
-
-
-#############################################################################################
-
-
[docs]def GetSubSequence(ProteinSequence, ToAA='S', window=3): - """ - ####################################################################### - Get all 2*window+1 sub-sequences whose cener is ToAA in a protein. - - Usage: - - result=GetSubSequence(protein,ToAA,window) - - Input:protein is a pure problem sequence. - - ToAA is the central (query point) amino acid in the sub-sequence. - - window is the span. - - result is a list form containing all satisfied sub-sequences. - ####################################################################### - """ - - if ToAA not in AALetter: - ToAA = ProteinSequence[1] - - Num = len(ProteinSequence) - seqiter = re.finditer(ToAA, ProteinSequence) - AAindex = [] - for i in seqiter: - AAindex.append(i.end()) - - result = [] - for i in AAindex: - if i - window > 0 and Num - i + 1 - window > 0: - temp = ProteinSequence[i - window - 1:i + window] - result.append(temp) - - return result
- - -############################################################################################# -if __name__ == "__main__": - protein = "ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS" - subseq = GetSubSequence(protein, ToAA='D', window=10) - print subseq - print len(subseq) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/Getmol.html b/PyBioMed/doc/_build/html/_modules/Getmol.html deleted file mode 100644 index cb10f3a..0000000 --- a/PyBioMed/doc/_build/html/_modules/Getmol.html +++ /dev/null @@ -1,336 +0,0 @@ - - - - - - - - Getmol — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for Getmol

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-This module is to get different formats of molecules from file and web. If you
-
-have any question please contact me via email.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-"""
-
-import urllib
-import re
-import string
-import os
-from rdkit import Chem
-
-Version=1.0
-
-
[docs]def ReadMolFromSDF(filename=""): - """ - Read a set of molecules by SDF file format. - - Note: the output of this function is a set of molecular objects. - - You need to use for statement to call each object. - - Usage: - - res=ReadMolFromSDF(filename) - - Input: filename is a file name with path. - - Output: res is a set of molecular object. - - """ - molset=Chem.SDMolSupplier(filename) - return molset
- - - -
[docs]def ReadMolFromMOL(filename=""): - """ - Read a molecule by mol file format. - - Usage: - - res=ReadMolFromMOL(filename) - - Input: filename is a file name with path. - - Output: res is a molecular object. - - """ - mol=Chem.MolFromMolFile(filename) - return mol
- - - -
[docs]def ReadMolFromSmile(smi=""): - """ - ################################################################# - Read a molecule by SMILES string. - - Usage: - - res=ReadMolFromSmile(smi) - - Input: smi is a SMILES string. - - Output: res is a molecule object. - ################################################################# - """ - mol = Chem.MolFromSmiles(string.strip(smi)) - - return mol
- - -
[docs]def ReadMolFromInchi(inchi=""): - """ - ################################################################# - Read a molecule by Inchi string. - - Usage: - - res=ReadMolFromInchi(inchi) - - Input: inchi is a InChi string. - - Output: res is a molecule object. - ################################################################# - """ - import pybel - temp=pybel.readstring("inchi",inchi) - smi=temp.write("smi") - mol = Chem.MolFromSmiles(string.strip(smi)) - - return mol
- - -
[docs]def ReadMolFromMol(filename=""): - """ - ################################################################# - Read a molecule with mol file format. - - Usage: - - res=ReadMolFromMol(filename) - - Input: filename is a file name. - - Output: res is a molecule object. - ################################################################# - """ - mol=Chem.MolFromMolFile(filename) - return mol
-############################################################################# - -
[docs]def GetMolFromCAS(casid=""): - """ - Downloading the molecules from http://www.chemnet.com/cas/ by CAS ID (casid). - if you want to use this function, you must be install pybel. - """ - import pybel - casid=string.strip(casid) - localfile=urllib.urlopen('http://www.chemnet.com/cas/supplier.cgi?terms='+casid+'&l=&exact=dict') - temp=localfile.readlines() - for i in temp: - if re.findall('InChI=',i)==['InChI=']: - k=i.split(' <td align="left">') - kk=k[1].split('</td>\r\n') - if kk[0][0:5]=="InChI": - res=kk[0] - else: - res="None" - localfile.close() - mol=pybel.readstring('inchi',string.strip(res)) - smile=mol.write('smi') - return string.strip(smile)
- - -
[docs]def GetMolFromEBI(): - """ - """ - pass
- - -
[docs]def GetMolFromNCBI(cid=""): - """ - Downloading the molecules from http://pubchem.ncbi.nlm.nih.gov/ by cid (cid). - """ - cid=string.strip(cid) - localfile=urllib.urlopen('http://pubchem.ncbi.nlm.nih.gov/summary/summary.cgi?cid='+cid+'&disopt=SaveSDF') - temp=localfile.readlines() - f=file("temp.sdf",'w') - f.writelines(temp) - f.close() - localfile.close() - m=Chem.MolFromMolFile("temp.sdf") - os.remove("temp.sdf") - temp=Chem.MolToSmiles(m,isomericSmiles=True) - return temp
- - -
[docs]def GetMolFromDrugbank(dbid=""): - """ - Downloading the molecules from http://www.drugbank.ca/ by dbid (dbid). - """ - dbid=string.strip(dbid) - - localfile=urllib.urlopen('http://www.drugbank.ca/drugs/'+dbid+'.sdf') - temp=localfile.readlines() - f=file("temp.sdf",'w') - f.writelines(temp) - f.close() - localfile.close() - m=Chem.MolFromMolFile("temp.sdf") - os.remove("temp.sdf") - temp=Chem.MolToSmiles(m,isomericSmiles=True) - return temp
- - - -
[docs]def GetMolFromKegg(kid=""): - """ - Downloading the molecules from http://www.genome.jp/ by kegg id (kid). - """ - ID=str(kid) - localfile=urllib.urlopen('http://www.genome.jp/dbget-bin/www_bget?-f+m+drug+'+ID) - temp=localfile.readlines() - f=file("temp.mol",'w') - f.writelines(temp) - f.close() - localfile.close() - m=Chem.MolFromMolFile("temp.mol") - os.remove("temp.mol") - temp=Chem.MolToSmiles(m,isomericSmiles=True) - return temp
-############################################################################# - -if __name__=="__main__": - print '-'*10+'START'+'-'*10 - print 'Only PyBioMed is successfully installed the code below can be run!' - from PyBioMed.PyGetMol.GetProtein import timelimited - @timelimited(10) - def run_GetMolFromCAS(): - temp=GetMolFromCAS(casid="50-12-4") - print temp - - @timelimited(10) - def run_GetMolFromNCBI(): - temp=GetMolFromNCBI(cid="2244") - print temp - - @timelimited(10) - def run_GetMolFromDrugbank(): - temp=GetMolFromDrugbank(dbid="DB00133") - print temp - - @timelimited(10) - def run_GetMolFromKegg(): - temp=GetMolFromKegg(kid="D02176") - print temp - - run_GetMolFromCAS() - print '-'*25 - run_GetMolFromNCBI() - print '-'*25 - run_GetMolFromDrugbank() - print '-'*25 - run_GetMolFromKegg() - print '-'*10+'END'+'-'*10 - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/ProCheck.html b/PyBioMed/doc/_build/html/_modules/ProCheck.html deleted file mode 100644 index efe3f46..0000000 --- a/PyBioMed/doc/_build/html/_modules/ProCheck.html +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - - - ProCheck — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for ProCheck

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-#####################################################################################
-This module is used for checking whether the input protein sequence is valid amino acid
-
-sequence. You can freely use and distribute it. If you hava any problem, you could 
-
-contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-#####################################################################################
-
-"""
-
-AALetter = ["A", "R", "N", "D", "C", "E", "Q", "G", "H", "I", "L", "K", "M", "F", "P", "S", "T", "W", "Y", "V"]
-
-
-
[docs]def ProteinCheck(ProteinSequence): - """ - ################################################################################### - Check whether the protein sequence is a valid amino acid sequence or not - - Usage: - - result=ProteinCheck(protein) - - Input: protein is a pure protein sequence. - - Output: if the check is no problem, result will return the length of protein. - - if the check has problems, result will return 0. - ################################################################################### - """ - - NumPro = len(ProteinSequence) - for i in ProteinSequence: - if i not in AALetter: - flag = 0 - break - else: - flag = NumPro - - return flag
- - -if __name__ == "__main__": - protein = "ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDASU" - print ProteinCheck(protein) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PseudoAAC.html b/PyBioMed/doc/_build/html/_modules/PseudoAAC.html deleted file mode 100644 index 0df79cb..0000000 --- a/PyBioMed/doc/_build/html/_modules/PseudoAAC.html +++ /dev/null @@ -1,756 +0,0 @@ - - - - - - - - PseudoAAC — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PseudoAAC

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-#########################################################################################
-
-Instead of using the conventional 20-D amino acid composition to represent the sample
-
-of a protein, Prof. Kuo-Chen Chou proposed the pseudo amino acid (PseAA) composition 
-
-in order for inluding the sequence-order information. Based on the concept of Chou's 
- 
-pseudo amino acid composition, the server PseAA was designed in a flexible way, allowing 
- 
-users to generate various kinds of pseudo amino acid composition for a given protein
- 
-sequence by selecting different parameters and their combinations. This module aims at 
- 
-computing two types of PseAA descriptors: Type I and Type II. 
- 
-You can freely use and distribute it. If you have any problem, you could contact 
- 
-with us timely.
-
-References:
-
-[1]: Kuo-Chen Chou. Prediction of Protein Cellular Attributes Using Pseudo-Amino Acid 
-
-Composition. PROTEINS: Structure, Function, and Genetics, 2001, 43: 246-255.
-
-[2]: http://www.csbio.sjtu.edu.cn/bioinf/PseAAC/
-
-[3]: http://www.csbio.sjtu.edu.cn/bioinf/PseAAC/type2.htm
-
-[4]: Kuo-Chen Chou. Using amphiphilic pseudo amino acid composition to predict enzyme 
-
-subfamily classes. Bioinformatics, 2005,21,10-19.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-#########################################################################################
-"""
-
-import string
-import math
-# import scipy
-
-
-AALetter = ["A", "R", "N", "D", "C", "E", "Q", "G", "H", "I", "L", "K", "M", "F", "P", "S", "T", "W", "Y", "V"]
-
-_Hydrophobicity = {"A": 0.62, "R": -2.53, "N": -0.78, "D": -0.90, "C": 0.29, "Q": -0.85, "E": -0.74, "G": 0.48,
-                   "H": -0.40, "I": 1.38, "L": 1.06, "K": -1.50, "M": 0.64, "F": 1.19, "P": 0.12, "S": -0.18,
-                   "T": -0.05, "W": 0.81, "Y": 0.26, "V": 1.08}
-
-_hydrophilicity = {"A": -0.5, "R": 3.0, "N": 0.2, "D": 3.0, "C": -1.0, "Q": 0.2, "E": 3.0, "G": 0.0, "H": -0.5,
-                   "I": -1.8, "L": -1.8, "K": 3.0, "M": -1.3, "F": -2.5, "P": 0.0, "S": 0.3, "T": -0.4, "W": -3.4,
-                   "Y": -2.3, "V": -1.5}
-
-_residuemass = {"A": 15.0, "R": 101.0, "N": 58.0, "D": 59.0, "C": 47.0, "Q": 72.0, "E": 73.0, "G": 1.000, "H": 82.0,
-                "I": 57.0, "L": 57.0, "K": 73.0, "M": 75.0, "F": 91.0, "P": 42.0, "S": 31.0, "T": 45.0, "W": 130.0,
-                "Y": 107.0, "V": 43.0}
-
-_pK1 = {"A": 2.35, "C": 1.71, "D": 1.88, "E": 2.19, "F": 2.58, "G": 2.34, "H": 1.78, "I": 2.32, "K": 2.20, "L": 2.36,
-        "M": 2.28, "N": 2.18, "P": 1.99, "Q": 2.17, "R": 2.18, "S": 2.21, "T": 2.15, "V": 2.29, "W": 2.38, "Y": 2.20}
-
-_pK2 = {"A": 9.87, "C": 10.78, "D": 9.60, "E": 9.67, "F": 9.24, "G": 9.60, "H": 8.97, "I": 9.76, "K": 8.90, "L": 9.60,
-        "M": 9.21, "N": 9.09, "P": 10.6, "Q": 9.13, "R": 9.09, "S": 9.15, "T": 9.12, "V": 9.74, "W": 9.39, "Y": 9.11}
-
-_pI = {"A": 6.11, "C": 5.02, "D": 2.98, "E": 3.08, "F": 5.91, "G": 6.06, "H": 7.64, "I": 6.04, "K": 9.47, "L": 6.04,
-       "M": 5.74, "N": 10.76, "P": 6.30, "Q": 5.65, "R": 10.76, "S": 5.68, "T": 5.60, "V": 6.02, "W": 5.88, "Y": 5.63}
-
-
-#############################################################################################
-
-def _mean(listvalue):
-    """
-    ########################################################################################
-    The mean value of the list data.
-
-    Usage:
-
-    result=_mean(listvalue)
-    ########################################################################################
-    """
-    return sum(listvalue) / len(listvalue)
-
-
-##############################################################################################
-def _std(listvalue, ddof=1):
-    """
-    ########################################################################################
-    The standard deviation of the list data.
-
-    Usage:
-
-    result=_std(listvalue)
-    ########################################################################################
-    """
-    mean = _mean(listvalue)
-    temp = [math.pow(i - mean, 2) for i in listvalue]
-    res = math.sqrt(sum(temp) / (len(listvalue) - ddof))
-    return res
-
-
-##############################################################################################
-
[docs]def NormalizeEachAAP(AAP): - """ - ######################################################################################## - All of the amino acid indices are centralized and - - standardized before the calculation. - - Usage: - - result=NormalizeEachAAP(AAP) - - Input: AAP is a dict form containing the properties of 20 amino acids. - - Output: result is the a dict form containing the normalized properties - - of 20 amino acids. - ######################################################################################## - """ - if len(AAP.values()) != 20: - print 'You can not input the correct number of properities of Amino acids!' - else: - Result = {} - for i, j in AAP.items(): - Result[i] = (j - _mean(AAP.values())) / _std(AAP.values(), ddof=0) - - return Result
- - -############################################################################################# -############################################################################################# -##################################Type I descriptors######################################### -####################### Pseudo-Amino Acid Composition descriptors############################ -############################################################################################# -############################################################################################# -def _GetCorrelationFunction(Ri='S', Rj='D', AAP=[_Hydrophobicity, _hydrophilicity, _residuemass]): - """ - ######################################################################################## - Computing the correlation between two given amino acids using the above three - - properties. - - Usage: - - result=_GetCorrelationFunction(Ri,Rj) - - Input: Ri and Rj are the amino acids, respectively. - - Output: result is the correlation value between two amino acids. - ######################################################################################## - """ - Hydrophobicity = NormalizeEachAAP(AAP[0]) - hydrophilicity = NormalizeEachAAP(AAP[1]) - residuemass = NormalizeEachAAP(AAP[2]) - theta1 = math.pow(Hydrophobicity[Ri] - Hydrophobicity[Rj], 2) - theta2 = math.pow(hydrophilicity[Ri] - hydrophilicity[Rj], 2) - theta3 = math.pow(residuemass[Ri] - residuemass[Rj], 2) - theta = round((theta1 + theta2 + theta3) / 3.0, 3) - return theta - - -############################################################################################# - -def _GetSequenceOrderCorrelationFactor(ProteinSequence, k=1): - """ - ######################################################################################## - Computing the Sequence order correlation factor with gap equal to k based on - - [_Hydrophobicity,_hydrophilicity,_residuemass]. - - Usage: - - result=_GetSequenceOrderCorrelationFactor(protein,k) - - Input: protein is a pure protein sequence. - - k is the gap. - - Output: result is the correlation factor value with the gap equal to k. - ######################################################################################## - """ - LengthSequence = len(ProteinSequence) - res = [] - for i in range(LengthSequence - k): - AA1 = ProteinSequence[i] - AA2 = ProteinSequence[i + k] - res.append(_GetCorrelationFunction(AA1, AA2)) - result = round(sum(res) / (LengthSequence - k), 3) - return result - - -############################################################################################# - -
[docs]def GetAAComposition(ProteinSequence): - """ - ######################################################################################## - Calculate the composition of Amino acids - - for a given protein sequence. - - Usage: - - result=CalculateAAComposition(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing the composition of - - 20 amino acids. - ######################################################################################## - """ - LengthSequence = len(ProteinSequence) - Result = {} - for i in AALetter: - Result[i] = round(float(ProteinSequence.count(i)) / LengthSequence * 100, 3) - return Result
- - -############################################################################################# -def _GetPseudoAAC1(ProteinSequence, lamda=10, weight=0.05): - """ - ####################################################################################### - Computing the first 20 of type I pseudo-amino acid compostion descriptors based on - - [_Hydrophobicity,_hydrophilicity,_residuemass]. - ######################################################################################## - """ - rightpart = 0.0 - for i in range(lamda): - rightpart = rightpart + _GetSequenceOrderCorrelationFactor(ProteinSequence, k=i + 1) - AAC = GetAAComposition(ProteinSequence) - - result = {} - temp = 1 + weight * rightpart - for index, i in enumerate(AALetter): - result['PAAC' + str(index + 1)] = round(AAC[i] / temp, 3) - - return result - - -############################################################################################# -def _GetPseudoAAC2(ProteinSequence, lamda=10, weight=0.05): - """ - ######################################################################################## - Computing the last lamda of type I pseudo-amino acid compostion descriptors based on - - [_Hydrophobicity,_hydrophilicity,_residuemass]. - ######################################################################################## - """ - rightpart = [] - for i in range(lamda): - rightpart.append(_GetSequenceOrderCorrelationFactor(ProteinSequence, k=i + 1)) - - result = {} - temp = 1 + weight * sum(rightpart) - for index in range(20, 20 + lamda): - result['PAAC' + str(index + 1)] = round(weight * rightpart[index - 20] / temp * 100, 3) - - return result - - -############################################################################################# - -def _GetPseudoAAC(ProteinSequence, lamda=10, weight=0.05): - """ - ####################################################################################### - Computing all of type I pseudo-amino acid compostion descriptors based on three given - - properties. Note that the number of PAAC strongly depends on the lamda value. if lamda - - = 20, we can obtain 20+20=40 PAAC descriptors. The size of these values depends on the - - choice of lamda and weight simultaneously. - - AAP=[_Hydrophobicity,_hydrophilicity,_residuemass] - - Usage: - - result=_GetAPseudoAAC(protein,lamda,weight) - - Input: protein is a pure protein sequence. - - lamda factor reflects the rank of correlation and is a non-Negative integer, such as 15. - - Note that (1)lamda should NOT be larger than the length of input protein sequence; - - (2) lamda must be non-Negative integer, such as 0, 1, 2, ...; (3) when lamda =0, the - - output of PseAA server is the 20-D amino acid composition. - - weight factor is designed for the users to put weight on the additional PseAA components - - with respect to the conventional AA components. The user can select any value within the - - region from 0.05 to 0.7 for the weight factor. - - Output: result is a dict form containing calculated 20+lamda PAAC descriptors. - ######################################################################################## - """ - res = {} - res.update(_GetPseudoAAC1(ProteinSequence, lamda=lamda, weight=weight)) - res.update(_GetPseudoAAC2(ProteinSequence, lamda=lamda, weight=weight)) - return res - - -############################################################################################# -##################################Type II descriptors######################################## -###############Amphiphilic Pseudo-Amino Acid Composition descriptors######################### -############################################################################################# -############################################################################################# -def _GetCorrelationFunctionForAPAAC(Ri='S', Rj='D', AAP=[_Hydrophobicity, _hydrophilicity]): - """ - ######################################################################################## - Computing the correlation between two given amino acids using the above two - - properties for APAAC (type II PseAAC). - - Usage: - - result=_GetCorrelationFunctionForAPAAC(Ri,Rj) - - Input: Ri and Rj are the amino acids, respectively. - - Output: result is the correlation value between two amino acids. - ######################################################################################## - """ - Hydrophobicity = NormalizeEachAAP(AAP[0]) - hydrophilicity = NormalizeEachAAP(AAP[1]) - theta1 = round(Hydrophobicity[Ri] * Hydrophobicity[Rj], 3) - theta2 = round(hydrophilicity[Ri] * hydrophilicity[Rj], 3) - - return theta1, theta2 - - -############################################################################################# -
[docs]def GetSequenceOrderCorrelationFactorForAPAAC(ProteinSequence, k=1): - """ - ######################################################################################## - Computing the Sequence order correlation factor with gap equal to k based on - - [_Hydrophobicity,_hydrophilicity] for APAAC (type II PseAAC) . - - Usage: - - result=GetSequenceOrderCorrelationFactorForAPAAC(protein,k) - - Input: protein is a pure protein sequence. - - k is the gap. - - Output: result is the correlation factor value with the gap equal to k. - ######################################################################################## - """ - LengthSequence = len(ProteinSequence) - resHydrophobicity = [] - reshydrophilicity = [] - for i in range(LengthSequence - k): - AA1 = ProteinSequence[i] - AA2 = ProteinSequence[i + k] - temp = _GetCorrelationFunctionForAPAAC(AA1, AA2) - resHydrophobicity.append(temp[0]) - reshydrophilicity.append(temp[1]) - result = [] - result.append(round(sum(resHydrophobicity) / (LengthSequence - k), 3)) - result.append(round(sum(reshydrophilicity) / (LengthSequence - k), 3)) - return result
- - -############################################################################################# -
[docs]def GetAPseudoAAC1(ProteinSequence, lamda=30, weight=0.5): - """ - ######################################################################################## - Computing the first 20 of type II pseudo-amino acid compostion descriptors based on - - [_Hydrophobicity,_hydrophilicity]. - ######################################################################################## - """ - rightpart = 0.0 - for i in range(lamda): - rightpart = rightpart + sum(GetSequenceOrderCorrelationFactorForAPAAC(ProteinSequence, k=i + 1)) - AAC = GetAAComposition(ProteinSequence) - - result = {} - temp = 1 + weight * rightpart - for index, i in enumerate(AALetter): - result['APAAC' + str(index + 1)] = round(AAC[i] / temp, 3) - - return result
- - -############################################################################################# -
[docs]def GetAPseudoAAC2(ProteinSequence, lamda=30, weight=0.5): - """ - ####################################################################################### - Computing the last lamda of type II pseudo-amino acid compostion descriptors based on - - [_Hydrophobicity,_hydrophilicity]. - ####################################################################################### - """ - rightpart = [] - for i in range(lamda): - temp = GetSequenceOrderCorrelationFactorForAPAAC(ProteinSequence, k=i + 1) - rightpart.append(temp[0]) - rightpart.append(temp[1]) - - result = {} - temp = 1 + weight * sum(rightpart) - for index in range(20, 20 + 2 * lamda): - result['PAAC' + str(index + 1)] = round(weight * rightpart[index - 20] / temp * 100, 3) - - return result
- - -############################################################################################# -
[docs]def GetAPseudoAAC(ProteinSequence, lamda=30, weight=0.5): - """ - ####################################################################################### - Computing all of type II pseudo-amino acid compostion descriptors based on the given - - properties. Note that the number of PAAC strongly depends on the lamda value. if lamda - - = 20, we can obtain 20+20=40 PAAC descriptors. The size of these values depends on the - - choice of lamda and weight simultaneously. - - Usage: - - result=GetAPseudoAAC(protein,lamda,weight) - - Input: protein is a pure protein sequence. - - lamda factor reflects the rank of correlation and is a non-Negative integer, such as 15. - - Note that (1)lamda should NOT be larger than the length of input protein sequence; - - (2) lamda must be non-Negative integer, such as 0, 1, 2, ...; (3) when lamda =0, the - - output of PseAA server is the 20-D amino acid composition. - - weight factor is designed for the users to put weight on the additional PseAA components - - with respect to the conventional AA components. The user can select any value within the - - region from 0.05 to 0.7 for the weight factor. - - Output: result is a dict form containing calculated 20+lamda PAAC descriptors. - ####################################################################################### - """ - res = {} - res.update(GetAPseudoAAC1(ProteinSequence, lamda=lamda, weight=weight)) - res.update(GetAPseudoAAC2(ProteinSequence, lamda=lamda, weight=weight)) - return res
- - -############################################################################################# -############################################################################################# -##################################Type I descriptors######################################### -####################### Pseudo-Amino Acid Composition descriptors############################ -#############################based on different properties################################### -############################################################################################# -############################################################################################# -
[docs]def GetCorrelationFunction(Ri='S', Rj='D', AAP=[]): - """ - ######################################################################################## - Computing the correlation between two given amino acids using the given - - properties. - - Usage: - - result=GetCorrelationFunction(Ri,Rj,AAP) - - Input: Ri and Rj are the amino acids, respectively. - - AAP is a list form containing the properties, each of which is a dict form. - - Output: result is the correlation value between two amino acids. - ######################################################################################## - """ - NumAAP = len(AAP) - theta = 0.0 - for i in range(NumAAP): - temp = NormalizeEachAAP(AAP[i]) - theta = theta + math.pow(temp[Ri] - temp[Rj], 2) - result = round(theta / NumAAP, 3) - return result
- - -############################################################################################# -
[docs]def GetSequenceOrderCorrelationFactor(ProteinSequence, k=1, AAP=[]): - """ - ######################################################################################## - Computing the Sequence order correlation factor with gap equal to k based on - - the given properities. - - Usage: - - result=GetSequenceOrderCorrelationFactor(protein,k,AAP) - - Input: protein is a pure protein sequence. - - k is the gap. - - AAP is a list form containing the properties, each of which is a dict form. - - Output: result is the correlation factor value with the gap equal to k. - ######################################################################################## - """ - LengthSequence = len(ProteinSequence) - res = [] - for i in range(LengthSequence - k): - AA1 = ProteinSequence[i] - AA2 = ProteinSequence[i + k] - res.append(GetCorrelationFunction(AA1, AA2, AAP)) - result = round(sum(res) / (LengthSequence - k), 3) - return result
- - -############################################################################################# -
[docs]def GetPseudoAAC1(ProteinSequence, lamda=30, weight=0.05, AAP=[]): - """ - ####################################################################################### - Computing the first 20 of type I pseudo-amino acid compostion descriptors based on the given - - properties. - ######################################################################################## - """ - rightpart = 0.0 - for i in range(lamda): - rightpart = rightpart + GetSequenceOrderCorrelationFactor(ProteinSequence, i + 1, AAP) - AAC = GetAAComposition(ProteinSequence) - - result = {} - temp = 1 + weight * rightpart - for index, i in enumerate(AALetter): - result['PAAC' + str(index + 1)] = round(AAC[i] / temp, 3) - - return result
- - -############################################################################################# -
[docs]def GetPseudoAAC2(ProteinSequence, lamda=30, weight=0.05, AAP=[]): - """ - ####################################################################################### - Computing the last lamda of type I pseudo-amino acid compostion descriptors based on the given - - properties. - ######################################################################################## - """ - rightpart = [] - for i in range(lamda): - rightpart.append(GetSequenceOrderCorrelationFactor(ProteinSequence, i + 1, AAP)) - - result = {} - temp = 1 + weight * sum(rightpart) - for index in range(20, 20 + lamda): - result['PAAC' + str(index + 1)] = round(weight * rightpart[index - 20] / temp * 100, 3) - - return result
- - -############################################################################################# - -
[docs]def GetPseudoAAC(ProteinSequence, lamda=30, weight=0.05, AAP=[]): - """ - ####################################################################################### - Computing all of type I pseudo-amino acid compostion descriptors based on the given - - properties. Note that the number of PAAC strongly depends on the lamda value. if lamda - - = 20, we can obtain 20+20=40 PAAC descriptors. The size of these values depends on the - - choice of lamda and weight simultaneously. You must specify some properties into AAP. - - Usage: - - result=GetPseudoAAC(protein,lamda,weight) - - Input: protein is a pure protein sequence. - - lamda factor reflects the rank of correlation and is a non-Negative integer, such as 15. - - Note that (1)lamda should NOT be larger than the length of input protein sequence; - - (2) lamda must be non-Negative integer, such as 0, 1, 2, ...; (3) when lamda =0, the - - output of PseAA server is the 20-D amino acid composition. - - weight factor is designed for the users to put weight on the additional PseAA components - - with respect to the conventional AA components. The user can select any value within the - - region from 0.05 to 0.7 for the weight factor. - - AAP is a list form containing the properties, each of which is a dict form. - - Output: result is a dict form containing calculated 20+lamda PAAC descriptors. - ######################################################################################## - """ - res = {} - res.update(GetPseudoAAC1(ProteinSequence, lamda, weight, AAP)) - res.update(GetPseudoAAC2(ProteinSequence, lamda, weight, AAP)) - return res
- - -############################################################################################# - -if __name__ == "__main__": - import string - - protein = "MTDRARLRLHDTAAGVVRDFVPLRPGHVSIYLCGATVQGLPHIGHVRSGVAFDILRRWLL\ -ARGYDVAFIRNVTDIEDKILAKAAAAGRPWWEWAATHERAFTAAYDALDVLPPSAEPRAT\ -GHITQMIEMIERLIQAGHAYTGGGDVYFDVLSYPEYGQLSGHKIDDVHQGEGVAAGKRDQ\ -RDFTLWKGEKPGEPSWPTPWGRGRPGWHLECSAMARSYLGPEFDIHCGGMDLVFPHHENE\ -IAQSRAAGDGFARYWLHNGWVTMGGEKMSKSLGNVLSMPAMLQRVRPAELRYYLGSAHYR\ -SMLEFSETAMQDAVKAYVGLEDFLHRVRTRVGAVCPGDPTPRFAEALDDDLSVPIALAEI\ -HHVRAEGNRALDAGDHDGALRSASAIRAMMGILGCDPLDQRWESRDETSAALAAVDVLVQ\ -AELQNREKAREQRNWALADEIRGRLKRAGIEVTDTADGPQWSLLGGDTK" - protein = string.strip(protein) - # temp=_GetCorrelationFunction('S','D') - # print temp - # - # print _GetSequenceOrderCorrelationFactor(protein,k=4) - # - # PAAC1=_GetPseudoAAC1(protein,lamda=4) - # for i in PAAC1: - # print i, PAAC1[i] - # PAAC2=_GetPseudoAAC2(protein,lamda=4) - # for i in PAAC2: - # print i, PAAC2[i] - # print len(PAAC1) - # print _GetSequenceOrderCorrelationFactorForAPAAC(protein,k=1) - # APAAC1=_GetAPseudoAAC1(protein,lamda=4) - # for i in APAAC1: - # print i, APAAC1[i] - - # APAAC2=GetAPseudoAAC2(protein,lamda=4) - # for i in APAAC2: - # print i, APAAC2[i] - # APAAC=GetAPseudoAAC(protein,lamda=4) - # - # for i in APAAC: - # print i, APAAC[i] - - PAAC = GetPseudoAAC(protein, lamda=5, AAP=[_Hydrophobicity, _hydrophilicity]) - - for i in PAAC: - print i, PAAC[i] -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PubChemFingerprints.html b/PyBioMed/doc/_build/html/_modules/PubChemFingerprints.html deleted file mode 100644 index 3dad3f2..0000000 --- a/PyBioMed/doc/_build/html/_modules/PubChemFingerprints.html +++ /dev/null @@ -1,1661 +0,0 @@ - - - - - - - - PubChemFingerprints — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PubChemFingerprints

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-This file provides internal functions to calculate pubchem fingerprints
-If you have any questions, please feel free to contact us.
-E-mail: biomed@csu.edu.cn
-
-@File name: PubChemFingerprints
-@author: Jie Dong and Zhijiang Yao
-"""
-
-from rdkit import Chem
-from rdkit import DataStructs
-# these are SMARTS patterns corresponding to the PubChem fingerprints
-# https://astro.temple.edu/~tua87106/list_fingerprints.pdf
-# ftp://ftp.ncbi.nlm.nih.gov/pubchem/specifications/pubchem_fingerprints.txt
-
-smartsPatts = {
-1:('[H]', 3),# 1-115
-2:('[H]', 7),
-3:('[H]', 15),
-4:('[H]', 31),
-5:('[Li]', 0),
-6:('[Li]', 1),
-7:('[B]', 0),
-8:('[B]', 1),
-9:('[B]', 3),
-10:('[C]', 1),
-11:('[C]', 3),
-12:('[C]', 7),
-13:('[C]', 15),
-14:('[C]', 31),
-15:('[N]', 0),
-16:('[N]', 1),
-17:('[N]', 3),
-18:('[N]', 7),
-19:('[O]', 0),
-20:('[O]', 1),
-21:('[O]', 3),
-22:('[O]', 7),
-23:('[O]', 15),
-24:('[F]', 0),
-25:('[F]', 1),
-26:('[F]', 3),
-27:('[Na]', 0),
-28:('[Na]', 1),
-29:('[Si]', 0),
-30:('[Si]', 1),
-31:('[P]', 0),
-32:('[P]', 1),
-33:('[P]', 3),
-34:('[S]', 0),
-35:('[S]', 1),
-36:('[S]', 3),
-37:('[S]', 7),
-38:('[Cl]', 0),
-39:('[Cl]', 1),
-40:('[Cl]', 3),
-41:('[Cl]', 7),
-42:('[K]', 0),
-43:('[K]', 1),
-44:('[Br]', 0),
-45:('[Br]', 1),
-46:('[Br]', 3),
-47:('[I]', 0),
-48:('[I]', 1),
-49:('[I]', 3),
-50:('[Be]', 0),
-51:('[Mg]', 0),
-52:('[Al]', 0),
-53:('[Ca]', 0),
-54:('[Sc]', 0),
-55:('[Ti]', 0),
-56:('[V]', 0),
-57:('[Cr]', 0),
-58:('[Mn]', 0),
-59:('[Fe]', 0),
-60:('[CO]', 0),
-61:('[Ni]', 0),
-62:('[Cu]', 0),
-63:('[Zn]', 0),
-64:('[Ga]', 0),
-65:('[Ge]', 0),
-66:('[As]', 0),
-67:('[Se]', 0),
-68:('[Kr]', 0),
-69:('[Rb]', 0),
-70:('[Sr]', 0),
-71:('[Y]', 0),
-72:('[Zr]', 0),
-73:('[Nb]', 0),
-74:('[Mo]', 0),
-75:('[Ru]', 0),
-76:('[Rh]', 0),
-77:('[Pd]', 0),
-78:('[Ag]', 0),
-79:('[Cd]', 0),
-80:('[In]', 0),
-81:('[Sn]', 0),
-82:('[Sb]', 0),
-83:('[Te]', 0),
-84:('[Xe]', 0),
-85:('[Cs]', 0),
-86:('[Ba]', 0),
-87:('[Lu]', 0),
-88:('[Hf]', 0),
-89:('[Ta]', 0),
-90:('[W]', 0),
-91:('[Re]', 0),
-92:('[Os]', 0),
-93:('[Ir]', 0),
-94:('[Pt]', 0),
-95:('[Au]', 0),
-96:('[Hg]', 0),
-97:('[Tl]', 0),
-98:('[Pb]', 0),
-99:('[Bi]', 0),
-100:('[La]', 0),
-101:('[Ce]', 0),
-102:('[Pr]', 0),
-103:('[Nd]', 0),
-104:('[Pm]', 0),
-105:('[Sm]', 0),
-106:('[Eu]', 0),
-107:('[Gd]', 0),
-108:('[Tb]', 0),
-109:('[Dy]', 0),
-110:('[Ho]', 0),
-111:('[Er]', 0),
-112:('[Tm]', 0),
-113:('[Yb]', 0),
-114:('[Tc]', 0),
-115:('[U]', 0),
-116:('[Li&!H0]', 0),#264-881
-117:('[Li]~[Li]', 0),
-118:('[Li]~[#5]', 0),
-119:('[Li]~[#6]', 0),
-120:('[Li]~[#8]', 0),
-121:('[Li]~[F]', 0),
-122:('[Li]~[#15]', 0),
-123:('[Li]~[#16]', 0),
-124:('[Li]~[Cl]', 0),
-125:('[#5&!H0]', 0),
-126:('[#5]~[#5]', 0),
-127:('[#5]~[#6]', 0),
-128:('[#5]~[#7]', 0),
-129:('[#5]~[#8]', 0),
-130:('[#5]~[F]', 0),
-131:('[#5]~[#14]', 0),
-132:('[#5]~[#15]', 0),
-133:('[#5]~[#16]', 0),
-134:('[#5]~[Cl]', 0),
-135:('[#5]~[Br]', 0),
-136:('[#6&!H0]', 0),
-137:('[#6]~[#6]', 0),
-138:('[#6]~[#7]', 0),
-139:('[#6]~[#8]', 0),
-140:('[#6]~[F]', 0),
-141:('[#6]~[Na]', 0),
-142:('[#6]~[Mg]', 0),
-143:('[#6]~[Al]', 0),
-144:('[#6]~[#14]', 0),
-145:('[#6]~[#15]', 0),
-146:('[#6]~[#16]', 0),
-147:('[#6]~[Cl]', 0),
-148:('[#6]~[#33]', 0),
-149:('[#6]~[#34]', 0),
-150:('[#6]~[Br]', 0),
-151:('[#6]~[I]', 0),
-152:('[#7&!H0]', 0),
-153:('[#7]~[#7]', 0),
-154:('[#7]~[#8]', 0),
-155:('[#7]~[F]', 0),
-156:('[#7]~[#14]', 0),
-157:('[#7]~[#15]', 0),
-158:('[#7]~[#16]', 0),
-159:('[#7]~[Cl]', 0),
-160:('[#7]~[Br]', 0),
-161:('[#8&!H0]', 0),
-162:('[#8]~[#8]', 0),
-163:('[#8]~[Mg]', 0),
-164:('[#8]~[Na]', 0),
-165:('[#8]~[Al]', 0),
-166:('[#8]~[#14]', 0),
-167:('[#8]~[#15]', 0),
-168:('[#8]~[K]', 0),
-169:('[F]~[#15]', 0),
-170:('[F]~[#16]', 0),
-171:('[Al&!H0]', 0),
-172:('[Al]~[Cl]', 0),
-173:('[#14&!H0]', 0),
-174:('[#14]~[#14]', 0),
-175:('[#14]~[Cl]', 0),
-176:('[#15&!H0]', 0),
-177:('[#15]~[#15]', 0),
-178:('[#33&!H0]', 0),
-179:('[#33]~[#33]', 0),
-180:('[#6](~Br)(~[#6])', 0),
-181:('[#6](~Br)(~[#6])(~[#6])', 0),
-182:('[#6&!H0]~[Br]', 0),
-183:('[#6](~[Br])(:[c])', 0),
-184:('[#6](~[Br])(:[n])', 0),
-185:('[#6](~[#6])(~[#6])', 0),
-186:('[#6](~[#6])(~[#6])(~[#6])', 0),
-187:('[#6](~[#6])(~[#6])(~[#6])(~[#6])', 0),
-188:('[#6H1](~[#6])(~[#6])(~[#6])', 0),
-189:('[#6](~[#6])(~[#6])(~[#6])(~[#7])', 0),
-190:('[#6](~[#6])(~[#6])(~[#6])(~[#8])', 0),
-191:('[#6H1](~[#6])(~[#6])(~[#7])', 0),
-192:('[#6H1](~[#6])(~[#6])(~[#8])', 0),
-193:('[#6](~[#6])(~[#6])(~[#7])', 0),
-194:('[#6](~[#6])(~[#6])(~[#8])', 0),
-195:('[#6](~[#6])(~[Cl])', 0),
-196:('[#6&!H0](~[#6])(~[Cl])', 0),
-197:('[#6H,#6H2,#6H3,#6H4]~[#6]', 0),
-198:('[#6&!H0](~[#6])(~[#7])', 0),
-199:('[#6&!H0](~[#6])(~[#8])', 0),
-200:('[#6H1](~[#6])(~[#8])(~[#8])', 0),
-201:('[#6&!H0](~[#6])(~[#15])', 0),
-202:('[#6&!H0](~[#6])(~[#16])', 0),
-203:('[#6](~[#6])(~[I])', 0),
-204:('[#6](~[#6])(~[#7])', 0),
-205:('[#6](~[#6])(~[#8])', 0),
-206:('[#6](~[#6])(~[#16])', 0),
-207:('[#6](~[#6])(~[#14])', 0),
-208:('[#6](~[#6])(:c)', 0),
-209:('[#6](~[#6])(:c)(:c)', 0),
-210:('[#6](~[#6])(:c)(:n)', 0),
-211:('[#6](~[#6])(:n)', 0),
-212:('[#6](~[#6])(:n)(:n)', 0),
-213:('[#6](~[Cl])(~[Cl])', 0),
-214:('[#6&!H0](~[Cl])', 0),
-215:('[#6](~[Cl])(:c)', 0),
-216:('[#6](~[F])(~[F])', 0),
-217:('[#6](~[F])(:c)', 0),
-218:('[#6&!H0](~[#7])', 0),
-219:('[#6&!H0](~[#8])', 0),
-220:('[#6&!H0](~[#8])(~[#8])', 0),
-221:('[#6&!H0](~[#16])', 0),
-222:('[#6&!H0](~[#14])', 0),
-223:('[#6&!H0]:c', 0),
-224:('[#6&!H0](:c)(:c)', 0),
-225:('[#6&!H0](:c)(:n)', 0),
-226:('[#6&!H0](:n)', 0),
-227:('[#6H3]', 0),
-228:('[#6](~[#7])(~[#7])', 0),
-229:('[#6](~[#7])(:c)', 0),
-230:('[#6](~[#7])(:c)(:c)', 0),
-231:('[#6](~[#7])(:c)(:n)', 0),
-232:('[#6](~[#7])(:n)', 0),
-233:('[#6](~[#8])(~[#8])', 0),
-234:('[#6](~[#8])(:c)', 0),
-235:('[#6](~[#8])(:c)(:c)', 0),
-236:('[#6](~[#16])(:c)', 0),
-237:('[#6](:c)(:c)', 0),
-238:('[#6](:c)(:c)(:c)', 0),
-239:('[#6](:c)(:c)(:n)', 0),
-240:('[#6](:c)(:n)', 0),
-241:('[#6](:c)(:n)(:n)', 0),
-242:('[#6](:n)(:n)', 0),
-243:('[#7](~[#6])(~[#6])', 0),
-244:('[#7](~[#6])(~[#6])(~[#6])', 0),
-245:('[#7&!H0](~[#6])(~[#6])', 0),
-246:('[#7&!H0](~[#6])', 0),
-247:('[#7&!H0](~[#6])(~[#7])', 0),
-248:('[#7](~[#6])(~[#8])', 0),
-249:('[#7](~[#6])(:c)', 0),
-250:('[#7](~[#6])(:c)(:c)', 0),
-251:('[#7&!H0](~[#7])', 0),
-252:('[#7&!H0](:c)', 0),
-253:('[#7&!H0](:c)(:c)', 0),
-254:('[#7](~[#8])(~[#8])', 0),
-255:('[#7](~[#8])(:o)', 0),
-256:('[#7](:c)(:c)', 0),
-257:('[#7](:c)(:c)(:c)', 0),
-258:('[#8](~[#6])(~[#6])', 0),
-259:('[#8&!H0](~[#6])', 0),
-260:('[#8](~[#6])(~[#15])', 0),
-261:('[#8&!H0](~[#16])', 0),
-262:('[#8](:c)(:c)', 0),
-263:('[#15](~[#6])(~[#6])', 0),
-264:('[#15](~[#8])(~[#8])', 0),
-265:('[#16](~[#6])(~[#6])', 0),
-266:('[#16&!H0](~[#6])', 0),
-267:('[#16](~[#6])(~[#8])', 0),
-268:('[#14](~[#6])(~[#6])', 0),
-269:('[#6]=,:[#6]', 0),
-270:('[#6]#[#6]', 0),
-271:('[#6]=,:[#7]', 0),
-272:('[#6]#[#7]', 0),
-273:('[#6]=,:[#8]', 0),
-274:('[#6]=,:[#16]', 0),
-275:('[#7]=,:[#7]', 0),
-276:('[#7]=,:[#8]', 0),
-277:('[#7]=,:[#15]', 0),
-278:('[#15]=,:[#8]', 0),
-279:('[#15]=,:[#15]', 0),
-280:('[#6](#[#6])(-,:[#6])', 0),
-281:('[#6&!H0](#[#6])', 0),
-282:('[#6](#[#7])(-,:[#6])', 0),
-283:('[#6](-,:[#6])(-,:[#6])(=,:[#6])', 0),
-284:('[#6](-,:[#6])(-,:[#6])(=,:[#7])', 0),
-285:('[#6](-,:[#6])(-,:[#6])(=,:[#8])', 0),
-286:('[#6](-,:[#6])([Cl])(=,:[#8])', 0),
-287:('[#6&!H0](-,:[#6])(=,:[#6])', 0),
-288:('[#6&!H0](-,:[#6])(=,:[#7])', 0),
-289:('[#6&!H0](-,:[#6])(=,:[#8])', 0),
-290:('[#6](-,:[#6])(-,:[#7])(=,:[#6])', 0),
-291:('[#6](-,:[#6])(-,:[#7])(=,:[#7])', 0),
-292:('[#6](-,:[#6])(-,:[#7])(=,:[#8])', 0),
-293:('[#6](-,:[#6])(-,:[#8])(=,:[#8])', 0),
-294:('[#6](-,:[#6])(=,:[#6])', 0),
-295:('[#6](-,:[#6])(=,:[#7])', 0),
-296:('[#6](-,:[#6])(=,:[#8])', 0),
-297:('[#6]([Cl])(=,:[#8])', 0),
-298:('[#6&!H0](-,:[#7])(=,:[#6])', 0),
-299:('[#6&!H0](=,:[#6])', 0),
-300:('[#6&!H0](=,:[#7])', 0),
-301:('[#6&!H0](=,:[#8])', 0),
-302:('[#6](-,:[#7])(=,:[#6])', 0),
-303:('[#6](-,:[#7])(=,:[#7])', 0),
-304:('[#6](-,:[#7])(=,:[#8])', 0),
-305:('[#6](-,:[#8])(=,:[#8])', 0),
-306:('[#7](-,:[#6])(=,:[#6])', 0),
-307:('[#7](-,:[#6])(=,:[#8])', 0),
-308:('[#7](-,:[#8])(=,:[#8])', 0),
-309:('[#15](-,:[#8])(=,:[#8])', 0),
-310:('[#16](-,:[#6])(=,:[#8])', 0),
-311:('[#16](-,:[#8])(=,:[#8])', 0),
-312:('[#16](=,:[#8])(=,:[#8])', 0),
-313:('[#6]-,:[#6]-,:[#6]#[#6]', 0),
-314:('[#8]-,:[#6]-,:[#6]=,:[#7]', 0),
-315:('[#8]-,:[#6]-,:[#6]=,:[#8]', 0),
-316:('[#7]:[#6]-,:[#16&!H0]', 0),
-317:('[#7]-,:[#6]-,:[#6]=,:[#6]', 0),
-318:('[#8]=,:[#16]-,:[#6]-,:[#6]', 0),
-319:('[#7]#[#6]-,:[#6]=,:[#6]', 0),
-320:('[#6]=,:[#7]-,:[#7]-,:[#6]', 0),
-321:('[#8]=,:[#16]-,:[#6]-,:[#7]', 0),
-322:('[#16]-,:[#16]-,:[#6]:[#6]', 0),
-323:('[#6]:[#6]-,:[#6]=,:[#6]', 0),
-324:('[#16]:[#6]:[#6]:[#6]', 0),
-325:('[#6]:[#7]:[#6]-,:[#6]', 0),
-326:('[#16]-,:[#6]:[#7]:[#6]', 0),
-327:('[#16]:[#6]:[#6]:[#7]', 0),
-328:('[#16]-,:[#6]=,:[#7]-,:[#6]', 0),
-329:('[#6]-,:[#8]-,:[#6]=,:[#6]', 0),
-330:('[#7]-,:[#7]-,:[#6]:[#6]', 0),
-331:('[#16]-,:[#6]=,:[#7&!H0]', 0),
-332:('[#16]-,:[#6]-,:[#16]-,:[#6]', 0),
-333:('[#6]:[#16]:[#6]-,:[#6]', 0),
-334:('[#8]-,:[#16]-,:[#6]:[#6]', 0),
-335:('[#6]:[#7]-,:[#6]:[#6]', 0),
-336:('[#7]-,:[#16]-,:[#6]:[#6]', 0),
-337:('[#7]-,:[#6]:[#7]:[#6]', 0),
-338:('[#7]:[#6]:[#6]:[#7]', 0),
-339:('[#7]-,:[#6]:[#7]:[#7]', 0),
-340:('[#7]-,:[#6]=,:[#7]-,:[#6]', 0),
-341:('[#7]-,:[#6]=,:[#7&!H0]', 0),
-342:('[#7]-,:[#6]-,:[#16]-,:[#6]', 0),
-343:('[#6]-,:[#6]-,:[#6]=,:[#6]', 0),
-344:('[#6]-,:[#7]:[#6&!H0]', 0),
-345:('[#7]-,:[#6]:[#8]:[#6]', 0),
-346:('[#8]=,:[#6]-,:[#6]:[#6]', 0),
-347:('[#8]=,:[#6]-,:[#6]:[#7]', 0),
-348:('[#6]-,:[#7]-,:[#6]:[#6]', 0),
-349:('[#7]:[#7]-,:[#6&!H0]', 0),
-350:('[#8]-,:[#6]:[#6]:[#7]', 0),
-351:('[#8]-,:[#6]=,:[#6]-,:[#6]', 0),
-352:('[#7]-,:[#6]:[#6]:[#7]', 0),
-353:('[#6]-,:[#16]-,:[#6]:[#6]', 0),
-354:('[Cl]-,:[#6]:[#6]-,:[#6]', 0),
-355:('[#7]-,:[#6]=,:[#6&!H0]', 0),
-356:('[Cl]-,:[#6]:[#6&!H0]', 0),
-357:('[#7]:[#6]:[#7]-,:[#6]', 0),
-358:('[Cl]-,:[#6]:[#6]-,:[#8]', 0),
-359:('[#6]-,:[#6]:[#7]:[#6]', 0),
-360:('[#6]-,:[#6]-,:[#16]-,:[#6]', 0),
-361:('[#16]=,:[#6]-,:[#7]-,:[#6]', 0),
-362:('[Br]-,:[#6]:[#6]-,:[#6]', 0),
-363:('[#7&!H0]-,:[#7&!H0]', 0),
-364:('[#16]=,:[#6]-,:[#7&!H0]', 0),
-365:('[#6]-,:[#33]-[#8&!H0]', 0),
-366:('[#16]:[#6]:[#6&!H0]', 0),
-367:('[#8]-,:[#7]-,:[#6]-,:[#6]', 0),
-368:('[#7]-,:[#7]-,:[#6]-,:[#6]', 0),
-369:('[#6H,#6H2,#6H3]=,:[#6H,#6H2,#6H3]', 0),
-370:('[#7]-,:[#7]-,:[#6]-,:[#7]', 0),
-371:('[#8]=,:[#6]-,:[#7]-,:[#7]', 0),
-372:('[#7]=,:[#6]-,:[#7]-,:[#6]', 0),
-373:('[#6]=,:[#6]-,:[#6]:[#6]', 0),
-374:('[#6]:[#7]-,:[#6&!H0]', 0),
-375:('[#6]-,:[#7]-,:[#7&!H0]', 0),
-376:('[#7]:[#6]:[#6]-,:[#6]', 0),
-377:('[#6]-,:[#6]=,:[#6]-,:[#6]', 0),
-378:('[#33]-,:[#6]:[#6&!H0]', 0),
-379:('[Cl]-,:[#6]:[#6]-,:[Cl]', 0),
-380:('[#6]:[#6]:[#7&!H0]', 0),
-381:('[#7&!H0]-,:[#6&!H0]', 0),
-382:('[Cl]-,:[#6]-,:[#6]-,:[Cl]', 0),
-383:('[#7]:[#6]-,:[#6]:[#6]', 0),
-384:('[#16]-,:[#6]:[#6]-,:[#6]', 0),
-385:('[#16]-,:[#6]:[#6&!H0]', 0),
-386:('[#16]-,:[#6]:[#6]-,:[#7]', 0),
-387:('[#16]-,:[#6]:[#6]-,:[#8]', 0),
-388:('[#8]=,:[#6]-,:[#6]-,:[#6]', 0),
-389:('[#8]=,:[#6]-,:[#6]-,:[#7]', 0),
-390:('[#8]=,:[#6]-,:[#6]-,:[#8]', 0),
-391:('[#7]=,:[#6]-,:[#6]-,:[#6]', 0),
-392:('[#7]=,:[#6]-,:[#6&!H0]', 0),
-393:('[#6]-,:[#7]-,:[#6&!H0]', 0),
-394:('[#8]-,:[#6]:[#6]-,:[#6]', 0),
-395:('[#8]-,:[#6]:[#6&!H0]', 0),
-396:('[#8]-,:[#6]:[#6]-,:[#7]', 0),
-397:('[#8]-,:[#6]:[#6]-,:[#8]', 0),
-398:('[#7]-,:[#6]:[#6]-,:[#6]', 0),
-399:('[#7]-,:[#6]:[#6&!H0]', 0),
-400:('[#7]-,:[#6]:[#6]-,:[#7]', 0),
-401:('[#8]-,:[#6]-,:[#6]:[#6]', 0),
-402:('[#7]-,:[#6]-,:[#6]:[#6]', 0),
-403:('[Cl]-,:[#6]-,:[#6]-,:[#6]', 0),
-404:('[Cl]-,:[#6]-,:[#6]-,:[#8]', 0),
-405:('[#6]:[#6]-,:[#6]:[#6]', 0),
-406:('[#8]=,:[#6]-,:[#6]=,:[#6]', 0),
-407:('[Br]-,:[#6]-,:[#6]-,:[#6]', 0),
-408:('[#7]=,:[#6]-,:[#6]=,:[#6]', 0),
-409:('[#6]=,:[#6]-,:[#6]-,:[#6]', 0),
-410:('[#7]:[#6]-,:[#8&!H0]', 0),
-411:('[#8]=,:[#7]-,:c:c', 0),
-412:('[#8]-,:[#6]-,:[#7&!H0]', 0),
-413:('[#7]-,:[#6]-,:[#7]-,:[#6]', 0),
-414:('[Cl]-,:[#6]-,:[#6]=,:[#8]', 0),
-415:('[Br]-,:[#6]-,:[#6]=,:[#8]', 0),
-416:('[#8]-,:[#6]-,:[#8]-,:[#6]', 0),
-417:('[#6]=,:[#6]-,:[#6]=,:[#6]', 0),
-418:('[#6]:[#6]-,:[#8]-,:[#6]', 0),
-419:('[#8]-,:[#6]-,:[#6]-,:[#7]', 0),
-420:('[#8]-,:[#6]-,:[#6]-,:[#8]', 0),
-421:('N#[#6]-,:[#6]-,:[#6]', 0),
-422:('[#7]-,:[#6]-,:[#6]-,:[#7]', 0),
-423:('[#6]:[#6]-,:[#6]-,:[#6]', 0),
-424:('[#6&!H0]-,:[#8&!H0]', 0),
-425:('n:c:n:c', 0),
-426:('[#8]-,:[#6]-,:[#6]=,:[#6]', 0),
-427:('[#8]-,:[#6]-,:[#6]:[#6]-,:[#6]', 0),
-428:('[#8]-,:[#6]-,:[#6]:[#6]-,:[#8]', 0),
-429:('[#7]=,:[#6]-,:[#6]:[#6&!H0]', 0),
-430:('c:c-,:[#7]-,:c:c', 0),
-431:('[#6]-,:[#6]:[#6]-,:c:c', 0),
-432:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-433:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#7]', 0),
-434:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#8]', 0),
-435:('[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-436:('[Cl]-,:[#6]:[#6]-,:[#8]-,:[#6]', 0),
-437:('c:c-,:[#6]=,:[#6]-,:[#6]', 0),
-438:('[#6]-,:[#6]:[#6]-,:[#7]-,:[#6]', 0),
-439:('[#6]-,:[#16]-,:[#6]-,:[#6]-,:[#6]', 0),
-440:('[#7]-,:[#6]:[#6]-,:[#8&!H0]', 0),
-441:('[#8]=,:[#6]-,:[#6]-,:[#6]=,:[#8]', 0),
-442:('[#6]-,:[#6]:[#6]-,:[#8]-,:[#6]', 0),
-443:('[#6]-,:[#6]:[#6]-,:[#8&!H0]', 0),
-444:('[Cl]-,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-445:('[#7]-,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-446:('[#7]-,:[#6]-,:[#6]-,:[#6]-,:[#7]', 0),
-447:('[#6]-,:[#8]-,:[#6]-,:[#6]=,:[#6]', 0),
-448:('c:c-,:[#6]-,:[#6]-,:[#6]', 0),
-449:('[#7]=,:[#6]-,:[#7]-,:[#6]-,:[#6]', 0),
-450:('[#8]=,:[#6]-,:[#6]-,:c:c', 0),
-451:('[Cl]-,:[#6]:[#6]:[#6]-,:[#6]', 0),
-452:('[#6H,#6H2,#6H3]-,:[#6]=,:[#6H,#6H2,#6H3]', 0),
-453:('[#7]-,:[#6]:[#6]:[#6]-,:[#6]', 0),
-454:('[#7]-,:[#6]:[#6]:[#6]-,:[#7]', 0),
-455:('[#8]=,:[#6]-,:[#6]-,:[#7]-,:[#6]', 0),
-456:('[#6]-,:c:c:[#6]-,:[#6]', 0),
-457:('[#6]-,:[#8]-,:[#6]-,:[#6]:c', 0),
-458:('[#8]=,:[#6]-,:[#6]-,:[#8]-,:[#6]', 0),
-459:('[#8]-,:[#6]:[#6]-,:[#6]-,:[#6]', 0),
-460:('[#7]-,:[#6]-,:[#6]-,:[#6]:c', 0),
-461:('[#6]-,:[#6]-,:[#6]-,:[#6]:c', 0),
-462:('[Cl]-,:[#6]-,:[#6]-,:[#7]-,:[#6]', 0),
-463:('[#6]-,:[#8]-,:[#6]-,:[#8]-,:[#6]', 0),
-464:('[#7]-,:[#6]-,:[#6]-,:[#7]-,:[#6]', 0),
-465:('[#7]-,:[#6]-,:[#8]-,:[#6]-,:[#6]', 0),
-466:('[#6]-,:[#7]-,:[#6]-,:[#6]-,:[#6]', 0),
-467:('[#6]-,:[#6]-,:[#8]-,:[#6]-,:[#6]', 0),
-468:('[#7]-,:[#6]-,:[#6]-,:[#8]-,:[#6]', 0),
-469:('c:c:n:n:c', 0),
-470:('[#6]-,:[#6]-,:[#6]-,:[#8&!H0]', 0),
-471:('c:[#6]-,:[#6]-,:[#6]:c', 0),
-472:('[#8]-,:[#6]-,:[#6]=,:[#6]-,:[#6]', 0),
-473:('c:c-,:[#8]-,:[#6]-,:[#6]', 0),
-474:('[#7]-,:[#6]:c:c:n', 0),
-475:('[#8]=,:[#6]-,:[#8]-,:[#6]:c', 0),
-476:('[#8]=,:[#6]-,:[#6]:[#6]-,:[#6]', 0),
-477:('[#8]=,:[#6]-,:[#6]:[#6]-,:[#7]', 0),
-478:('[#8]=,:[#6]-,:[#6]:[#6]-,:[#8]', 0),
-479:('[#6]-,:[#8]-,:[#6]:[#6]-,:[#6]', 0),
-480:('[#8]=,:[#33]-,:[#6]:c:c', 0),
-481:('[#6]-,:[#7]-,:[#6]-,:[#6]:c', 0),
-482:('[#16]-,:[#6]:c:c-,:[#7]', 0),
-483:('[#8]-,:[#6]:[#6]-,:[#8]-,:[#6]', 0),
-484:('[#8]-,:[#6]:[#6]-,:[#8&!H0]', 0),
-485:('[#6]-,:[#6]-,:[#8]-,:[#6]:c', 0),
-486:('[#7]-,:[#6]-,:[#6]:[#6]-,:[#6]', 0),
-487:('[#6]-,:[#6]-,:[#6]:[#6]-,:[#6]', 0),
-488:('[#7]-,:[#7]-,:[#6]-,:[#7&!H0]', 0),
-489:('[#6]-,:[#7]-,:[#6]-,:[#7]-,:[#6]', 0),
-490:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-491:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#7]', 0),
-492:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#8]', 0),
-493:('[#6]=,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-494:('[#8]-,:[#6]-,:[#6]-,:[#6]=,:[#6]', 0),
-495:('[#8]-,:[#6]-,:[#6]-,:[#6]=,:[#8]', 0),
-496:('[#6&!H0]-,:[#6]-,:[#7&!H0]', 0),
-497:('[#6]-,:[#6]=,:[#7]-,:[#7]-,:[#6]', 0),
-498:('[#8]=,:[#6]-,:[#7]-,:[#6]-,:[#6]', 0),
-499:('[#8]=,:[#6]-,:[#7]-,:[#6&!H0]', 0),
-500:('[#8]=,:[#6]-,:[#7]-,:[#6]-,:[#7]', 0),
-501:('[#8]=,:[#7]-,:[#6]:[#6]-,:[#7]', 0),
-502:('[#8]=,:[#7]-,:c:c-,:[#8]', 0),
-503:('[#8]=,:[#6]-,:[#7]-,:[#6]=,:[#8]', 0),
-504:('[#8]-,:[#6]:[#6]:[#6]-,:[#6]', 0),
-505:('[#8]-,:[#6]:[#6]:[#6]-,:[#7]', 0),
-506:('[#8]-,:[#6]:[#6]:[#6]-,:[#8]', 0),
-507:('[#7]-,:[#6]-,:[#7]-,:[#6]-,:[#6]', 0),
-508:('[#8]-,:[#6]-,:[#6]-,:[#6]:c', 0),
-509:('[#6]-,:[#6]-,:[#7]-,:[#6]-,:[#6]', 0),
-510:('[#6]-,:[#7]-,:[#6]:[#6]-,:[#6]', 0),
-511:('[#6]-,:[#6]-,:[#16]-,:[#6]-,:[#6]', 0),
-512:('[#8]-,:[#6]-,:[#6]-,:[#7]-,:[#6]', 0),
-513:('[#6]-,:[#6]=,:[#6]-,:[#6]-,:[#6]', 0),
-514:('[#8]-,:[#6]-,:[#8]-,:[#6]-,:[#6]', 0),
-515:('[#8]-,:[#6]-,:[#6]-,:[#8]-,:[#6]', 0),
-516:('[#8]-,:[#6]-,:[#6]-,:[#8&!H0]', 0),
-517:('[#6]-,:[#6]=,:[#6]-,:[#6]=,:[#6]', 0),
-518:('[#7]-,:[#6]:[#6]-,:[#6]-,:[#6]', 0),
-519:('[#6]=,:[#6]-,:[#6]-,:[#8]-,:[#6]', 0),
-520:('[#6]=,:[#6]-,:[#6]-,:[#8&!H0]', 0),
-521:('[#6]-,:[#6]:[#6]-,:[#6]-,:[#6]', 0),
-522:('[Cl]-,:[#6]:[#6]-,:[#6]=,:[#8]', 0),
-523:('[Br]-,:[#6]:c:c-,:[#6]', 0),
-524:('[#8]=,:[#6]-,:[#6]=,:[#6]-,:[#6]', 0),
-525:('[#8]=,:[#6]-,:[#6]=,:[#6&!H0]', 0),
-526:('[#8]=,:[#6]-,:[#6]=,:[#6]-,:[#7]', 0),
-527:('[#7]-,:[#6]-,:[#7]-,:[#6]:c', 0),
-528:('[Br]-,:[#6]-,:[#6]-,:[#6]:c', 0),
-529:('[#7]#[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-530:('[#6]-,:[#6]=,:[#6]-,:[#6]:c', 0),
-531:('[#6]-,:[#6]-,:[#6]=,:[#6]-,:[#6]', 0),
-532:('[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-533:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-534:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#8]', 0),
-535:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#7]', 0),
-536:('[#7]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-537:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-538:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#7]', 0),
-539:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#8]', 0),
-540:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#6]=,:[#8]', 0),
-541:('[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-542:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-543:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#8]', 0),
-544:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#7]', 0),
-545:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-546:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#8]', 0),
-547:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]=,:[#8]', 0),
-548:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#7]', 0),
-549:('[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-550:('[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6](-,:[#6])-,:[#6]', 0),
-551:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-552:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6](-,:[#6])-,:[#6]', 0),
-553:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#8]-,:[#6]', 0),
-554:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6](-,:[#8])-,:[#6]', 0),
-555:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#7]-,:[#6]', 0),
-556:('[#8]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6](-,:[#7])-,:[#6]', 0),
-557:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6]', 0),
-558:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6](-,:[#8])-,:[#6]', 0),
-559:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6](=,:[#8])-,:[#6]', 0),
-560:('[#8]=,:[#6]-,:[#6]-,:[#6]-,:[#6]-,:[#6](-,:[#7])-,:[#6]', 0),
-561:('[#6]-,:[#6](-,:[#6])-,:[#6]-,:[#6]', 0),
-562:('[#6]-,:[#6](-,:[#6])-,:[#6]-,:[#6]-,:[#6]', 0),
-563:('[#6]-,:[#6]-,:[#6](-,:[#6])-,:[#6]-,:[#6]', 0),
-564:('[#6]-,:[#6](-,:[#6])(-,:[#6])-,:[#6]-,:[#6]', 0),
-565:('[#6]-,:[#6](-,:[#6])-,:[#6](-,:[#6])-,:[#6]', 0),
-566:('[#6]c1ccc([#6])cc1', 0),
-567:('[#6]c1ccc([#8])cc1', 0),
-568:('[#6]c1ccc([#16])cc1', 0),
-569:('[#6]c1ccc([#7])cc1', 0),
-570:('[#6]c1ccc(Cl)cc1', 0),
-571:('[#6]c1ccc(Br)cc1', 0),
-572:('[#8]c1ccc([#8])cc1', 0),
-573:('[#8]c1ccc([#16])cc1', 0),
-574:('[#8]c1ccc([#7])cc1', 0),
-575:('[#8]c1ccc(Cl)cc1', 0),
-576:('[#8]c1ccc(Br)cc1', 0),
-577:('[#16]c1ccc([#16])cc1', 0),
-578:('[#16]c1ccc([#7])cc1', 0),
-579:('[#16]c1ccc(Cl)cc1', 0),
-580:('[#16]c1ccc(Br)cc1', 0),
-581:('[#7]c1ccc([#7])cc1', 0),
-582:('[#7]c1ccc(Cl)cc1', 0),
-583:('[#7]c1ccc(Br)cc1', 0),
-584:('Clc1ccc(Cl)cc1', 0),
-585:('Clc1ccc(Br)cc1', 0),
-586:('Brc1ccc(Br)cc1', 0),
-587:('[#6]c1cc([#6])ccc1', 0),
-588:('[#6]c1cc([#8])ccc1', 0),
-589:('[#6]c1cc([#16])ccc1', 0),
-590:('[#6]c1cc([#7])ccc1', 0),
-591:('[#6]c1cc(Cl)ccc1', 0),
-592:('[#6]c1cc(Br)ccc1', 0),
-593:('[#8]c1cc([#8])ccc1', 0),
-594:('[#8]c1cc([#16])ccc1', 0),
-595:('[#8]c1cc([#7])ccc1', 0),
-596:('[#8]c1cc(Cl)ccc1', 0),
-597:('[#8]c1cc(Br)ccc1', 0),
-598:('[#16]c1cc([#16])ccc1', 0),
-599:('[#16]c1cc([#7])ccc1', 0),
-600:('[#16]c1cc(Cl)ccc1', 0),
-601:('[#16]c1cc(Br)ccc1', 0),
-602:('[#7]c1cc([#7])ccc1', 0),
-603:('[#7]c1cc(Cl)ccc1', 0),
-604:('[#7]c1cc(Br)ccc1', 0),
-605:('Clc1cc(Cl)ccc1', 0),
-606:('Clc1cc(Br)ccc1', 0),
-607:('Brc1cc(Br)ccc1', 0),
-608:('[#6]c1c([#6])cccc1', 0),
-609:('[#6]c1c([#8])cccc1', 0),
-610:('[#6]c1c([#16])cccc1', 0),
-611:('[#6]c1c([#7])cccc1', 0),
-612:('[#6]c1c(Cl)cccc1', 0),
-613:('[#6]c1c(Br)cccc1', 0),
-614:('[#8]c1c([#8])cccc1', 0),
-615:('[#8]c1c([#16])cccc1', 0),
-616:('[#8]c1c([#7])cccc1', 0),
-617:('[#8]c1c(Cl)cccc1', 0),
-618:('[#8]c1c(Br)cccc1', 0),
-619:('[#16]c1c([#16])cccc1', 0),
-620:('[#16]c1c([#7])cccc1', 0),
-621:('[#16]c1c(Cl)cccc1', 0),
-622:('[#16]c1c(Br)cccc1', 0),
-623:('[#7]c1c([#7])cccc1', 0),
-624:('[#7]c1c(Cl)cccc1', 0),
-625:('[#7]c1c(Br)cccc1', 0),
-626:('Clc1c(Cl)cccc1', 0),
-627:('Clc1c(Br)cccc1', 0),
-628:('Brc1c(Br)cccc1', 0),
-629:('[#6][#6]1[#6][#6][#6]([#6])[#6][#6]1', 0),
-630:('[#6][#6]1[#6][#6][#6]([#8])[#6][#6]1', 0),
-631:('[#6][#6]1[#6][#6][#6]([#16])[#6][#6]1', 0),
-632:('[#6][#6]1[#6][#6][#6]([#7])[#6][#6]1', 0),
-633:('[#6][#6]1[#6][#6][#6](Cl)[#6][#6]1', 0),
-634:('[#6][#6]1[#6][#6][#6](Br)[#6][#6]1', 0),
-635:('[#8][#6]1[#6][#6][#6]([#8])[#6][#6]1', 0),
-636:('[#8][#6]1[#6][#6][#6]([#16])[#6][#6]1', 0),
-637:('[#8][#6]1[#6][#6][#6]([#7])[#6][#6]1', 0),
-638:('[#8][#6]1[#6][#6][#6](Cl)[#6][#6]1', 0),
-639:('[#8][#6]1[#6][#6][#6](Br)[#6][#6]1', 0),
-640:('[#16][#6]1[#6][#6][#6]([#16])[#6][#6]1', 0),
-641:('[#16][#6]1[#6][#6][#6]([#7])[#6][#6]1', 0),
-642:('[#16][#6]1[#6][#6][#6](Cl)[#6][#6]1', 0),
-643:('[#16][#6]1[#6][#6][#6](Br)[#6][#6]1', 0),
-644:('[#7][#6]1[#6][#6][#6]([#7])[#6][#6]1', 0),
-645:('[#7][#6]1[#6][#6][#6](Cl)[#6][#6]1', 0),
-646:('[#7][#6]1[#6][#6][#6](Br)[#6][#6]1', 0),
-647:('Cl[#6]1[#6][#6][#6](Cl)[#6][#6]1', 0),
-648:('Cl[#6]1[#6][#6][#6](Br)[#6][#6]1', 0),
-649:('Br[#6]1[#6][#6][#6](Br)[#6][#6]1', 0),
-650:('[#6][#6]1[#6][#6]([#6])[#6][#6][#6]1', 0),
-651:('[#6][#6]1[#6][#6]([#8])[#6][#6][#6]1', 0),
-652:('[#6][#6]1[#6][#6]([#16])[#6][#6][#6]1', 0),
-653:('[#6][#6]1[#6][#6]([#7])[#6][#6][#6]1', 0),
-654:('[#6][#6]1[#6][#6](Cl)[#6][#6][#6]1', 0),
-655:('[#6][#6]1[#6][#6](Br)[#6][#6][#6]1', 0),
-656:('[#8][#6]1[#6][#6]([#8])[#6][#6][#6]1', 0),
-657:('[#8][#6]1[#6][#6]([#16])[#6][#6][#6]1', 0),
-658:('[#8][#6]1[#6][#6]([#7])[#6][#6][#6]1', 0),
-659:('[#8][#6]1[#6][#6](Cl)[#6][#6][#6]1', 0),
-660:('[#8][#6]1[#6][#6](Br)[#6][#6][#6]1', 0),
-661:('[#16][#6]1[#6][#6]([#16])[#6][#6][#6]1', 0),
-662:('[#16][#6]1[#6][#6]([#7])[#6][#6][#6]1', 0),
-663:('[#16][#6]1[#6][#6](Cl)[#6][#6][#6]1', 0),
-664:('[#16][#6]1[#6][#6](Br)[#6][#6][#6]1', 0),
-665:('[#7][#6]1[#6][#6]([#7])[#6][#6][#6]1', 0),
-666:('[#7][#6]1[#6][#6](Cl)[#6][#6][#6]1', 0),
-667:('[#7][#6]1[#6][#6](Br)[#6][#6][#6]1', 0),
-668:('Cl[#6]1[#6][#6](Cl)[#6][#6][#6]1', 0),
-669:('Cl[#6]1[#6][#6](Br)[#6][#6][#6]1', 0),
-670:('Br[#6]1[#6][#6](Br)[#6][#6][#6]1', 0),
-671:('[#6][#6]1[#6]([#6])[#6][#6][#6][#6]1', 0),
-672:('[#6][#6]1[#6]([#8])[#6][#6][#6][#6]1', 0),
-673:('[#6][#6]1[#6]([#16])[#6][#6][#6][#6]1', 0),
-674:('[#6][#6]1[#6]([#7])[#6][#6][#6][#6]1', 0),
-675:('[#6][#6]1[#6](Cl)[#6][#6][#6][#6]1', 0),
-676:('[#6][#6]1[#6](Br)[#6][#6][#6][#6]1', 0),
-677:('[#8][#6]1[#6]([#8])[#6][#6][#6][#6]1', 0),
-678:('[#8][#6]1[#6]([#16])[#6][#6][#6][#6]1', 0),
-679:('[#8][#6]1[#6]([#7])[#6][#6][#6][#6]1', 0),
-680:('[#8][#6]1[#6](Cl)[#6][#6][#6][#6]1', 0),
-681:('[#8][#6]1[#6](Br)[#6][#6][#6][#6]1', 0),
-682:('[#16][#6]1[#6]([#16])[#6][#6][#6][#6]1', 0),
-683:('[#16][#6]1[#6]([#7])[#6][#6][#6][#6]1', 0),
-684:('[#16][#6]1[#6](Cl)[#6][#6][#6][#6]1', 0),
-685:('[#16][#6]1[#6](Br)[#6][#6][#6][#6]1', 0),
-686:('[#7][#6]1[#6]([#7])[#6][#6][#6][#6]1', 0),
-687:('[#7][#6]1[#6](Cl)[#6][#6][#6][#6]1', 0),
-688:('[#7][#6]1[#6](Br)[#6][#6][#6][#6]1', 0),
-689:('Cl[#6]1[#6](Cl)[#6][#6][#6][#6]1', 0),
-690:('Cl[#6]1[#6](Br)[#6][#6][#6][#6]1', 0),
-691:('Br[#6]1[#6](Br)[#6][#6][#6][#6]1', 0),
-692:('[#6][#6]1[#6][#6]([#6])[#6][#6]1', 0),
-693:('[#6][#6]1[#6][#6]([#8])[#6][#6]1', 0),
-694:('[#6][#6]1[#6][#6]([#16])[#6][#6]1', 0),
-695:('[#6][#6]1[#6][#6]([#7])[#6][#6]1', 0),
-696:('[#6][#6]1[#6][#6](Cl)[#6][#6]1', 0),
-697:('[#6][#6]1[#6][#6](Br)[#6][#6]1', 0),
-698:('[#8][#6]1[#6][#6]([#8])[#6][#6]1', 0),
-699:('[#8][#6]1[#6][#6]([#16])[#6][#6]1', 0),
-700:('[#8][#6]1[#6][#6]([#7])[#6][#6]1', 0),
-701:('[#8][#6]1[#6][#6](Cl)[#6][#6]1', 0),
-702:('[#8][#6]1[#6][#6](Br)[#6][#6]1', 0),
-703:('[#16][#6]1[#6][#6]([#16])[#6][#6]1', 0),
-704:('[#16][#6]1[#6][#6]([#7])[#6][#6]1', 0),
-705:('[#16][#6]1[#6][#6](Cl)[#6][#6]1', 0),
-706:('[#16][#6]1[#6][#6](Br)[#6][#6]1', 0),
-707:('[#7][#6]1[#6][#6]([#7])[#6][#6]1', 0),
-708:('[#7][#6]1[#6][#6](Cl)[#6][#6]1', 0),
-709:('[#7][#6]1[#6][#6](Br)[#6][#6]1', 0),
-710:('Cl[#6]1[#6][#6](Cl)[#6][#6]1', 0),
-711:('Cl[#6]1[#6][#6](Br)[#6][#6]1', 0),
-712:('Br[#6]1[#6][#6](Br)[#6][#6]1', 0),
-713:('[#6][#6]1[#6]([#6])[#6][#6][#6]1', 0),
-714:('[#6][#6]1[#6]([#8])[#6][#6][#6]1', 0),
-715:('[#6][#6]1[#6]([#16])[#6][#6][#6]1', 0),
-716:('[#6][#6]1[#6]([#7])[#6][#6][#6]1', 0),
-717:('[#6][#6]1[#6](Cl)[#6][#6][#6]1', 0),
-718:('[#6][#6]1[#6](Br)[#6][#6][#6]1', 0),
-719:('[#8][#6]1[#6]([#8])[#6][#6][#6]1', 0),
-720:('[#8][#6]1[#6]([#16])[#6][#6][#6]1', 0),
-721:('[#8][#6]1[#6]([#7])[#6][#6][#6]1', 0),
-722:('[#8][#6]1[#6](Cl)[#6][#6][#6]1', 0),
-723:('[#8][#6]1[#6](Br)[#6][#6][#6]1', 0),
-724:('[#16][#6]1[#6]([#16])[#6][#6][#6]1', 0),
-725:('[#16][#6]1[#6]([#7])[#6][#6][#6]1', 0),
-726:('[#16][#6]1[#6](Cl)[#6][#6][#6]1', 0),
-727:('[#16][#6]1[#6](Br)[#6][#6][#6]1', 0),
-728:('[#7][#6]1[#6]([#7])[#6][#6][#6]1', 0),
-729:('[#7][#6]1[#6](Cl)[#6][#6]1', 0),
-730:('[#7][#6]1[#6](Br)[#6][#6][#6]1', 0),
-731:('Cl[#6]1[#6](Cl)[#6][#6][#6]1', 0),
-732:('Cl[#6]1[#6](Br)[#6][#6][#6]1', 0),
-733:('Br[#6]1[#6](Br)[#6][#6][#6]1', 0)}
-
-PubchemKeys = None
-
-
-
[docs]def InitKeys(keyList, keyDict): - """ *Internal Use Only* - - generates SMARTS patterns for the keys, run once - - """ - assert len(keyList) == len(keyDict.keys()), 'length mismatch' - for key in keyDict.keys(): - patt, count = keyDict[key] - if patt != '?': - sma = Chem.MolFromSmarts(patt) - if not sma: - print('SMARTS parser error for key #%d: %s' % (key, patt)) - else: - keyList[key - 1] = sma, count
- - -
[docs]def calcPubChemFingerPart1(mol, **kwargs): - """ Calculate PubChem Fingerprints (1-115; 263-881) - - **Arguments** - - - mol: the molecule to be fingerprinted - - - any extra keyword arguments are ignored - - **Returns** - - a _DataStructs.SparseBitVect_ containing the fingerprint. - - >>> m = Chem.MolFromSmiles('CNO') - >>> bv = PubChemFingerPart1(m) - >>> tuple(bv.GetOnBits()) - (24, 68, 69, 71, 93, 94, 102, 124, 131, 139, 151, 158, 160, 161, 164) - >>> bv = PubChemFingerPart1(Chem.MolFromSmiles('CCC')) - >>> tuple(bv.GetOnBits()) - (74, 114, 149, 155, 160) - - """ - global PubchemKeys - if PubchemKeys is None: - PubchemKeys = [(None, 0)] * len(smartsPatts.keys()) - - InitKeys(PubchemKeys, smartsPatts) - ctor = kwargs.get('ctor', DataStructs.SparseBitVect) - - res = ctor(len(PubchemKeys) + 1) - for i, (patt, count) in enumerate(PubchemKeys): - if patt is not None: - if count == 0: - res[i + 1] = mol.HasSubstructMatch(patt) - else: - matches = mol.GetSubstructMatches(patt) - if len(matches) > count: - res[i + 1] = 1 - return res
- - -
[docs]def func_1(mol,bits): - """ *Internal Use Only* - - Calculate PubChem Fingerprints (116-263) - - """ - ringSize=[] - temp={3:0, 4:0, 5:0, 6:0, 7:0, 8:0, 9:0, 10:0} - AllRingsAtom = mol.GetRingInfo().AtomRings() - for ring in AllRingsAtom: - ringSize.append(len(ring)) - for k,v in temp.items(): - if len(ring) == k: - temp[k]+=1 - if temp[3]>=2: - bits[0]=1;bits[7]=1 - elif temp[3]==1: - bits[0]=1 - else: - pass - if temp[4]>=2: - bits[14]=1;bits[21]=1 - elif temp[4]==1: - bits[14]=1 - else: - pass - if temp[5]>=5: - bits[28]=1;bits[35]=1;bits[42]=1;bits[49]=1;bits[56]=1 - elif temp[5]==4: - bits[28]=1;bits[35]=1;bits[42]=1;bits[49]=1 - elif temp[5]==3: - bits[28]=1;bits[35]=1;bits[42]=1 - elif temp[5]==2: - bits[28]=1;bits[35]=1 - elif temp[5]==1: - bits[28]=1 - else: - pass - if temp[6]>=5: - bits[63]=1;bits[70]=1;bits[77]=1;bits[84]=1;bits[91]=1 - elif temp[6]==4: - bits[63]=1;bits[70]=1;bits[77]=1;bits[84]=1 - elif temp[6]==3: - bits[63]=1;bits[70]=1;bits[77]=1 - elif temp[6]==2: - bits[63]=1;bits[70]=1 - elif temp[6]==1: - bits[63]=1 - else: - pass - if temp[7]>=2: - bits[98]=1;bits[105]=1 - elif temp[7]==1: - bits[98]=1 - else: - pass - if temp[8]>=2: - bits[112]=1;bits[119]=1 - elif temp[8]==1: - bits[112]=1 - else: - pass - if temp[9]>=1: - bits[126]=1; - else: - pass - if temp[10]>=1: - bits[133]=1; - else: - pass - - return ringSize,bits
- - -
[docs]def func_2(mol,bits): - """ *Internal Use Only* - - saturated or aromatic carbon-only ring - - """ - AllRingsBond = mol.GetRingInfo().BondRings() - ringSize=[] - temp={3:0, 4:0, 5:0, 6:0, 7:0, 8:0, 9:0, 10:0} - for ring in AllRingsBond: - ######### saturated - nonsingle = False - for bondIdx in ring: - if mol.GetBondWithIdx(bondIdx).GetBondType().name!='SINGLE': - nonsingle = True - break - if nonsingle == False: - ringSize.append(len(ring)) - for k,v in temp.items(): - if len(ring) == k: - temp[k]+=1 - ######## aromatic carbon-only - aromatic = True - AllCarb = True - for bondIdx in ring: - if mol.GetBondWithIdx(bondIdx).GetBondType().name!='AROMATIC': - aromatic = False - break - for bondIdx in ring: - BeginAtom = mol.GetBondWithIdx(bondIdx).GetBeginAtom() - EndAtom = mol.GetBondWithIdx(bondIdx).GetEndAtom() - if BeginAtom.GetAtomicNum() != 6 or EndAtom.GetAtomicNum() != 6: - AllCarb = False - break - if aromatic == True and AllCarb == True: - ringSize.append(len(ring)) - for k,v in temp.items(): - if len(ring) == k: - temp[k]+=1 - if temp[3]>=2: - bits[1]=1;bits[8]=1 - elif temp[3]==1: - bits[1]=1 - else: - pass - if temp[4]>=2: - bits[15]=1;bits[22]=1 - elif temp[4]==1: - bits[15]=1 - else: - pass - if temp[5]>=5: - bits[29]=1;bits[36]=1;bits[43]=1;bits[50]=1;bits[57]=1 - elif temp[5]==4: - bits[29]=1;bits[36]=1;bits[43]=1;bits[50]=1 - elif temp[5]==3: - bits[29]=1;bits[36]=1;bits[43]=1 - elif temp[5]==2: - bits[29]=1;bits[36]=1 - elif temp[5]==1: - bits[29]=1 - else: - pass - if temp[6]>=5: - bits[64]=1;bits[71]=1;bits[78]=1;bits[85]=1;bits[92]=1 - elif temp[6]==4: - bits[64]=1;bits[71]=1;bits[78]=1;bits[85]=1 - elif temp[6]==3: - bits[64]=1;bits[71]=1;bits[78]=1 - elif temp[6]==2: - bits[64]=1;bits[71]=1 - elif temp[6]==1: - bits[64]=1 - else: - pass - if temp[7]>=2: - bits[99]=1;bits[106]=1 - elif temp[7]==1: - bits[99]=1 - else: - pass - if temp[8]>=2: - bits[113]=1;bits[120]=1 - elif temp[8]==1: - bits[113]=1 - else: - pass - if temp[9]>=1: - bits[127]=1; - else: - pass - if temp[10]>=1: - bits[134]=1; - else: - pass - return ringSize, bits
- - -
[docs]def func_3(mol,bits): - """ *Internal Use Only* - - saturated or aromatic nitrogen-containing - - """ - AllRingsBond = mol.GetRingInfo().BondRings() - ringSize=[] - temp={3:0, 4:0, 5:0, 6:0, 7:0, 8:0, 9:0, 10:0} - for ring in AllRingsBond: - ######### saturated - nonsingle = False - for bondIdx in ring: - if mol.GetBondWithIdx(bondIdx).GetBondType().name!='SINGLE': - nonsingle = True - break - if nonsingle == False: - ringSize.append(len(ring)) - for k,v in temp.items(): - if len(ring) == k: - temp[k]+=1 - ######## aromatic nitrogen-containing - aromatic = True - ContainNitro = False - for bondIdx in ring: - if mol.GetBondWithIdx(bondIdx).GetBondType().name!='AROMATIC': - aromatic = False - break - for bondIdx in ring: - BeginAtom = mol.GetBondWithIdx(bondIdx).GetBeginAtom() - EndAtom = mol.GetBondWithIdx(bondIdx).GetEndAtom() - if BeginAtom.GetAtomicNum() == 7 or EndAtom.GetAtomicNum() == 7: - ContainNitro = True - break - if aromatic == True and ContainNitro == True: - ringSize.append(len(ring)) - for k,v in temp.items(): - if len(ring) == k: - temp[k]+=1 - if temp[3]>=2: - bits[2]=1;bits[9]=1 - elif temp[3]==1: - bits[2]=1 - else: - pass - if temp[4]>=2: - bits[16]=1;bits[23]=1 - elif temp[4]==1: - bits[16]=1 - else: - pass - if temp[5]>=5: - bits[30]=1;bits[37]=1;bits[44]=1;bits[51]=1;bits[58]=1 - elif temp[5]==4: - bits[30]=1;bits[37]=1;bits[44]=1;bits[51]=1 - elif temp[5]==3: - bits[30]=1;bits[37]=1;bits[44]=1 - elif temp[5]==2: - bits[30]=1;bits[37]=1 - elif temp[5]==1: - bits[30]=1 - else: - pass - if temp[6]>=5: - bits[65]=1;bits[72]=1;bits[79]=1;bits[86]=1;bits[93]=1 - elif temp[6]==4: - bits[65]=1;bits[72]=1;bits[79]=1;bits[86]=1 - elif temp[6]==3: - bits[65]=1;bits[72]=1;bits[79]=1 - elif temp[6]==2: - bits[65]=1;bits[72]=1 - elif temp[6]==1: - bits[65]=1 - else: - pass - if temp[7]>=2: - bits[100]=1;bits[107]=1 - elif temp[7]==1: - bits[100]=1 - else: - pass - if temp[8]>=2: - bits[114]=1;bits[121]=1 - elif temp[8]==1: - bits[114]=1 - else: - pass - if temp[9]>=1: - bits[128]=1; - else: - pass - if temp[10]>=1: - bits[135]=1; - else: - pass - return ringSize, bits
- - -
[docs]def func_4(mol,bits): - """ *Internal Use Only* - - saturated or aromatic heteroatom-containing - - """ - AllRingsBond = mol.GetRingInfo().BondRings() - ringSize=[] - temp={3:0, 4:0, 5:0, 6:0, 7:0, 8:0, 9:0, 10:0} - for ring in AllRingsBond: - ######### saturated - nonsingle = False - for bondIdx in ring: - if mol.GetBondWithIdx(bondIdx).GetBondType().name!='SINGLE': - nonsingle = True - break - if nonsingle == False: - ringSize.append(len(ring)) - for k,v in temp.items(): - if len(ring) == k: - temp[k]+=1 - ######## aromatic heteroatom-containing - aromatic = True - heteroatom = False - for bondIdx in ring: - if mol.GetBondWithIdx(bondIdx).GetBondType().name!='AROMATIC': - aromatic = False - break - for bondIdx in ring: - BeginAtom = mol.GetBondWithIdx(bondIdx).GetBeginAtom() - EndAtom = mol.GetBondWithIdx(bondIdx).GetEndAtom() - if BeginAtom.GetAtomicNum() not in [1,6] or EndAtom.GetAtomicNum() not in [1,6]: - heteroatom = True - break - if aromatic == True and heteroatom == True: - ringSize.append(len(ring)) - for k,v in temp.items(): - if len(ring) == k: - temp[k]+=1 - if temp[3]>=2: - bits[3]=1;bits[10]=1 - elif temp[3]==1: - bits[3]=1 - else: - pass - if temp[4]>=2: - bits[17]=1;bits[24]=1 - elif temp[4]==1: - bits[17]=1 - else: - pass - if temp[5]>=5: - bits[31]=1;bits[38]=1;bits[45]=1;bits[52]=1;bits[59]=1 - elif temp[5]==4: - bits[31]=1;bits[38]=1;bits[45]=1;bits[52]=1 - elif temp[5]==3: - bits[31]=1;bits[38]=1;bits[45]=1 - elif temp[5]==2: - bits[31]=1;bits[38]=1 - elif temp[5]==1: - bits[31]=1 - else: - pass - if temp[6]>=5: - bits[66]=1;bits[73]=1;bits[80]=1;bits[87]=1;bits[94]=1 - elif temp[6]==4: - bits[66]=1;bits[73]=1;bits[80]=1;bits[87]=1 - elif temp[6]==3: - bits[66]=1;bits[73]=1;bits[80]=1 - elif temp[6]==2: - bits[66]=1;bits[73]=1 - elif temp[6]==1: - bits[66]=1 - else: - pass - if temp[7]>=2: - bits[101]=1;bits[108]=1 - elif temp[7]==1: - bits[101]=1 - else: - pass - if temp[8]>=2: - bits[115]=1;bits[122]=1 - elif temp[8]==1: - bits[115]=1 - else: - pass - if temp[9]>=1: - bits[129]=1; - else: - pass - if temp[10]>=1: - bits[136]=1; - else: - pass - return ringSize,bits
- - -
[docs]def func_5(mol,bits): - """ *Internal Use Only* - - unsaturated non-aromatic carbon-only - - """ - ringSize=[] - AllRingsBond = mol.GetRingInfo().BondRings() - temp={3:0, 4:0, 5:0, 6:0, 7:0, 8:0, 9:0, 10:0} - for ring in AllRingsBond: - unsaturated = False - nonaromatic = True - Allcarb = True - ######### unsaturated - for bondIdx in ring: - if mol.GetBondWithIdx(bondIdx).GetBondType().name!='SINGLE': - unsaturated = True - break - ######## non-aromatic - for bondIdx in ring: - if mol.GetBondWithIdx(bondIdx).GetBondType().name=='AROMATIC': - nonaromatic = False - break - ######## allcarb - for bondIdx in ring: - BeginAtom = mol.GetBondWithIdx(bondIdx).GetBeginAtom() - EndAtom = mol.GetBondWithIdx(bondIdx).GetEndAtom() - if BeginAtom.GetAtomicNum() != 6 or EndAtom.GetAtomicNum() != 6: - Allcarb = False - break - if unsaturated == True and nonaromatic == True and Allcarb == True: - ringSize.append(len(ring)) - for k,v in temp.items(): - if len(ring) == k: - temp[k]+=1 - if temp[3]>=2: - bits[4]=1;bits[11]=1 - elif temp[3]==1: - bits[4]=1 - else: - pass - if temp[4]>=2: - bits[18]=1;bits[25]=1 - elif temp[4]==1: - bits[18]=1 - else: - pass - if temp[5]>=5: - bits[32]=1;bits[39]=1;bits[46]=1;bits[53]=1;bits[60]=1 - elif temp[5]==4: - bits[32]=1;bits[39]=1;bits[46]=1;bits[53]=1 - elif temp[5]==3: - bits[32]=1;bits[39]=1;bits[46]=1 - elif temp[5]==2: - bits[32]=1;bits[39]=1 - elif temp[5]==1: - bits[32]=1 - else: - pass - if temp[6]>=5: - bits[67]=1;bits[74]=1;bits[81]=1;bits[88]=1;bits[95]=1 - elif temp[6]==4: - bits[67]=1;bits[74]=1;bits[81]=1;bits[88]=1 - elif temp[6]==3: - bits[67]=1;bits[74]=1;bits[81]=1 - elif temp[6]==2: - bits[67]=1;bits[74]=1 - elif temp[6]==1: - bits[67]=1 - else: - pass - if temp[7]>=2: - bits[102]=1;bits[109]=1 - elif temp[7]==1: - bits[102]=1 - else: - pass - if temp[8]>=2: - bits[116]=1;bits[123]=1 - elif temp[8]==1: - bits[116]=1 - else: - pass - if temp[9]>=1: - bits[130]=1; - else: - pass - if temp[10]>=1: - bits[137]=1; - else: - pass - return ringSize,bits
- - -
[docs]def func_6(mol,bits): - """ *Internal Use Only* - - unsaturated non-aromatic nitrogen-containing - - """ - ringSize=[] - AllRingsBond = mol.GetRingInfo().BondRings() - temp={3:0, 4:0, 5:0, 6:0, 7:0, 8:0, 9:0, 10:0} - for ring in AllRingsBond: - unsaturated = False - nonaromatic = True - ContainNitro = False - ######### unsaturated - for bondIdx in ring: - if mol.GetBondWithIdx(bondIdx).GetBondType().name!='SINGLE': - unsaturated = True - break - ######## non-aromatic - for bondIdx in ring: - if mol.GetBondWithIdx(bondIdx).GetBondType().name=='AROMATIC': - nonaromatic = False - break - ######## nitrogen-containing - for bondIdx in ring: - BeginAtom = mol.GetBondWithIdx(bondIdx).GetBeginAtom() - EndAtom = mol.GetBondWithIdx(bondIdx).GetEndAtom() - if BeginAtom.GetAtomicNum() == 7 or EndAtom.GetAtomicNum() == 7: - ContainNitro = True - break - if unsaturated == True and nonaromatic == True and ContainNitro== True: - ringSize.append(len(ring)) - for k,v in temp.items(): - if len(ring) == k: - temp[k]+=1 - if temp[3]>=2: - bits[5]=1;bits[12]=1 - elif temp[3]==1: - bits[5]=1 - else: - pass - if temp[4]>=2: - bits[19]=1;bits[26]=1 - elif temp[4]==1: - bits[19]=1 - else: - pass - if temp[5]>=5: - bits[33]=1;bits[40]=1;bits[47]=1;bits[54]=1;bits[61]=1 - elif temp[5]==4: - bits[33]=1;bits[40]=1;bits[47]=1;bits[54]=1 - elif temp[5]==3: - bits[33]=1;bits[40]=1;bits[47]=1 - elif temp[5]==2: - bits[33]=1;bits[40]=1 - elif temp[5]==1: - bits[33]=1 - else: - pass - if temp[6]>=5: - bits[68]=1;bits[75]=1;bits[82]=1;bits[89]=1;bits[96]=1 - elif temp[6]==4: - bits[68]=1;bits[75]=1;bits[82]=1;bits[89]=1 - elif temp[6]==3: - bits[68]=1;bits[75]=1;bits[82]=1 - elif temp[6]==2: - bits[68]=1;bits[75]=1 - elif temp[6]==1: - bits[68]=1 - else: - pass - if temp[7]>=2: - bits[103]=1;bits[110]=1 - elif temp[7]==1: - bits[103]=1 - else: - pass - if temp[8]>=2: - bits[117]=1;bits[124]=1 - elif temp[8]==1: - bits[117]=1 - else: - pass - if temp[9]>=1: - bits[131]=1; - else: - pass - if temp[10]>=1: - bits[138]=1; - else: - pass - return ringSize,bits
- - -
[docs]def func_7(mol,bits): - """ *Internal Use Only* - - unsaturated non-aromatic heteroatom-containing - - """ - ringSize=[] - AllRingsBond = mol.GetRingInfo().BondRings() - temp={3:0, 4:0, 5:0, 6:0, 7:0, 8:0, 9:0, 10:0} - for ring in AllRingsBond: - unsaturated = False - nonaromatic = True - heteroatom = False - ######### unsaturated - for bondIdx in ring: - if mol.GetBondWithIdx(bondIdx).GetBondType().name!='SINGLE': - unsaturated = True - break - ######## non-aromatic - for bondIdx in ring: - if mol.GetBondWithIdx(bondIdx).GetBondType().name=='AROMATIC': - nonaromatic = False - break - ######## heteroatom-containing - for bondIdx in ring: - BeginAtom = mol.GetBondWithIdx(bondIdx).GetBeginAtom() - EndAtom = mol.GetBondWithIdx(bondIdx).GetEndAtom() - if BeginAtom.GetAtomicNum() not in [1,6] or EndAtom.GetAtomicNum() not in [1,6]: - heteroatom = True - break - if unsaturated == True and nonaromatic == True and heteroatom == True: - ringSize.append(len(ring)) - for k,v in temp.items(): - if len(ring) == k: - temp[k]+=1 - if temp[3]>=2: - bits[6]=1;bits[13]=1 - elif temp[3]==1: - bits[6]=1 - else: - pass - if temp[4]>=2: - bits[20]=1;bits[27]=1 - elif temp[4]==1: - bits[20]=1 - else: - pass - if temp[5]>=5: - bits[34]=1;bits[41]=1;bits[48]=1;bits[55]=1;bits[62]=1 - elif temp[5]==4: - bits[34]=1;bits[41]=1;bits[48]=1;bits[55]=1 - elif temp[5]==3: - bits[34]=1;bits[41]=1;bits[48]=1 - elif temp[5]==2: - bits[34]=1;bits[41]=1 - elif temp[5]==1: - bits[34]=1 - else: - pass - if temp[6]>=5: - bits[69]=1;bits[76]=1;bits[83]=1;bits[90]=1;bits[97]=1 - elif temp[6]==4: - bits[69]=1;bits[76]=1;bits[83]=1;bits[90]=1 - elif temp[6]==3: - bits[69]=1;bits[76]=1;bits[83]=1 - elif temp[6]==2: - bits[69]=1;bits[76]=1 - elif temp[6]==1: - bits[69]=1 - else: - pass - if temp[7]>=2: - bits[104]=1;bits[111]=1 - elif temp[7]==1: - bits[104]=1 - else: - pass - if temp[8]>=2: - bits[118]=1;bits[125]=1 - elif temp[8]==1: - bits[118]=1 - else: - pass - if temp[9]>=1: - bits[132]=1; - else: - pass - if temp[10]>=1: - bits[139]=1; - else: - pass - return ringSize,bits
- - -
[docs]def func_8(mol, bits): - """ *Internal Use Only* - - aromatic rings or hetero-aromatic rings - - """ - AllRingsBond = mol.GetRingInfo().BondRings() - temp={'aromatic':0,'heteroatom':0} - for ring in AllRingsBond: - aromatic = True - heteroatom = False - for bondIdx in ring: - if mol.GetBondWithIdx(bondIdx).GetBondType().name!='AROMATIC': - aromatic = False - break - if aromatic==True: - temp['aromatic']+=1 - for bondIdx in ring: - BeginAtom = mol.GetBondWithIdx(bondIdx).GetBeginAtom() - EndAtom = mol.GetBondWithIdx(bondIdx).GetEndAtom() - if BeginAtom.GetAtomicNum() not in [1,6] or EndAtom.GetAtomicNum() not in [1,6]: - heteroatom = True - break - if heteroatom==True: - temp['heteroatom']+=1 - if temp['aromatic']>=4: - bits[140]=1;bits[142]=1;bits[144]=1;bits[146]=1 - elif temp['aromatic']==3: - bits[140]=1;bits[142]=1;bits[144]=1 - elif temp['aromatic']==2: - bits[140]=1;bits[142]=1 - elif temp['aromatic']==1: - bits[140]=1 - else: - pass - if temp['aromatic']>=4 and temp['heteroatom']>=4: - bits[141]=1;bits[143]=1;bits[145]=1;bits[147]=1 - elif temp['aromatic']==3 and temp['heteroatom']==3: - bits[141]=1;bits[143]=1;bits[145]=1 - elif temp['aromatic']==2 and temp['heteroatom']==2: - bits[141]=1;bits[143]=1 - elif temp['aromatic']==1 and temp['heteroatom']==1: - bits[141]=1 - else: - pass - return bits
- - -
[docs]def calcPubChemFingerPart2(mol):# 116-263 - """ *Internal Use Only* - - Calculate PubChem Fingerprints (116-263) - - """ - bits=[0]*148 - bits=func_1(mol,bits)[1] - bits=func_2(mol,bits)[1] - bits=func_3(mol,bits)[1] - bits=func_4(mol,bits)[1] - bits=func_5(mol,bits)[1] - bits=func_6(mol,bits)[1] - bits=func_7(mol,bits)[1] - bits=func_8(mol,bits) - - return bits
- - -
[docs]def calcPubChemFingerAll(mol): - """*Internal Use Only* - - Calculate PubChem Fingerprints - - """ - AllBits=[0]*881 - res1=list(calcPubChemFingerPart1(mol).ToBitString()) - for index, item in enumerate(res1[1:116]): - if item == '1': - AllBits[index] = 1 - for index2, item2 in enumerate(res1[116:734]): - if item2 == '1': - AllBits[index2+115+148] = 1 - res2=calcPubChemFingerPart2(mol) - for index3, item3 in enumerate(res2): - if item3==1: - AllBits[index3+115]=1 - return AllBits
-# ------------------------------------ - -if __name__ == '__main__': - print '-'*10+'START'+'-'*10 - SMILES = 'C1=NC2NC3=CNCC3=CC2CC1' - mol = Chem.MolFromSmiles(SMILES) - mol2 = Chem.AddHs(mol) - result = calcPubChemFingerAll(mol2) - print 'Molecule: %s'%SMILES - print '-'*25 - print 'Results: %s'%result - print '-'*10+'END'+'-'*10 -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyDNAac.html b/PyBioMed/doc/_build/html/_modules/PyDNAac.html deleted file mode 100644 index 98cf70d..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyDNAac.html +++ /dev/null @@ -1,553 +0,0 @@ - - - - - - - - PyDNAac — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyDNAac

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-
-A class used for computing different types of DNA descriptors! 
-
-You can freely use and distribute it. If you have any problem, 
-
-you could contact with us timely.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.07.11
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-from PyDNAutil import GetData, GeneratePhycheValue
-from functools import reduce
-
-
-
[docs]def CheckAcc(lag, k): - """ - ################################################################# - Check ACC parameter validation. - ################################################################# - """ - try: - if not isinstance(lag, int) or lag <= 0: - raise ValueError("Error, parameter lag must be an int type and larger than 0.") - elif not isinstance(k, int) or lag <= 0: - raise ValueError("Error, parameter k must be an int type and larger than 0.") - except ValueError: - raise
- - -
[docs]def ReadyAcc(input_data, k, phyche_index=None, all_property=False, extra_phyche_index=None): - """ - ################################################################# - Public function for get sequence_list and phyche_value. - ################################################################# - """ - sequence_list = GetData(input_data) - if phyche_index is None: - phyche_index = [] - if extra_phyche_index is None: - extra_phyche_index = {} - phyche_value = GeneratePhycheValue(k, phyche_index, all_property, extra_phyche_index) - - return sequence_list, phyche_value
- - - - -
[docs]def GetDAC(input_data,**kwargs): - """ - ################################################################# - Make DAC dictionary. - - :param input_data: file object or sequence list. - :param phyche_index: physicochemical properties list. - :param all_property: bool, choose all physicochemical properties or not. - :param extra_phyche_index: dict, the key is the dinucleotide (string), and its corresponding value is a list. - It means user-defined phyche_index. - ################################################################# - """ - - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 2 - - if 'lag' in kwargs: - lag = kwargs['lag'] - else: - lag = 2 - if 'phyche_index' in kwargs: - phyche_index = kwargs['phyche_index'] - else: - phyche_index = None - if 'all_property' in kwargs: - all_property = kwargs['all_property'] - else: - all_property = False - if 'extra_phyche_index' in kwargs: - extra_phyche_index = kwargs['extra_phyche_index'] - else: - extra_phyche_index = None - - input_data = [input_data] - sequence_list, phyche_value = ReadyAcc(input_data, k, phyche_index, all_property, extra_phyche_index) - from PyDNAacutil import MakeACVector - vec = MakeACVector(sequence_list, lag, phyche_value, k) - dict_keys = ['DAC_%s'%i for i in range(1,len(vec[0])+1)] - res = dict(zip(dict_keys,vec[0])) - return res
- - - -
[docs]def GetDCC(input_data,**kwargs): - """ - ################################################################# - Make DCC vector. - - :param input_data: file object or sequence list. - :param phyche_index: physicochemical properties list. - :param all_property: bool, choose all physicochemical properties or not. - :param extra_phyche_index: dict, the key is the dinucleotide (string), and its corresponding value is a list. - It means user-defined phyche_index. - ################################################################# - """ - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 2 - - if 'lag' in kwargs: - lag = kwargs['lag'] - else: - lag = 2 - if 'phyche_index' in kwargs: - phyche_index = kwargs['phyche_index'] - else: - phyche_index = None - if 'all_property' in kwargs: - all_property = kwargs['all_property'] - else: - all_property = False - if 'extra_phyche_index' in kwargs: - extra_phyche_index = kwargs['extra_phyche_index'] - else: - extra_phyche_index = None - - input_data = [input_data] - sequence_list, phyche_value = ReadyAcc(input_data, k, phyche_index, all_property, extra_phyche_index) - from PyDNAacutil import MakeCCVector - - vec = MakeCCVector(sequence_list, lag, phyche_value, k) - dict_keys = ['DCC_%s'%i for i in range(1,len(vec[0])+1)] - res = dict(zip(dict_keys,vec[0])) - return res
- - - - - -
[docs]def GetDACC(input_data, **kwargs): - """ - ################################################################# - Make DACC dictionary. - - :param input_data: file object or sequence list. - :param phyche_index: physicochemical properties list. - :param all_property: bool, choose all physicochemical properties or not. - :param extra_phyche_index: dict, the key is the dinucleotide (string), and its corresponding value is a list. - It means user-defined phyche_index. - ################################################################# - """ - - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 2 - - if 'lag' in kwargs: - lag = kwargs['lag'] - else: - lag = 2 - if 'phyche_index' in kwargs: - phyche_index = kwargs['phyche_index'] - else: - phyche_index = None - if 'all_property' in kwargs: - all_property = kwargs['all_property'] - else: - all_property = False - if 'extra_phyche_index' in kwargs: - extra_phyche_index = kwargs['extra_phyche_index'] - else: - extra_phyche_index = None - - input_data = [input_data] - sequence_list, phyche_value = ReadyAcc(input_data, k, phyche_index, all_property, extra_phyche_index) - from PyDNAacutil import MakeACVector, MakeCCVector - zipped = list(zip(MakeACVector(sequence_list, lag, phyche_value, k), - MakeCCVector(sequence_list, lag, phyche_value, k))) - vec = [reduce(lambda x, y: x + y, e) for e in zipped] - - dict_keys = ['DACC_%s'%i for i in range(1,len(vec[0])+1)] - res = dict(zip(dict_keys,vec[0])) - return res
- - - -
[docs]def GetTAC(input_data, **kwargs): - """ - ################################################################# - Make TAC dictionary. - - :param input_data: file object or sequence list. - :param phyche_index: physicochemical properties list. - :param all_property: bool, choose all physicochemical properties or not. - :param extra_phyche_index: dict, the key is the dinucleotide (string), and its corresponding value is a list. - It means user-defined phyche_index. - ################################################################# - """ - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 3 - - if 'lag' in kwargs: - lag = kwargs['lag'] - else: - lag = 2 - if 'phyche_index' in kwargs: - phyche_index = kwargs['phyche_index'] - else: - phyche_index = None - if 'all_property' in kwargs: - all_property = kwargs['all_property'] - else: - all_property = False - if 'extra_phyche_index' in kwargs: - extra_phyche_index = kwargs['extra_phyche_index'] - else: - extra_phyche_index = None - - input_data = [input_data] - sequence_list, phyche_value = ReadyAcc(input_data, k, phyche_index, all_property, extra_phyche_index) - from PyDNAacutil import MakeACVector - vec = MakeACVector(sequence_list, lag, phyche_value, k) - dict_keys = ['TAC_%s'%i for i in range(1,len(vec[0])+1)] - res = dict(zip(dict_keys,vec[0])) - return res
- - - -
[docs]def GetTCC( input_data,**kwargs): - """ - ################################################################# - Make TCC dictionary. - - :param input_data: file object or sequence list. - :param phyche_index: physicochemical properties list. - :param all_property: bool, choose all physicochemical properties or not. - :param extra_phyche_index: dict, the key is the dinucleotide (string), and its corresponding value is a list. - It means user-defined phyche_index. - ################################################################# - """ - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 3 - - if 'lag' in kwargs: - lag = kwargs['lag'] - else: - lag = 2 - if 'phyche_index' in kwargs: - phyche_index = kwargs['phyche_index'] - else: - phyche_index = None - if 'all_property' in kwargs: - all_property = kwargs['all_property'] - else: - all_property = False - if 'extra_phyche_index' in kwargs: - extra_phyche_index = kwargs['extra_phyche_index'] - else: - extra_phyche_index = None - - input_data = [input_data] - sequence_list, phyche_value = ReadyAcc(input_data, k, phyche_index, all_property, extra_phyche_index) - from PyDNAacutil import MakeCCVector - vec = MakeCCVector(sequence_list, lag, phyche_value, k) - dict_keys = ['TCC_%s'%i for i in range(1,len(vec[0])+1)] - res = dict(zip(dict_keys,vec[0])) - return res
- - - - -
[docs]def GetTACC(input_data,**kwargs): - """ - ################################################################# - Make TACC dictionary. - - :param input_data: file object or sequence list. - :param phyche_index: physicochemical properties list. - :param all_property: bool, choose all physicochemical properties or not. - :param extra_phyche_index: dict, the key is the dinucleotide (string), and its corresponding value is a list. - It means user-defined phyche_index. - ################################################################# - """ - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 3 - - if 'lag' in kwargs: - lag = kwargs['lag'] - else: - lag = 2 - if 'phyche_index' in kwargs: - phyche_index = kwargs['phyche_index'] - else: - phyche_index = None - if 'all_property' in kwargs: - all_property = kwargs['all_property'] - else: - all_property = False - if 'extra_phyche_index' in kwargs: - extra_phyche_index = kwargs['extra_phyche_index'] - else: - extra_phyche_index = None - - input_data = [input_data] - sequence_list, phyche_value = ReadyAcc(input_data, k, phyche_index, all_property, extra_phyche_index) - - from PyDNAacutil import MakeACVector, MakeCCVector - - zipped = list(zip(MakeACVector(sequence_list, lag, phyche_value, k), - MakeCCVector(sequence_list, lag, phyche_value, k))) - vec = [reduce(lambda x, y: x + y, e) for e in zipped] - dict_keys = ['TCC_%s'%i for i in range(1,len(vec[0])+1)] - res = dict(zip(dict_keys,vec[0])) - return res
- -if __name__ == '__main__': - extra_phyche_value = {'AA': [0.06, 0.5, 0.27, 1.59, 0.11, -0.11], - 'AC': [1.50, 0.50, 0.80, 0.13, 1.29, 1.04], - 'AG': [0.78, 0.36, 0.09, 0.68, -0.24, -0.62], - 'AT': [1.07, 0.22, 0.62, -1.02, 2.51, 1.17], - 'CA': [-1.38, -1.36, -0.27, -0.86, -0.62, -1.25], - 'CC': [0.06, 1.08, 0.09, 0.56, -0.82, 0.24], - 'CG': [-1.66, -1.22, -0.44, -0.82, -0.29, -1.39], - 'CT': [0.78, 0.36, 0.09, 0.68, -0.24, -0.62], - 'GA': [-0.08, 0.5, 0.27, 0.13, -0.39, 0.71], - 'GC': [-0.08, 0.22, 1.33, -0.35, 0.65, 1.59], - 'GG': [0.06, 1.08, 0.09, 0.56, -0.82, 0.24], - 'GT': [1.50, 0.50, 0.80, 0.13, 1.29, 1.04], - 'TA': [-1.23, -2.37, -0.44, -2.24, -1.51, -1.39], - 'TC': [-0.08, 0.5, 0.27, 0.13, -0.39, 0.71], - 'TG': [-1.38, -1.36, -0.27, -0.86, -0.62, -1.25], - 'TT': [0.06, 0.5, 0.27, 1.59, 0.11, -0.11]} - phyche_index = \ - [[2.26, 3.03, 2.03, 3.83, 1.78, 1.65, 2.00, 2.03, 1.93, 2.61, 1.65, 3.03, 1.20, 1.93, 1.78, 2.26], - [7.65, 8.93, 7.08, 9.07, 6.38, 8.04, 6.23, 7.08, 8.56, 9.53, 8.04, 8.93, 6.23, 8.56, 6.38, 7.65]] - - from PyDNAutil import NormalizeIndex - - - dac = GetDAC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt']) - print(dac) - print(len(dac)) - - dac = GetDAC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', all_property=True) - print(dac) - print(len(dac)) - - dac = GetDAC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(dac) - print(len(dac)) - print('\n') - - - dcc = GetDCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt']) - print(dcc) - print(len(dcc)) - - dcc = GetDCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', all_property=True) - print(dcc) - print(len(dcc)) - - dcc = GetDCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(dcc) - print(len(dcc)) - print('\n') - - print('DACC') - dacc = GetDACC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt']) - print(dacc) - print(len(dacc)) - - dacc = GetDACC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',all_property=True) - print(dacc) - print(len(dacc)) - - dac = GetDACC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(dac) - print(len(dac)) - print('\n') - - phyche_index = [ - [7.176, 6.272, 4.736, 7.237, 3.810, 4.156, 4.156, 6.033, 3.410, 3.524, 4.445, 6.033, 1.613, 5.087, 2.169, 7.237, - 3.581, 3.239, 1.668, 2.169, 6.813, 3.868, 5.440, 4.445, 3.810, 4.678, 5.440, 4.156, 2.673, 3.353, 1.668, 4.736, - 4.214, 3.925, 3.353, 5.087, 2.842, 2.448, 4.678, 3.524, 3.581, 2.448, 3.868, 4.156, 3.467, 3.925, 3.239, 6.272, - 2.955, 3.467, 2.673, 1.613, 1.447, 3.581, 3.810, 3.410, 1.447, 2.842, 6.813, 3.810, 2.955, 4.214, 3.581, 7.176] - ] - - print('Begin TAC') - tac = GetTAC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome']) - print(tac) - print(len(tac)) - - tac = GetTAC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',all_property=True) - print(tac) - print(len(tac)) - - tac = GetTAC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(tac) - print(len(tac)) - print('\n') - - - print('Begin TCC') - tcc = GetTCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome']) - print(tcc) - print(len(tcc)) - - tcc = GetTCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', all_property=True) - print(tcc) - print(len(tcc)) - - tcc = GetTCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(tcc) - print(len(tcc)) - print('\n') - - print('Begin TACC') - tacc = GetTACC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome']) - print(tacc) - print(len(tacc)) - - tacc = GetTACC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', all_property=True) - print(tacc) - print(len(tacc)) - - - tacc = GetTACC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(tacc) - print(len(tacc)) - print('\n') -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyDNAacutil.html b/PyBioMed/doc/_build/html/_modules/PyDNAacutil.html deleted file mode 100644 index 5157177..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyDNAacutil.html +++ /dev/null @@ -1,204 +0,0 @@ - - - - - - - - PyDNAacutil — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyDNAacutil

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-
-A class used for computing different types of DNA descriptors! 
-
-You can freely use and distribute it. If you have any problem, 
-
-you could contact with us timely.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.08.14
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-ALPHABET = 'ACGT'
-
-
-
[docs]def ExtendPhycheIndex(original_index, extend_index): - """Extend {phyche:[value, ... ]}""" - if 0 == len(extend_index): - return original_index - for key in list(original_index.keys()): - original_index[key].extend(extend_index[key]) - return original_index
- - -
[docs]def MakeACVector(sequence_list, lag, phyche_value, k): - phyche_values = list(phyche_value.values()) - len_phyche_value = len(phyche_values[0]) - - vec_ac = [] - for sequence in sequence_list: - len_seq = len(sequence) - each_vec = [] - - for temp_lag in range(1, lag + 1): - for j in range(len_phyche_value): - - # Calculate average phyche_value for a nucleotide. - ave_phyche_value = 0.0 - for i in range(len_seq - temp_lag - k + 1): - nucleotide = sequence[i: i + k] - ave_phyche_value += float(phyche_value[nucleotide][j]) - ave_phyche_value /= len_seq - - # Calculate the vector. - temp_sum = 0.0 - for i in range(len_seq - temp_lag - k + 1): - nucleotide1 = sequence[i: i + k] - nucleotide2 = sequence[i + temp_lag: i + temp_lag + k] - temp_sum += (float(phyche_value[nucleotide1][j]) - ave_phyche_value) * ( - float(phyche_value[nucleotide2][j])) - - each_vec.append(round(temp_sum / (len_seq - temp_lag - k + 1), 3)) - vec_ac.append(each_vec) - - return vec_ac
- - -
[docs]def MakeCCVector(sequence_list, lag, phyche_value, k): - phyche_values = list(phyche_value.values()) - len_phyche_value = len(phyche_values[0]) - - vec_cc = [] - for sequence in sequence_list: - len_seq = len(sequence) - each_vec = [] - - for temp_lag in range(1, lag + 1): - for i1 in range(len_phyche_value): - for i2 in range(len_phyche_value): - if i1 != i2: - # Calculate average phyche_value for a nucleotide. - ave_phyche_value1 = 0.0 - ave_phyche_value2 = 0.0 - for j in range(len_seq - temp_lag - k + 1): - nucleotide = sequence[j: j + k] - ave_phyche_value1 += float(phyche_value[nucleotide][i1]) - ave_phyche_value2 += float(phyche_value[nucleotide][i2]) - ave_phyche_value1 /= len_seq - ave_phyche_value2 /= len_seq - - # Calculate the vector. - temp_sum = 0.0 - for j in range(len_seq - temp_lag - k + 1): - nucleotide1 = sequence[j: j + k] - nucleotide2 = sequence[j + temp_lag: j + temp_lag + k] - temp_sum += (float(phyche_value[nucleotide1][i1]) - ave_phyche_value1) * \ - (float(phyche_value[nucleotide2][i2]) - ave_phyche_value2) - each_vec.append(round(temp_sum / (len_seq - temp_lag - k + 1), 3)) - - vec_cc.append(each_vec) - - return vec_cc
- - -if __name__ == '__main__': - pass -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyDNAnac.html b/PyBioMed/doc/_build/html/_modules/PyDNAnac.html deleted file mode 100644 index bf5ba79..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyDNAnac.html +++ /dev/null @@ -1,367 +0,0 @@ - - - - - - - - PyDNAnac — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyDNAnac

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-
-A class used for computing different types of DNA descriptors! 
-
-You can freely use and distribute it. If you have any problem, 
-
-you could contact with us timely.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.10.11
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-
-
-from PyDNAnacutil import MakeUptoKmerList, MakeRevcompKmerList, MakeKmerVector
-from PyDNAutil import GetData
-
-
-
[docs]def CheckNacPara(k, normalize=False, upto=False, alphabet='ACGT'): - """ - ########################################################################### - Check the nac parameter's validation. - ########################################################################### - """ - try: - if not isinstance(k, int) or k <= 0: - raise ValueError("Error, parameter k must be an integer and larger than 0.") - elif not isinstance(normalize, bool): - raise ValueError("Error, parameter normalize must be bool type.") - elif not isinstance(upto, bool): - raise ValueError("Error, parameter upto must be bool type.") - elif alphabet != 'ACGT': - raise ValueError("Error, parameter alphabet must be 'ACGT'.") - except ValueError: - raise
- - -
[docs]def GetKmerList(k, upto, alphabet): - """ - ########################################################################### - Get the kmer list. - - :param k: int, the k value of kmer, it should be larger than 0. - :param upto: bool, whether to generate 1-kmer, 2-kmer, ..., k-mer. - :param alphabet: string. - ########################################################################### - """ - if upto: - k_list = list(range(1, k + 1)) - else: - k_list = list(range(k, k + 1)) - kmer_list = MakeUptoKmerList(k_list, alphabet) - - return kmer_list
- - -
[docs]def GetKmer(data, **kwargs): - """ - ########################################################################### - Make a kmer dictionary with options k, upto, revcomp, normalize. - - :param k: int, the k value of kmer, it should be larger than 0. - :param normalize: bool, normalize the result vector or not. - :param upto: bool, whether to generate 1-kmer, 2-kmer, ..., k-mer. - :param alphabet: string. - :param data: file object or sequence list. - :return: kmer vector. - ########################################################################### - """ - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 1 - if 'normalize' in kwargs: - normalize = kwargs['normalize'] - else: - normalize = False - if 'upto' in kwargs: - upto =kwargs['upto'] - else: - upto = False - if 'alphabet' in kwargs: - alphabet = kwargs['alphabet'] - else: - alphabet = "ACGT" - - data = [data] - sequence_list = GetData(data) - - kmer_list = GetKmerList(k, upto, alphabet) - - rev_kmer_list = [] - revcomp = False - vec = MakeKmerVector(sequence_list, kmer_list, rev_kmer_list, k, upto, revcomp, normalize) - - dict_keys = ['Kmer_%s'%i for i in range(1,len(vec[0])+1)] - res = dict(zip(dict_keys,vec[0])) - return res
- - -
[docs]def GetRevcKmer(data, **kwargs): - """ - ########################################################################### - Make a reverse compliment kmer dictionary with options k, upto, normalize. - - :param data: file object or sequence list. - :return: reverse compliment kmer vector. - ########################################################################### - """ - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 1 - if 'normalize' in kwargs: - normalize = kwargs['normalize'] - else: - normalize = False - if 'upto' in kwargs: - upto =kwargs['upto'] - else: - upto = False - if 'alphabet' in kwargs: - alphabet = kwargs['alphabet'] - else: - alphabet = "ACGT" - - - data = [data] - sequence_list = GetData(data) - - kmer_list = GetKmerList(k, upto, alphabet) - - # Use lexicographically first version of {kmer, revcomp(kmer)}. - rev_kmer_list = MakeRevcompKmerList(kmer_list) - revcomp = True - vec = MakeKmerVector(sequence_list, kmer_list, rev_kmer_list, k, upto, revcomp, normalize) - - dict_keys = ['RevcKmer_%s'%i for i in range(1,len(vec[0])+1)] - res = dict(zip(dict_keys,vec[0])) - return res
- - - - -
[docs]def GetIdKmer(data, hs, non_hs,**kwargs): - """ - ########################################################################### - Make IDKmer vector. - - :param data: Need to processed FASTA file. - :param hs: Positive FASTA file. - :param non_hs: Negative FASTA file. - :param k: int, the k value of kmer, it should be larger than 0. - :param upto: bool, whether to generate 1-kmer, 2-kmer, ..., k-mer. - :param alphabet: string. - ########################################################################### - """ - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 6 - if 'upto' in kwargs: - upto =kwargs['upto'] - else: - upto = True - if 'alphabet' in kwargs: - alphabet = kwargs['alphabet'] - else: - alphabet = "ACGT" - - - from PyDNAnacutil import MakeKmerList - from PyDNAnacutil import Diversity - from PyDNAnacutil import IdXS - - rev_kmer_list, upto, revcomp, normalize = [], False, False, False - - pos_s_list = GetData(hs) - neg_s_list = GetData(non_hs) - # print k - if upto is False: - k_list = [k] - else: - k_list = list(range(1, k+1)) - - # print 'k_list =', k_list - - # Get all kmer ID from 1-kmer to 6-kmer. - # Calculate standard source S vector. - pos_s_vec, neg_s_vec = [], [] - diversity_pos_s, diversity_neg_s = [], [] - for k in k_list: - kmer_list = MakeKmerList(k, alphabet) - - temp_pos_s_vec = MakeKmerVector(pos_s_list, kmer_list, rev_kmer_list, k, upto, revcomp, normalize) - temp_neg_s_vec = MakeKmerVector(neg_s_list, kmer_list, rev_kmer_list, k, upto, revcomp, normalize) - - temp_pos_s_vec = [sum(e) for e in zip(*[e for e in temp_pos_s_vec])] - temp_neg_s_vec = [sum(e) for e in zip(*[e for e in temp_neg_s_vec])] - - pos_s_vec.append(temp_pos_s_vec) - neg_s_vec.append(temp_neg_s_vec) - - diversity_pos_s.append(Diversity(temp_pos_s_vec)) - diversity_neg_s.append(Diversity(temp_neg_s_vec)) - - # Calculate Diversity(X) and ID(X, S). - sequence_list = GetData(data) - vec = [] - - for seq in sequence_list: - # print seq - temp_vec = [] - for k in k_list: - kmer_list = MakeKmerList(k, alphabet) - seq_list = [seq] - kmer_vec = MakeKmerVector(seq_list, kmer_list, rev_kmer_list, k, upto, revcomp, normalize) - # print 'k', k - # print 'kmer_vec', kmer_vec - - # print diversity_pos_s - if upto is False: - k = 1 - - # print 'pos_vec', pos_s_vec - # print 'neg_vec', neg_s_vec - # print 'diversity_pos_s', diversity_pos_s - - temp_vec.append(round(IdXS(kmer_vec[0], pos_s_vec[k-1], diversity_pos_s[k-1]), 3)) - temp_vec.append(round(IdXS(kmer_vec[0], neg_s_vec[k-1], diversity_neg_s[k-1]), 3)) - - vec.append(temp_vec) - - return vec
- - -if __name__ == '__main__': - # kmer =Kmer(k=1) - # kmer =RevcKmer(k=1, normalize=True, alphabet='ACGT') - # kmer =IDkmer(k=1) - - kmer = GetKmer('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',k=2) - print(kmer) - - kmer = GetKmer('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',k=2,normalize=True) - print(kmer) - - kmer = GetKmer('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',k=2,normalize=True,upto=True) - print(kmer) - - - revckmer = GetRevcKmer('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',k=2, normalize=False, upto=False) - print(revckmer) - - - revckmer = GetRevcKmer('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',k=2,normalize=True, upto=True) - print(revckmer) - print('\n') - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyDNAnacutil.html b/PyBioMed/doc/_build/html/_modules/PyDNAnacutil.html deleted file mode 100644 index 95886b7..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyDNAnacutil.html +++ /dev/null @@ -1,849 +0,0 @@ - - - - - - - - PyDNAnacutil — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyDNAnacutil

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-
-A class used for computing different types of DNA descriptors! 
-
-You can freely use and distribute it. If you have any problem, 
-
-you could contact with us timely.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.14
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-import sys
-import math
-import itertools
-
-
-
[docs]def Frequency(tol_str, tar_str): - """ - ################################################################# - Generate the frequency of tar_str in tol_str. - - :param tol_str: mother string. - :param tar_str: substring. - ################################################################# - """ - i, j, tar_count = 0, 0, 0 - len_tol_str = len(tol_str) - len_tar_str = len(tar_str) - while i < len_tol_str and j < len_tar_str: - if tol_str[i] == tar_str[j]: - i += 1 - j += 1 - if j >= len_tar_str: - tar_count += 1 - i = i - j + 1 - j = 0 - else: - i = i - j + 1 - j = 0 - - return tar_count
- - -
[docs]def MakeKmerList(k, alphabet): - try: - return ["".join(e) for e in itertools.product(alphabet, repeat=k)] - except TypeError: - print("TypeError: k must be an inter and larger than 0, alphabet must be a string.") - raise TypeError - except ValueError: - print("TypeError: k must be an inter and larger than 0") - raise ValueError
- - -
[docs]def MakeUptoKmerList(k_values, alphabet): - # Compute the k-mer for each value of k. - return_value = [] - for k in k_values: - return_value.extend(MakeKmerList(k, alphabet)) - - return return_value
- - -
[docs]def NormalizeVector(normalize_method, k_values, vector, kmer_list): - # Do nothing if there's no normalization. - if normalize_method == "none": - return vector - - # Initialize all vector lengths to zeroes. - vector_lengths = {k: 0 for k in k_values} - - # Compute sum or sum-of-squares separately for each k. - num_kmers = len(kmer_list) - for i_kmer in range(0, num_kmers): - kmer_length = len(kmer_list[i_kmer]) - count = vector[i_kmer] - if normalize_method == "frequency": - vector_lengths[kmer_length] += count - elif normalize_method == "unitsphere": - vector_lengths[kmer_length] += count * count - - # Square root each sum if we're doing 2-norm. - if normalize_method == "unitsphere": - for k in k_values: - vector_lengths[k] = math.sqrt(vector_lengths[k]) - - # Divide through by each sum. - return_value = [] - for i_kmer in range(0, num_kmers): - kmer_length = len(kmer_list[i_kmer]) - count = vector[i_kmer] - vector_length = vector_lengths[kmer_length] - if vector_length == 0: - return_value.append(0) - else: - return_value.append(float(count) / float(vector_length)) - - return return_value
- - -# Make a copy of a given string, substituting one letter. -
[docs]def Substitute(position, letter, string): - return_value = "" - if position > 0: - return_value = return_value + string[0:position] - return_value = return_value + letter - if position < (len(string) - 1): - return_value = return_value + string[position + 1:] - - return return_value
- - -
[docs]def ComputeBinNum(num_bins, position, k, numbers): - # If no binning, just return. - if num_bins == 1: - return 0 - - # Compute the mean value for this k-mer. - mean = 0 - for i in range(0, k): - mean += float(numbers[position + i]) - mean /= k - - # Find what quantile it lies in. - for i_bin in range(0, num_bins): - if mean <= boundaries[k][i_bin]: - break - - # Make sure we didn't go too far. - if i_bin == num_bins: - sys.stderr.write("bin=num_bins=%d\n", i_bin) - sys.exit(1) - - return i_bin
- - -
[docs]def MakeSequenceVector(sequence, - numbers, - num_bins, - revcomp, - revcomp_dictionary, - normalize_method, - k_values, - mismatch, - alphabet, - kmer_list, - boundaries, - pseudocount): - # Make an empty counts vector. - kmer_counts = [] - for i_bin in range(0, num_bins): - kmer_counts.append({}) - - # Iterate along the sequence. - for k in k_values: - seq_length = len(sequence) - k + 1 - for i_seq in range(0, seq_length): - - # Compute which bin number this goes in. - bin_num = ComputeBinNum(num_bins, i_seq, k, numbers) - - # Extract this k-mer. - kmer = sequence[i_seq: i_seq + k] - - # If we're doing reverse complement, store the count in the - # the version that starts with A or C. - if revcomp == 1: - rev_kmer = FindRevcomp(kmer, revcomp_dictionary) - if cmp(kmer, rev_kmer) > 0: - kmer = rev_kmer - - # Increment the count. - if kmer in kmer_counts[bin_num]: - kmer_counts[bin_num][kmer] += 1 - else: - kmer_counts[bin_num][kmer] = 1 - - # Should we also do the mismatch? - if mismatch != 0: - - # Loop through all possible mismatches. - for i_kmer in range(0, k): - for letter in alphabet: - - # Don't count yourself as a mismatch. - if kmer[i_kmer:i_kmer + 1] != letter: - - # Find the neighboring sequence. - neighbor = Substitute(i_kmer, letter, kmer) - - # If we're doing reverse complement, store the - # count in the version that starts with A or C. - if revcomp == 1: - rev_kmer = FindRevcomp(kmer, - revcomp_dictionary) - if cmp(kmer, rev_kmer) > 0: - kmer = rev_kmer - - # Increment the neighboring sequence. - if neighbor in kmer_counts[bin_num]: - kmer_counts[bin_num][neighbor] += mismatch - else: - kmer_counts[bin_num][neighbor] = mismatch - - # Build the sequence vector. - sequence_vector = [] - for i_bin in range(0, num_bins): - for kmer in kmer_list: - if kmer in kmer_counts[i_bin]: - sequence_vector.append(kmer_counts[i_bin][kmer] + pseudocount) - else: - sequence_vector.append(pseudocount) - - # Normalize it - return_value = NormalizeVector(normalize_method, - k_values, - sequence_vector, - kmer_list) - - return return_value
- - -
[docs]def ReadFastaSequence(numeric, - fasta_file): - # Read 1 byte. - first_char = fasta_file.read(1) - # If it's empty, we're done. - if first_char == "": - return ["", ""] - # If it's ">", then this is the first sequence in the file. - elif first_char == ">": - line = "" - else: - line = first_char - - # Read the rest of the header line. - line = line + fasta_file.readline() - - # Get the rest of the ID. - words = line.split() - if len(words) == 0: - sys.stderr.write("No words in header line (%s)\n" % line) - sys.exit(1) - id = words[0] - - # Read the sequence, through the next ">". - first_char = fasta_file.read(1) - sequence = "" - while (first_char != ">") and (first_char != ""): - if first_char != "\n": # Handle blank lines. - line = fasta_file.readline() - sequence = sequence + first_char + line - first_char = fasta_file.read(1) - - # Remove EOLs. - clean_sequence = "" - for letter in sequence: - if letter != "\n": - clean_sequence += letter - sequence = clean_sequence - - # Remove spaces. - if numeric == 0: - clean_sequence = "" - for letter in sequence: - if letter != " ": - clean_sequence = clean_sequence + letter - sequence = clean_sequence.upper() - - return [id, sequence]
- - -
[docs]def ReadSequenceAndNumbers(fasta_file, - numbers_filename, - numbers_file): - [fasta_id, fasta_sequence] = ReadFastaSequence(0, fasta_file) - - if numbers_filename != "": - [number_id, number_sequence] = ReadFastaSequence(1, number_file) - - # Make sure we got the same ID. - if fasta_id != number_id: - sys.stderr.write("Found mismatching IDs (%s != %d)\n" % - (fasta_id, number_id)) - sys.exit(1) - - # Split the numbers into a list. - number_list = number_sequence.split() - - # Verify that they are the same length. - if len(fasta_sequence) != len(number_list): - sys.stderr.write("Found sequence of length %d with %d numbers.\n" - % (len(sequence), len(number_list))) - print(sequence) - print(numbers) - sys.exit(1) - else: - number_list = "" - - return fasta_id, fasta_sequence, number_list
- - -
[docs]def FindRevcomp(sequence, - revcomp_dictionary): - # Save time by storing reverse complements in a hash. - if sequence in revcomp_dictionary: - return revcomp_dictionary[sequence] - - # Make a reversed version of the string. - rev_sequence = list(sequence) - rev_sequence.reverse() - rev_sequence = ''.join(rev_sequence) - - return_value = "" - for letter in rev_sequence: - if letter == "A": - return_value += "T" - elif letter == "C": - return_value += "G" - elif letter == "G": - return_value += "C" - elif letter == "T": - return_value += "A" - elif letter == "N": - return_value += "N" - else: - sys.stderr.write("Unknown DNA character (%s)\n" % letter) - sys.exit(1) - - # Store this value for future use. - revcomp_dictionary[sequence] = return_value - - return return_value
- - -
[docs]def ComputeQuantileBoundaries(num_bins, - k_values, - number_filename): - if num_bins == 1: - return - - # The boundaries are stored in a 2D dictionary. - boundaries = {} - - # Enumerate all values of k. - for k in k_values: - - # Open the number file for reading. - number_file = open(number_filename, "r") - - # Read it sequence by sequence. - all_numbers = [] - [id, numbers] = ReadFastaSequence(1, number_file) - while id != "": - - # Compute and store the mean of all k-mers. - number_list = numbers.split() - num_numbers = len(number_list) - k - for i_number in range(0, num_numbers): - if i_number == 0: - sum = 0; - for i in range(0, k): - sum += float(number_list[i]) - else: - sum -= float(number_list[i_number - 1]) - sum += float(number_list[i_number + k - 1]) - all_numbers.append(sum / k) - [id, numbers] = ReadFastaSequence(1, number_file) - number_file.close() - - # Sort them. - all_numbers.sort() - - # Record the quantile. - boundaries[k] = {} - num_values = len(all_numbers) - bin_size = float(num_values) / float(num_bins) - sys.stderr.write("boundaries k=%d:" % k) - for i_bin in range(0, num_bins): - value_index = int((bin_size * (i_bin + 1)) - 1) - if value_index == num_bins - 1: - value_index = num_values - 1 - value = all_numbers[value_index] - boundaries[k][i_bin] = value - sys.stderr.write(" %g" % boundaries[k][i_bin]) - sys.stderr.write("\n") - - return boundaries
- - -######################################################################### -# The start of Changing by aleeee. -######################################################################### -
[docs]def cmp(a, b): - return (a > b) - (a < b)
- - -
[docs]def MakeRevcompKmerList(kmer_list): - revcomp_dictionary = {} - new_kmer_list = [kmer for kmer in kmer_list if cmp(kmer, FindRevcomp(kmer, revcomp_dictionary)) <= 0] - return new_kmer_list
- - -
[docs]def MakeIndexUptoKRevcomp(k): - """ - ########################################################################### - Generate the index for revcomp and from 1 to k. - ########################################################################### - """ - sum = 0 - index = [0] - for i in range(1, k + 1): - if i % 2 == 0: - sum += (math.pow(2, 2 * i - 1) + math.pow(2, i - 1)) - index.append(int(sum)) - else: - sum += math.pow(2, 2 * i - 1) - index.append(int(sum)) - - return index
- - -
[docs]def MakeIndexUptoK(k): - """ - ########################################################################### - Generate the index from 1 to k. - ########################################################################### - """ - sum = 0 - index = [0] - for i in range(1, k + 1): - sum += math.pow(4, i) - index.append(int(sum)) - - return index
- - -
[docs]def MakeIndex(k): - """ - ########################################################################### - Generate the index just for k. - ########################################################################### - """ - index = [0, int(math.pow(4, k))] - - return index
- - -
[docs]def MakeKmerVector(seq_list, kmer_list, rev_kmer_list, k, upto, revcomp, normalize): - """ - ########################################################################### - Generate kmer vector. - ########################################################################### - """ - - # Generate the alphabet index. - if upto: - index = MakeIndexUptoK(k) - sum = [0] * k - len_k = k - else: - index = MakeIndex(k) - sum = [0] - len_k = 1 - - vector = [] - for seq in seq_list: - kmer_count = {} - # Generate the kmer frequency vector. - for i in range(len_k): - sum[i] = 0 - for j in range(index[i], index[i + 1]): - kmer = kmer_list[j] - temp_count = Frequency(seq, kmer) - # print temp_count - if revcomp: - rev_kmer = FindRevcomp(kmer, {}) - if kmer <= rev_kmer: - if kmer not in kmer_count: - kmer_count[kmer] = 0 - kmer_count[kmer] += temp_count - else: - if rev_kmer not in kmer_count: - kmer_count[rev_kmer] = 0 - kmer_count[rev_kmer] += temp_count - else: - if kmer not in kmer_count: - kmer_count[kmer] = 0 - kmer_count[kmer] += temp_count - sum[i] += temp_count - print kmer_count - # Store the kmer frequency vector. - if revcomp: - temp_vec = [kmer_count[kmer] for kmer in rev_kmer_list] - else: - temp_vec = [kmer_count[kmer] for kmer in kmer_list] - - # Normalize. - if normalize: - i = 0 - if not upto: - temp_vec = [round(float(e)/sum[i], 3) for e in temp_vec] - if upto: - if revcomp: - upto_index = MakeIndexUptoKRevcomp(k) - else: - upto_index = MakeIndexUptoK(k) - j = 0 - for e in temp_vec: - if j >= upto_index[i + 1]: - i += 1 - temp_vec[j] = round(float(e) / sum[i], 3) - j += 1 - - vector.append(temp_vec) - # if 0 != len(rev_kmer_list): - # print "The kmer is", rev_kmer_list - # else: - # print "The kmer is", kmer_list - return vector
- - -
[docs]def Diversity(vec): - """ - ########################################################################### - Calculate diversity. - - :param vec: kmer vec - :return: Diversity(X) - ########################################################################### - """ - m_sum = sum(vec) - from math import log - return m_sum*log(m_sum, 2) - sum([e*log(e, 2) for e in vec if e != 0])
- - -
[docs]def IdXS(vec_x, vec_s, diversity_s): - """ - ########################################################################### - Calculate ID(X, S) - - :param vec_x: kmer X - :param vec_s: kmer S - :return: ID(X, S) = Diversity(X + S) - Diversity(X) - Diversity(S) - ########################################################################### - """ - # print 'vec_x', vec_x - # print 'vec_s', vec_s - vec_x_s = [sum(e) for e in zip(vec_x, vec_s)] - # print 'vec_x_s', vec_x_s - # print diversity(vec_x_s), diversity(vec_x), diversity_s - return Diversity(vec_x_s) - Diversity(vec_x) - diversity_s
- - -############################################################################## -# End of aleeee's change. -############################################################################## - -############################################################################## -# MAIN -############################################################################## -if __name__ == '__main__': - - # Define the command line usage. - usage = """Usage: fasta2matrix [options] <k> <fasta file> - - Options: - - -upto Use all values from 1 up to the specified k. - - -revcomp Collapse reverse complement counts. - - -normalize [frequency|unitsphere] Normalize counts to be - frequencies or project onto unit sphere. With -upto, - normalization is done separately for each k. - - -protein Use an amino acid alphabet. Default=ACGT. - - -alphabet <string> Set the alphabet arbitrarily. - - -mismatch <value> Assign count of <value> to k-mers that - are 1 mismatch away. - - -binned <numbins> <file> Create <numbins> vectors for each - sequence, and place each k-mer count - into the bin based upon its corresponding - mean value from the <file>. The - <file> is in FASTA-like format, with - space-delimited numbers in place of - the sequences. The sequences must - have the same names and be in the same - order as the given FASTA file. - - -pseudocount <value> Assign the given pseudocount to each bin. - - """ - - # Define default options. - upto = 0 - revcomp = 0 - normalize_method = "none" - alphabet = "ACGT" - mismatch = 0 - num_bins = 1 - pseudocount = 0 - number_filename = "" - - # Parse the command line. - sys.argv = sys.argv[1:] - while len(sys.argv) > 2: - next_arg = sys.argv[0] - sys.argv = sys.argv[1:] - if next_arg == "-revcomp": - revcomp = 1 - elif next_arg == "-upto": - upto = 1 - elif next_arg == "-normalize": - normalize_method = sys.argv[0] - sys.argv = sys.argv[1:] - if (normalize_method != "unitsphere") and (normalize_method != "frequency"): - sys.stderr.write("Invalid normalization method (%s).\n" - % normalize_method); - sys.exit(1) - elif next_arg == "-protein": - alphabet = "ACDEFGHIKLMNPQRSTVWY" - elif next_arg == "-alphabet": - alphabet = sys.argv[0] - sys.argv = sys.argv[1:] - elif next_arg == "-mismatch": - mismatch = float(sys.argv[0]) - sys.argv = sys.argv[1:] - elif next_arg == "-binned": - num_bins = int(sys.argv[0]) - sys.argv = sys.argv[1:] - number_filename = sys.argv[0] - sys.argv = sys.argv[1:] - elif next_arg == "-pseudocount": - pseudocount = int(sys.argv[0]) - sys.argv = sys.argv[1:] - else: - sys.stderr.write("Invalid option (%s)\n" % next_arg) - sys.exit(1) - if len(sys.argv) != 2: - sys.stderr.write(usage) - sys.exit(1) - k = int(sys.argv[0]) - fasta_filename = sys.argv[1] - - # Check for reverse complementing non-DNA alphabets. - if (revcomp == 1) and (alphabet != "ACGT"): - sys.stderr.write("Attempted to reverse complement ") - sys.stderr.write("a non-DNA alphabet (%s)\n" % alphabet) - - # Make a list of all values of k. - k_values = [] - if upto == 1: - start_i_k = 1 - else: - start_i_k = k - k_values = list(range(start_i_k, k + 1)) - - # If numeric binning is turned on, compute quantile boundaries for various - # values of k. - boundaries = ComputeQuantileBoundaries(num_bins, k_values, number_filename) - - # Make a list of all k-mers. - kmer_list = MakeUptoKmerList(k_values, alphabet) - sys.stderr.write("Considering %d kmers.\n" % len(kmer_list)) - - # Set up a dictionary to cache reverse complements. - revcomp_dictionary = {} - - # Use lexicographically first version of {kmer, revcomp(kmer)}. - if revcomp == 1: - kmer_list = MakeRevcompKmerList(kmer_list) - # Print the corner of the matrix. - sys.stdout.write("fasta2matrix") - - # Print the title row. - for i_bin in range(1, num_bins + 1): - for kmer in kmer_list: - if num_bins > 1: - sys.stdout.write("\t%s-%d" % (kmer, i_bin)) - else: - sys.stdout.write("\t%s" % kmer) - sys.stdout.write("\n") - - # Open the sequence file. - if fasta_filename == "-": - fasta_file = sys.stdin - else: - fasta_file = open(fasta_filename, "r") - if number_filename == "": - number_file = 0 - else: - number_file = open(number_filename, "r") - - # Read the first sequence. - [id, sequence, numbers] = ReadSequenceAndNumbers(fasta_file, - number_filename, - number_file) - - # Iterate till we've read the whole file. - i_sequence = 1 - while id != "": - - # Tell the user what's happening. - if i_sequence % 100 == 0: - sys.stderr.write("Read %d sequences.\n" % i_sequence) - - # Compute the sequence vector. - vector = MakeSequenceVector(sequence, - numbers, - num_bins, - revcomp, - revcomp_dictionary, - normalize_method, - k_values, - mismatch, - alphabet, - kmer_list, - boundaries, - pseudocount) - - # Print the formatted vector. - sys.stdout.write(id) - - for element in vector: - sys.stdout.write("\t%g" % element) - sys.stdout.write("\n") - - - # Read the next sequence. - [id, sequence, numbers] = ReadSequenceAndNumbers(fasta_file, - number_filename, - number_file) - i_sequence += 1 - - # Close the file. - fasta_file.close() -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyDNApsenac.html b/PyBioMed/doc/_build/html/_modules/PyDNApsenac.html deleted file mode 100644 index dc7fbe5..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyDNApsenac.html +++ /dev/null @@ -1,657 +0,0 @@ - - - - - - - - PyDNApsenac — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyDNApsenac

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-
-A class used for computing different types of DNA descriptors! 
-
-You can freely use and distribute it. If you have any problem, 
-
-you could contact with us timely.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.14
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-from PyDNAutil import GetData
-from PyDNApsenacutil import ExtendPhycheIndex
-
-
-
[docs]def CheckPsenac(lamada, w, k): - """Check the validation of parameter lamada, w and k. - """ - try: - if not isinstance(lamada, int) or lamada <= 0: - raise ValueError("Error, parameter lamada must be an int type and larger than and equal to 0.") - elif w > 1 or w < 0: - raise ValueError("Error, parameter w must be ranged from 0 to 1.") - elif not isinstance(k, int) or k <= 0: - raise ValueError("Error, parameter k must be an int type and larger than 0.") - except ValueError: - raise
- - -
[docs]def GetSequenceListAndPhycheValuePsednc(input_data, extra_phyche_index=None): - """For PseDNC, PseKNC, make sequence_list and phyche_value. - - :param input_data: file type or handle. - :param extra_phyche_index: dict, the key is the dinucleotide (string), - the value is its physicochemical property value (list). - It means the user-defined physicochemical indices. - """ - if extra_phyche_index is None: - extra_phyche_index = {} - - original_phyche_value = {'AA': [0.06, 0.5, 0.27, 1.59, 0.11, -0.11], - 'AC': [1.50, 0.50, 0.80, 0.13, 1.29, 1.04], - 'AG': [0.78, 0.36, 0.09, 0.68, -0.24, -0.62], - 'AT': [1.07, 0.22, 0.62, -1.02, 2.51, 1.17], - 'CA': [-1.38, -1.36, -0.27, -0.86, -0.62, -1.25], - 'CC': [0.06, 1.08, 0.09, 0.56, -0.82, 0.24], - 'CG': [-1.66, -1.22, -0.44, -0.82, -0.29, -1.39], - 'CT': [0.78, 0.36, 0.09, 0.68, -0.24, -0.62], - 'GA': [-0.08, 0.5, 0.27, 0.13, -0.39, 0.71], - 'GC': [-0.08, 0.22, 1.33, -0.35, 0.65, 1.59], - 'GG': [0.06, 1.08, 0.09, 0.56, -0.82, 0.24], - 'GT': [1.50, 0.50, 0.80, 0.13, 1.29, 1.04], - 'TA': [-1.23, -2.37, -0.44, -2.24, -1.51, -1.39], - 'TC': [-0.08, 0.5, 0.27, 0.13, -0.39, 0.71], - 'TG': [-1.38, -1.36, -0.27, -0.86, -0.62, -1.25], - 'TT': [0.06, 0.5, 0.27, 1.59, 0.11, -0.11]} - - sequence_list = GetData(input_data) - phyche_value = ExtendPhycheIndex(original_phyche_value, extra_phyche_index) - - return sequence_list, phyche_value
- - -
[docs]def GetSequenceListAndPhycheValuePseknc(input_data, extra_phyche_index=None): - """For PseDNC, PseKNC, make sequence_list and phyche_value. - - :param input_data: file type or handle. - :param extra_phyche_index: dict, the key is the dinucleotide (string), - the value is its physicochemical property value (list). - It means the user-defined physicochemical indices. - """ - if extra_phyche_index is None: - extra_phyche_index = {} - - original_phyche_value = { - 'AA': [0.06, 0.5, 0.09, 1.59, 0.11, -0.11], - 'AC': [1.5, 0.5, 1.19, 0.13, 1.29, 1.04], - 'GT': [1.5, 0.5, 1.19, 0.13, 1.29, 1.04], - 'AG': [0.78, 0.36, -0.28, 0.68, -0.24, -0.62], - 'CC': [0.06, 1.08, -0.28, 0.56, -0.82, 0.24], - 'CA': [-1.38, -1.36, -1.01, -0.86, -0.62, -1.25], - 'CG': [-1.66, -1.22, -1.38, -0.82, -0.29, -1.39], - 'TT': [0.06, 0.5, 0.09, 1.59, 0.11, -0.11], - 'GG': [0.06, 1.08, -0.28, 0.56, -0.82, 0.24], - 'GC': [-0.08, 0.22, 2.3, -0.35, 0.65, 1.59], - 'AT': [1.07, 0.22, 0.83, -1.02, 2.51, 1.17], - 'GA': [-0.08, 0.5, 0.09, 0.13, -0.39, 0.71], - 'TG': [-1.38, -1.36, -1.01, -0.86, -0.62, -1.25], - 'TA': [-1.23, -2.37, -1.38, -2.24, -1.51, -1.39], - 'TC': [-0.08, 0.5, 0.09, 0.13, -0.39, 0.71], - 'CT': [0.78, 0.36, -0.28, 0.68, -0.24, -0.62]} - - sequence_list = GetData(input_data) - phyche_value = ExtendPhycheIndex(original_phyche_value, extra_phyche_index) - - return sequence_list, phyche_value
- - -
[docs]def GetSequenceListAndPhycheValue(input_data, k, phyche_index, extra_phyche_index, all_property): - """For PseKNC-general make sequence_list and phyche_value. - - :param input_data: file type or handle. - :param k: int, the value of k-tuple. - :param k: physicochemical properties list. - :param extra_phyche_index: dict, the key is the dinucleotide (string), - the value is its physicochemical property value (list). - It means the user-defined physicochemical indices. - :param all_property: bool, choose all physicochemical properties or not. - """ - if phyche_index is None: - phyche_index = [] - if extra_phyche_index is None: - extra_phyche_index = {} - - diphyche_list = ['Base stacking', 'Protein induced deformability', 'B-DNA twist', 'Dinucleotide GC Content', - 'A-philicity', 'Propeller twist', 'Duplex stability:(freeenergy)', - 'Duplex tability(disruptenergy)', 'DNA denaturation', 'Bending stiffness', 'Protein DNA twist', - 'Stabilising energy of Z-DNA', 'Aida_BA_transition', 'Breslauer_dG', 'Breslauer_dH', - 'Breslauer_dS', 'Electron_interaction', 'Hartman_trans_free_energy', 'Helix-Coil_transition', - 'Ivanov_BA_transition', 'Lisser_BZ_transition', 'Polar_interaction', 'SantaLucia_dG', - 'SantaLucia_dH', 'SantaLucia_dS', 'Sarai_flexibility', 'Stability', 'Stacking_energy', - 'Sugimoto_dG', 'Sugimoto_dH', 'Sugimoto_dS', 'Watson-Crick_interaction', 'Twist', 'Tilt', 'Roll', - 'Shift', 'Slide', 'Rise'] - triphyche_list = ['Dnase I', 'Bendability (DNAse)', 'Bendability (consensus)', 'Trinucleotide GC Content', - 'Nucleosome positioning', 'Consensus_roll', 'Consensus-Rigid', 'Dnase I-Rigid', 'MW-Daltons', - 'MW-kg', 'Nucleosome', 'Nucleosome-Rigid'] - - # Set and check physicochemical properties. - phyche_list = [] - if k == 2: - phyche_list = diphyche_list - elif k == 3: - phyche_list = triphyche_list - - try: - if all_property is True: - phyche_index = phyche_list - else: - for e in phyche_index: - if e not in phyche_list: - error_info = 'Sorry, the physicochemical properties ' + e + ' is not exit.' - raise NameError(error_info) - except NameError: - raise - - # Generate phyche_value and sequence_list. - from PyDNApsenacutil import GetPhycheIndex - - phyche_value = ExtendPhycheIndex(GetPhycheIndex(k, phyche_index), extra_phyche_index) - sequence_list = GetData(input_data) - - return sequence_list, phyche_value
- - - -
[docs]def GetPseDNC(input_data,**kwargs): - """Make PseDNC dictionary. - - :param input_data: file type or handle. - :param k: k-tuple. - :param extra_phyche_index: dict, the key is the dinucleotide (string), - the value is its physicochemical property value (list). - It means the user-defined physicochemical indices. - """ - if 'lamada' in kwargs: - lamada = kwargs['lamada'] - else: - lamada = 3 - if 'w' in kwargs: - w =kwargs['w'] - else: - w = 0.05 - - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 2 - if 'extra_phyche_index' in kwargs: - kwargs = kwargs['extra_phyche_index'] - else: - extra_phyche_index = None - - input_data = [input_data] - sequence_list, phyche_value = GetSequenceListAndPhycheValuePsednc(input_data, extra_phyche_index) - from PyDNApsenacutil import MakePsekncVector - - vector = MakePsekncVector(sequence_list, lamada, w, k, phyche_value, theta_type=1) - dict_keys = ['PseDNC_%s'%i for i in range(1,len(vector[0])+1)] - res = dict(zip(dict_keys,vector[0])) - return res
- - -
[docs]def GetPseKNC(input_data,**kwargs): - """Make PseKNC dictionary. - - :param input_data: file type or handle. - :param k: k-tuple. - :param extra_phyche_index: dict, the key is the dinucleotide (string), - the value is its physicochemical property value (list). - It means the user-defined physicochemical indices. - """ - - if 'lamada' in kwargs: - lamada = kwargs['lamada'] - else: - lamada = 1 - if 'w' in kwargs: - w =kwargs['w'] - else: - w = 0.5 - - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 3 - if 'extra_phyche_index' in kwargs: - kwargs = kwargs['extra_phyche_index'] - else: - extra_phyche_index = None - input_data = [input_data] - sequence_list, phyche_value = GetSequenceListAndPhycheValuePseknc(input_data, extra_phyche_index) - from PyDNApsenacutil import MakeOldPsekncVector - - vector = MakeOldPsekncVector(sequence_list, lamada, w, k, phyche_value, theta_type=1) - dict_keys = ['PseKNC_%s'%i for i in range(1,len(vector[0])+1)] - res = dict(zip(dict_keys,vector[0])) - return res
- -
[docs]def GetPCPseDNC(input_data,**kwargs): - """Make a PCPseDNC dictionary. - - :param input_data: file object or sequence list. - :param phyche_index: physicochemical properties list. - :param all_property: choose all physicochemical properties or not. - :param extra_phyche_index: dict, the key is the dinucleotide (string), - the value is its physicochemical property value (list). - It means the user-defined physicochemical indices. - """ - - if 'lamada' in kwargs: - lamada = kwargs['lamada'] - else: - lamada = 1 - if 'w' in kwargs: - w =kwargs['w'] - else: - w = 0.05 - - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 2 - if 'phyche_index' in kwargs: - phyche_index = kwargs['phyche_index'] - else: - phyche_index = None - if 'all_property' in kwargs: - all_property = kwargs['all_property'] - else: - all_property = False - if 'extra_phyche_index' in kwargs: - extra_phyche_index = kwargs['extra_phyche_index'] - else: - extra_phyche_index = None - - # Make vector. - input_data = [input_data] - sequence_list, phyche_value = GetSequenceListAndPhycheValue(input_data, k, phyche_index, - extra_phyche_index, all_property) - from PyDNApsenacutil import MakePsekncVector - - vector = MakePsekncVector(sequence_list, lamada, w, k, phyche_value, theta_type=1) - - dict_keys = ['PCPseDNC_%s'%i for i in range(1,len(vector[0])+1)] - res = dict(zip(dict_keys,vector[0])) - return res
- - - - -
[docs]def GetPCPseTNC(input_data, **kwargs): - """Make a PCPseDNC dictionary. - - :param input_data: file object or sequence list. - :param phyche_index: physicochemical properties list. - :param all_property: choose all physicochemical properties or not. - :param extra_phyche_index: dict, the key is the dinucleotide (string), - the value is its physicochemical property value (list). - It means the user-defined physicochemical indices. - """ - if 'lamada' in kwargs: - lamada = kwargs['lamada'] - else: - lamada = 1 - if 'w' in kwargs: - w =kwargs['w'] - else: - w = 0.05 - - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 3 - if 'phyche_index' in kwargs: - phyche_index = kwargs['phyche_index'] - else: - phyche_index = None - if 'all_property' in kwargs: - all_property = kwargs['all_property'] - else: - all_property = False - if 'extra_phyche_index' in kwargs: - extra_phyche_index = kwargs['extra_phyche_index'] - else: - extra_phyche_index = None - - input_data = [input_data] - sequence_list, phyche_value = GetSequenceListAndPhycheValue(input_data, k, phyche_index, - extra_phyche_index, all_property) - # Make vector. - from PyDNApsenacutil import MakePsekncVector - - vector = MakePsekncVector(sequence_list, lamada, w, k, phyche_value, theta_type=1) - dict_keys = ['PCPseTNC_%s'%i for i in range(1,len(vector[0])+1)] - res = dict(zip(dict_keys,vector[0])) - return res
- - - -
[docs]def GetSCPseDNC(input_data, **kwargs): - """Make a SCPseDNC dictionary. - - :param input_data: file object or sequence list. - :param phyche_index: physicochemical properties list. - :param all_property: choose all physicochemical properties or not. - :param extra_phyche_index: dict, the key is the dinucleotide (string), - the value is its physicochemical property value (list). - It means the user-defined physicochemical indices. - """ - if 'lamada' in kwargs: - lamada = kwargs['lamada'] - else: - lamada = 1 - if 'w' in kwargs: - w =kwargs['w'] - else: - w = 0.05 - - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 2 - if 'phyche_index' in kwargs: - phyche_index = kwargs['phyche_index'] - else: - phyche_index = None - if 'all_property' in kwargs: - all_property = kwargs['all_property'] - else: - all_property = False - if 'extra_phyche_index' in kwargs: - extra_phyche_index = kwargs['extra_phyche_index'] - else: - extra_phyche_index = None - - input_data = [input_data] - sequence_list, phyche_value = GetSequenceListAndPhycheValue(input_data, k, phyche_index, - extra_phyche_index, all_property) - # Make vector. - from PyDNApsenacutil import MakePsekncVector - - vector = MakePsekncVector(sequence_list, lamada, w, k, phyche_value, theta_type=2) - dict_keys = ['SCPseDNC_%s'%i for i in range(1,len(vector[0])+1)] - res = dict(zip(dict_keys,vector[0])) - return res
- - - - - -
[docs]def GetSCPseTNC(input_data, **kwargs): - """Make a SCPseTNC dictionary. - - :param input_data: file object or sequence list. - :param phyche_index: physicochemical properties list. - :param all_property: choose all physicochemical properties or not. - :param extra_phyche_index: dict, the key is the dinucleotide (string), - the value is its physicochemical property value (list). - It means the user-defined physicochemical indices. - """ - - if 'lamada' in kwargs: - lamada = kwargs['lamada'] - else: - lamada = 1 - if 'w' in kwargs: - w =kwargs['w'] - else: - w = 0.05 - - if 'k' in kwargs: - k = kwargs['k'] - else: - k = 3 - if 'phyche_index' in kwargs: - phyche_index = kwargs['phyche_index'] - else: - phyche_index = None - if 'all_property' in kwargs: - all_property = kwargs['all_property'] - else: - all_property = False - if 'extra_phyche_index' in kwargs: - extra_phyche_index = kwargs['extra_phyche_index'] - else: - extra_phyche_index = None - - - input_data = [input_data] - sequence_list, phyche_value = GetSequenceListAndPhycheValue(input_data, k, phyche_index, - extra_phyche_index, all_property) - # Make vector. - from PyDNApsenacutil import MakePsekncVector - - vector = MakePsekncVector(sequence_list, lamada, w, k, phyche_value, theta_type=2) - - dict_keys = ['SCPseTNC_%s'%i for i in range(1,len(vector[0])+1)] - res = dict(zip(dict_keys,vector[0])) - return res
- - - - -if __name__ == '__main__': - psednc = GetPseDNC('ACCCCA',lamada=2, w=0.05) - print(psednc) - - PC_psednc = GetPCPseDNC('ACCCCA', phyche_index=["Tilt", 'Twist', 'Rise', 'Roll', 'Shift', 'Slide'],lamada=2, w=0.05) - print(PC_psednc) - - pc_psetnc = GetPCPseTNC('ACCCCA', phyche_index=['Dnase I', 'Nucleosome'],lamada=2, w=0.05) - print(pc_psetnc) - - sc_psednc = GetSCPseDNC('ACCCCCA', phyche_index=['Twist', 'Tilt'],lamada=2, w=0.05) - print(sc_psednc) - - sc_psetnc = GetSCPseTNC('ACCCCCA', phyche_index=['Dnase I', 'Nucleosome'],lamada=1, w=0.05) - print(sc_psetnc) - - sc_psetnc = GetSCPseTNC('ACCCCA', phyche_index=["Dnase I", 'Nucleosome'], lamada=2, w=0.05) - print(sc_psetnc) - - import time - from PyDNAutil import NormalizeIndex - - start_time = time.time() - - phyche_index = [[1.019, -0.918, 0.488, 0.567, 0.567, -0.070, -0.579, 0.488, -0.654, -2.455, -0.070, -0.918, 1.603, - -0.654, 0.567, 1.019]] - - print('Begin PseDNC') - - dic = GetPseDNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC') - print(dic) - print(len(dic)) - - - dic = GetPseKNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC') - print(dic) - print(len(dic)) - - print('PC-PseDNC') - dic = GetPCPseDNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt']) - print(dic) - print(len(dic)) - - dic = GetPCPseTNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',lamada=1, w=0.05,k=2,phyche_index=['Twist', 'Tilt']) - print(dic) - print(len(dic)) - - - - - phyche_index = [ - [7.176, 6.272, 4.736, 7.237, 3.810, 4.156, 4.156, 6.033, 3.410, 3.524, 4.445, 6.033, 1.613, 5.087, 2.169, 7.237, - 3.581, 3.239, 1.668, 2.169, 6.813, 3.868, 5.440, 4.445, 3.810, 4.678, 5.440, 4.156, 2.673, 3.353, 1.668, 4.736, - 4.214, 3.925, 3.353, 5.087, 2.842, 2.448, 4.678, 3.524, 3.581, 2.448, 3.868, 4.156, 3.467, 3.925, 3.239, 6.272, - 2.955, 3.467, 2.673, 1.613, 1.447, 3.581, 3.810, 3.410, 1.447, 2.842, 6.813, 3.810, 2.955, 4.214, 3.581, 7.176] - ] - from PyDNAutil import NormalizeIndex - - dic = GetPCPseTNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(dic) - print(len(dic)) - - print('SC-PseDNC') - dic = GetSCPseDNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt']) - print(dic) - print(len(dic)) - - dic = GetSCPseDNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', all_property=True,lamada=2, w=0.05) - print(dic) - print(len(dic)) - - phyche_index = [[1.019, -0.918, 0.488, 0.567, 0.567, -0.070, -0.579, 0.488, -0.654, -2.455, -0.070, -0.918, 1.603, - -0.654, 0.567, 1.019]] - from PyDNAutil import NormalizeIndex - - dic = GetSCPseDNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(dic) - print(len(dic)) - print() - - print('SC-PseTNC') - dic= GetSCPseTNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome']) - print(dic) - print(len(dic)) - - - dic = GetSCPseTNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', all_property=True,lamada=2, w=0.05) - print(dic) - print(len(dic)) - - phyche_index = [ - [7.176, 6.272, 4.736, 7.237, 3.810, 4.156, 4.156, 6.033, 3.410, 3.524, 4.445, 6.033, 1.613, 5.087, 2.169, 7.237, - 3.581, 3.239, 1.668, 2.169, 6.813, 3.868, 5.440, 4.445, 3.810, 4.678, 5.440, 4.156, 2.673, 3.353, 1.668, 4.736, - 4.214, 3.925, 3.353, 5.087, 2.842, 2.448, 4.678, 3.524, 3.581, 2.448, 3.868, 4.156, 3.467, 3.925, 3.239, 6.272, - 2.955, 3.467, 2.673, 1.613, 1.447, 3.581, 3.810, 3.410, 1.447, 2.842, 6.813, 3.810, 2.955, 4.214, 3.581, 7.176] - ] - from PyDNAutil import NormalizeIndex - - dic = GetSCPseTNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(dic) - print(len(dic)) - - # Normalize PseDNC index Twist, Tilt, Roll, Shift, Slide, Rise. - original_phyche_value = [ - [0.026, 0.036, 0.031, 0.033, 0.016, 0.026, 0.014, 0.031, 0.025, 0.025, 0.026, 0.036, 0.017, 0.025, 0.016, 0.026], - [0.038, 0.038, 0.037, 0.036, 0.025, 0.042, 0.026, 0.037, 0.038, 0.036, 0.042, 0.038, 0.018, 0.038, 0.025, 0.038], - [0.020, 0.023, 0.019, 0.022, 0.017, 0.019, 0.016, 0.019, 0.020, 0.026, 0.019, 0.023, 0.016, 0.020, 0.017, 0.020], - [1.69, 1.32, 1.46, 1.03, 1.07, 1.43, 1.08, 1.46, 1.32, 1.20, 1.43, 1.32, 0.72, 1.32, 1.07, 1.69], - [2.26, 3.03, 2.03, 3.83, 1.78, 1.65, 2.00, 2.03, 1.93, 2.61, 1.65, 3.03, 1.20, 1.93, 1.78, 2.26], - [7.65, 8.93, 7.08, 9.07, 6.38, 8.04, 6.23, 7.08, 8.56, 9.53, 8.04, 8.93, 6.23, 8.56, 6.38, 7.65]] - for e in NormalizeIndex(original_phyche_value, is_convert_dict=True).items(): - print(e) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyDNApsenacutil.html b/PyBioMed/doc/_build/html/_modules/PyDNApsenacutil.html deleted file mode 100644 index cb110e8..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyDNApsenacutil.html +++ /dev/null @@ -1,356 +0,0 @@ - - - - - - - - PyDNApsenacutil — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyDNApsenacutil

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-
-A class used for computing different types of DNA descriptors! 
-
-You can freely use and distribute it. If you have any problem, 
-
-you could contact with us timely.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.14
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-import sys
-import os
-import pickle
-from math import pow
-
-from PyDNAutil import Frequency
-from PyDNAnacutil import MakeKmerList
-
-
-ALPHABET = 'ACGT'
-
-
-
[docs]def ExtendPhycheIndex(original_index, extend_index): - """Extend {phyche:[value, ... ]}""" - if extend_index is None or len(extend_index) == 0: - return original_index - for key in list(original_index.keys()): - original_index[key].extend(extend_index[key]) - return original_index
- - -global phyche_factor_dic1 -global phyche_factor_dic2 -full_path = os.path.realpath(__file__) - -with open("%s/mmc3.data"%os.path.dirname(full_path), 'rb') as f: - phyche_factor_dic1 = pickle.load(f) - -with open("%s/mmc4.data"%os.path.dirname(full_path), 'rb') as f: - phyche_factor_dic2 = pickle.load(f) - - -
[docs]def GetPhycheFactorDic(k): - """Get all {nucleotide: [(phyche, value), ...]} dict.""" - global phyche_factor_dic1 - global phyche_factor_dic2 - if 2 == k: - phyche_factor_dic = phyche_factor_dic1 - elif 3 == k: - phyche_factor_dic = phyche_factor_dic2 - else: - sys.stderr.write("The k can just be 2 or 3.") - sys.exit(0) - - return phyche_factor_dic
- - -
[docs]def GetPhycheIndex(k, phyche_list): - """get phyche_value according phyche_list.""" - phyche_value = {} - if 0 == len(phyche_list): - for nucleotide in MakeKmerList(k, ALPHABET): - phyche_value[nucleotide] = [] - return phyche_value - - nucleotide_phyche_value = GetPhycheFactorDic(k) - for nucleotide in MakeKmerList(k, ALPHABET): - if nucleotide not in phyche_value: - phyche_value[nucleotide] = [] - for e in nucleotide_phyche_value[nucleotide]: - if e[0] in phyche_list: - phyche_value[nucleotide].append(e[1]) - - return phyche_value
- - -
[docs]def ParallelCorFunction(nucleotide1, nucleotide2, phyche_index): - """Get the cFactor.(Type1)""" - temp_sum = 0.0 - phyche_index_values = list(phyche_index.values()) - len_phyche_index = len(phyche_index_values[0]) - for u in range(len_phyche_index): - temp_sum += pow(float(phyche_index[nucleotide1][u]) - float(phyche_index[nucleotide2][u]), 2) - - return temp_sum / len_phyche_index
- - -
[docs]def SeriesCorFunction(nucleotide1, nucleotide2, big_lamada, phyche_value): - """Get the series correlation Factor(Type 2).""" - return float(phyche_value[nucleotide1][big_lamada]) * float(phyche_value[nucleotide2][big_lamada])
- - -
[docs]def GetParallelFactor(k, lamada, sequence, phyche_value): - """Get the corresponding factor theta list.""" - theta = [] - l = len(sequence) - - for i in range(1, lamada + 1): - temp_sum = 0.0 - for j in range(0, l - k - i + 1): - nucleotide1 = sequence[j: j+k] - nucleotide2 = sequence[j+i: j+i+k] - temp_sum += ParallelCorFunction(nucleotide1, nucleotide2, phyche_value) - - theta.append(temp_sum / (l - k - i + 1)) - - return theta
- - -
[docs]def GetSeriesFactor(k, lamada, sequence, phyche_value): - """Get the corresponding series factor theta list.""" - theta = [] - l_seq = len(sequence) - temp_values = list(phyche_value.values()) - max_big_lamada = len(temp_values[0]) - - for small_lamada in range(1, lamada + 1): - for big_lamada in range(max_big_lamada): - temp_sum = 0.0 - for i in range(0, l_seq - k - small_lamada + 1): - nucleotide1 = sequence[i: i+k] - nucleotide2 = sequence[i+small_lamada: i+small_lamada+k] - temp_sum += SeriesCorFunction(nucleotide1, nucleotide2, big_lamada, phyche_value) - - theta.append(temp_sum / (l_seq - k - small_lamada + 1)) - - return theta
- - -
[docs]def MakePsekncVector(sequence_list, lamada, w, k, phyche_value, theta_type=1): - """Generate the pseknc vector.""" - kmer = MakeKmerList(k, ALPHABET) - vector = [] - - for sequence in sequence_list: - if len(sequence) < k or lamada + k > len(sequence): - error_info = "Sorry, the sequence length must be larger than " + str(lamada + k) - sys.stderr.write(error_info) - sys.exit(0) - - # Get the nucleotide frequency in the DNA sequence. - fre_list = [Frequency(sequence, str(key)) for key in kmer] - fre_sum = float(sum(fre_list)) - - # Get the normalized occurrence frequency of nucleotide in the DNA sequence. - fre_list = [e / fre_sum for e in fre_list] - - # Get the theta_list according the Equation 5. - if 1 == theta_type: - theta_list = GetParallelFactor(k, lamada, sequence, phyche_value) - elif 2 == theta_type: - theta_list = GetSeriesFactor(k, lamada, sequence, phyche_value) - theta_sum = sum(theta_list) - - # Generate the vector according the Equation 9. - denominator = 1 + w * theta_sum - - temp_vec = [round(f / denominator, 3) for f in fre_list] - for theta in theta_list: - temp_vec.append(round(w * theta / denominator, 4)) - - vector.append(temp_vec) - - return vector
- - -
[docs]def GetParallelFactorPsednc(lamada, sequence, phyche_value): - """Get the corresponding factor theta list. - This def is just for dinucleotide.""" - theta = [] - l = len(sequence) - - for i in range(1, lamada + 1): - temp_sum = 0.0 - for j in range(0, l - 1 - lamada): - nucleotide1 = sequence[j] + sequence[j + 1] - nucleotide2 = sequence[j + i] + sequence[j + i + 1] - temp_sum += ParallelCorFunction(nucleotide1, nucleotide2, phyche_value) - - theta.append(temp_sum / (l - i - 1)) - - return theta
- - -
[docs]def MakeOldPsekncVector(sequence_list, lamada, w, k, phyche_value, theta_type=1): - """Generate the pseknc vector.""" - kmer = MakeKmerList(k, ALPHABET) - vector = [] - - for sequence in sequence_list: - if len(sequence) < k or lamada + k > len(sequence): - error_info = "Sorry, the sequence length must be larger than " + str(lamada + k) - sys.stderr.write(error_info) - sys.exit(0) - - # Get the nucleotide frequency in the DNA sequence. - fre_list = [Frequency(sequence, str(key)) for key in kmer] - fre_sum = float(sum(fre_list)) - - # Get the normalized occurrence frequency of nucleotide in the DNA sequence. - fre_list = [e / fre_sum for e in fre_list] - - # Get the theta_list according the Equation 5. - if 1 == theta_type: - theta_list = GetParallelFactorPsednc(lamada, sequence, phyche_value) - elif 2 == theta_type: - theta_list = GetSeriesFactor(k, lamada, sequence, phyche_value) - theta_sum = sum(theta_list) - - # Generate the vector according the Equation 9. - denominator = 1 + w * theta_sum - - temp_vec = [round(f / denominator, 3) for f in fre_list] - for theta in theta_list: - temp_vec.append(round(w * theta / denominator, 4)) - - vector.append(temp_vec) - - return vector
- - -if __name__ == '__main__': - # get_phyche_index(2, ['Base stacking']) - extra_phyche_index = {'AA': [0.06, 0.5, 0.27, 1.59, 0.11, -0.11, 1], - 'AC': [1.50, 0.50, 0.80, 0.13, 1.29, 1.04, 1], - 'AG': [0.78, 0.36, 0.09, 0.68, -0.24, -0.62, 1], - 'AT': [1.07, 0.22, 0.62, -1.02, 2.51, 1.17, 1], - 'CA': [-1.38, -1.36, -0.27, -0.86, -0.62, -1.25, 1], - 'CC': [0.06, 1.08, 0.09, 0.56, -0.82, 0.24, 1], - 'CG': [-1.66, -1.22, -0.44, -0.82, -0.29, -1.39, 1], - 'CT': [0.78, 0.36, 0.09, 0.68, -0.24, -0.62, 1], - 'GA': [-0.08, 0.5, 0.27, 0.13, -0.39, 0.71, 1], - 'GC': [-0.08, 0.22, 1.33, -0.35, 0.65, 1.59, 1], - 'GG': [0.06, 1.08, 0.09, 0.56, -0.82, 0.24, 1], - 'GT': [1.50, 0.50, 0.80, 0.13, 1.29, 1.04, 1], - 'TA': [-1.23, -2.37, -0.44, -2.24, -1.51, -1.39, 1], - 'TC': [-0.08, 0.5, 0.27, 0.13, -0.39, 0.71, 1], - 'TG': [-1.38, -1.36, -0.27, -0.86, -0.62, -1.25, 1], - 'TT': [0.06, 0.5, 0.27, 1.59, 0.11, -0.11, 1]} - phyche_index = ExtendPhycheIndex(GetPhycheIndex(k=2, phyche_list=['Base stacking', 'DNA denaturation']), - extra_phyche_index) - #print(phyche_index) - import pandas as pd - df = pd.DataFrame(GetPhycheFactorDic(3)) - - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyDNAutil.html b/PyBioMed/doc/_build/html/_modules/PyDNAutil.html deleted file mode 100644 index d268e6c..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyDNAutil.html +++ /dev/null @@ -1,542 +0,0 @@ - - - - - - - - PyDNAutil — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyDNAutil

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-Created on Wed May 18 14:06:37 2016
-
-@author: yzj
-"""
-
-
-import sys
-
-ALPHABET = 'ACGT'
-
-
-"""Used for process original data."""
-
-
-
[docs]class Seq: - def __init__(self, name, seq, no): - self.name = name - self.seq = seq.upper() - self.no = no - self.length = len(seq) - - def __str__(self): - """Output seq when 'print' method is called.""" - return "%s\tNo:%s\tlength:%s\n%s" % (self.name, str(self.no), str(self.length), self.seq)
- - -
[docs]def IsUnderAlphabet(s, alphabet): - """ - ################################################################# - Judge the string is within the scope of the alphabet or not. - - :param s: The string. - :param alphabet: alphabet. - - Return True or the error character. - ################################################################# - """ - for e in s: - if e not in alphabet: - return e - - return True
- - -
[docs]def IsFasta(seq): - """ - ################################################################# - Judge the Seq object is in FASTA format. - Two situation: - 1. No seq name. - 2. Seq name is illegal. - 3. No sequence. - - :param seq: Seq object. - ################################################################# - """ - if not seq.name: - error_info = 'Error, sequence ' + str(seq.no) + ' has no sequence name.' - print(seq) - sys.stderr.write(error_info) - return False - if -1 != seq.name.find('>'): - error_info = 'Error, sequence ' + str(seq.no) + ' name has > character.' - sys.stderr.write(error_info) - return False - if 0 == seq.length: - error_info = 'Error, sequence ' + str(seq.no) + ' is null.' - sys.stderr.write(error_info) - return False - - return True
- - -
[docs]def ReadFasta(f): - """ - ################################################################# - Read a fasta file. - - :param f: HANDLE to input. e.g. sys.stdin, or open(<file>) - - Return Seq obj list. - ################################################################# - """ - name, seq = '', '' - count = 0 - seq_list = [] - lines = f.readlines() - for line in lines: - if not line: - break - - if '>' == line[0]: - if 0 != count or (0 == count and seq != ''): - if IsFasta(Seq(name, seq, count)): - seq_list.append(Seq(name, seq, count)) - else: - sys.exit(0) - - seq = '' - name = line[1:].strip() - count += 1 - else: - seq += line.strip() - - count += 1 - if IsFasta(Seq(name, seq, count)): - seq_list.append(Seq(name, seq, count)) - else: - sys.exit(0) - - return seq_list
- - -
[docs]def ReadFastaYield(f): - """ - ################################################################# - Yields a Seq object. - - :param f: HANDLE to input. e.g. sys.stdin, or open(<file>) - ################################################################# - """ - name, seq = '', '' - count = 0 - while True: - line = f.readline() - if not line: - break - - if '>' == line[0]: - if 0 != count or (0 == count and seq != ''): - if IsFasta(Seq(name, seq, count)): - yield Seq(name, seq, count) - else: - sys.exit(0) - - seq = '' - name = line[1:].strip() - count += 1 - else: - seq += line.strip() - - if IsFasta(Seq(name, seq, count)): - yield Seq(name, seq, count) - else: - sys.exit(0)
- - -
[docs]def ReadFastaCheckDna(f): - """ - ################################################################# - Read the fasta file, and check its legality. - - :param f: HANDLE to input. e.g. sys.stdin, or open(<file>) - - Return the seq list. - ################################################################# - """ - seq_list = [] - for e in ReadFastaYield(f): - # print e - res = IsUnderAlphabet(e.seq, ALPHABET) - if res: - seq_list.append(e) - else: - error_info = 'Sorry, sequence ' + str(e.no) \ - + ' has character ' + str(res) + '.(The character must be A or C or G or T)' - sys.stderr(error_info) - sys.exit(0) - - return seq_list
- - -
[docs]def GetSequenceCheckDna(f): - """ - ################################################################# - Read the fasta file. - - Input: f: HANDLE to input. e.g. sys.stdin, or open(<file>) - - Return the sequence list. - ################################################################# - """ - sequence_list = [] - for e in ReadFastaYield(f): - # print e - res = IsUnderAlphabet(e.seq, ALPHABET) - if res is not True: - error_info = 'Sorry, sequence ' + str(e.no) \ - + ' has character ' + str(res) + '.(The character must be A, C, G or T)' - sys.stderr.write(error_info) - sys.exit(0) - else: - sequence_list.append(e.seq) - - return sequence_list
- - -
[docs]def IsSequenceList(sequence_list): - """ - ################################################################# - Judge the sequence list is within the scope of alphabet and - change the lowercase to capital. - ################################################################# - """ - count = 0 - new_sequence_list = [] - - for e in sequence_list: - e = e.upper() - count += 1 - res = IsUnderAlphabet(e, ALPHABET) - if res is not True: - error_info = 'Sorry, sequence ' + str(count) \ - + ' has illegal character ' + str(res) + '.(The character must be A, C, G or T)' - sys.stderr.write(error_info) - return False - else: - new_sequence_list.append(e) - - return new_sequence_list
- - -
[docs]def GetData(input_data, desc=False): - """ - ################################################################# - Get sequence data from file or list with check. - - :param input_data: type file or list - :param desc: with this option, the return value will be a Seq object list(it only works in file object). - :return: sequence data or shutdown. - ################################################################# - """ - if hasattr(input_data, 'read'): - if desc is False: - return GetSequenceCheckDna(input_data) - else: - return ReadFastaCheckDna(input_data) - elif isinstance(input_data, list): - input_data = IsSequenceList(input_data) - if input_data is not False: - return input_data - else: - sys.exit(0) - else: - error_info = 'Sorry, the parameter in get_data method must be list or file type.' - sys.stderr.write(error_info) - sys.exit(0)
- - -"""Some basic function for generate feature vector.""" - - -
[docs]def Frequency(tol_str, tar_str): - """ - ################################################################# - Generate the frequency of tar_str in tol_str. - - :param tol_str: mother string. - :param tar_str: substring. - ################################################################# - """ - i, j, tar_count = 0, 0, 0 - len_tol_str = len(tol_str) - len_tar_str = len(tar_str) - while i < len_tol_str and j < len_tar_str: - if tol_str[i] == tar_str[j]: - i += 1 - j += 1 - if j >= len_tar_str: - tar_count += 1 - i = i - j + 1 - j = 0 - else: - i = i - j + 1 - j = 0 - - return tar_count
- - -
[docs]def WriteLibsvm(vector_list, label_list, write_file): - """ - ################################################################# - Write the vector into disk in libSVM format. - ################################################################# - """ - len_vector_list = len(vector_list) - len_label_list = len(label_list) - if len_vector_list == 0: - sys.stderr.write("The vector is none.") - sys.exit(1) - if len_label_list == 0: - sys.stderr.write("The label is none.") - sys.exit(1) - if len_vector_list != len_label_list: - sys.stderr.write("The length of vector and label is different.") - sys.exit(1) - - with open(write_file, 'w') as f: - len_vector = len(vector_list[0]) - for i in range(len_vector_list): - temp_write = str(label_list[i]) - for j in range(0, len_vector): - temp_write += ' ' + str(j + 1) + ':' + str(vector_list[i][j]) - f.write(temp_write) - f.write('\n')
- - -
[docs]def GeneratePhycheValue(k, phyche_index=None, all_property=False, extra_phyche_index=None): - """ - ################################################################# - Combine the user selected phyche_list, is_all_property and - extra_phyche_index to a new standard phyche_value. - ################################################################# - """ - if phyche_index is None: - phyche_index = [] - if extra_phyche_index is None: - extra_phyche_index = {} - - diphyche_list = ['Base stacking', 'Protein induced deformability', 'B-DNA twist', 'Dinucleotide GC Content', - 'A-philicity', 'Propeller twist', 'Duplex stability:(freeenergy)', - 'Duplex tability(disruptenergy)', 'DNA denaturation', 'Bending stiffness', 'Protein DNA twist', - 'Stabilising energy of Z-DNA', 'Aida_BA_transition', 'Breslauer_dG', 'Breslauer_dH', - 'Breslauer_dS', 'Electron_interaction', 'Hartman_trans_free_energy', 'Helix-Coil_transition', - 'Ivanov_BA_transition', 'Lisser_BZ_transition', 'Polar_interaction', 'SantaLucia_dG', - 'SantaLucia_dH', 'SantaLucia_dS', 'Sarai_flexibility', 'Stability', 'Stacking_energy', - 'Sugimoto_dG', 'Sugimoto_dH', 'Sugimoto_dS', 'Watson-Crick_interaction', 'Twist', 'Tilt', - 'Roll', 'Shift', 'Slide', 'Rise'] - triphyche_list = ['Dnase I', 'Bendability (DNAse)', 'Bendability (consensus)', 'Trinucleotide GC Content', - 'Nucleosome positioning', 'Consensus_roll', 'Consensus-Rigid', 'Dnase I-Rigid', 'MW-Daltons', - 'MW-kg', 'Nucleosome', 'Nucleosome-Rigid'] - - # Set and check physicochemical properties. - if 2 == k: - if all_property is True: - phyche_index = diphyche_list - else: - for e in phyche_index: - if e not in diphyche_list: - error_info = 'Sorry, the physicochemical properties ' + e + ' is not exit.' - import sys - - sys.stderr.write(error_info) - sys.exit(0) - elif 3 == k: - if all_property is True: - phyche_index = triphyche_list - else: - for e in phyche_index: - if e not in triphyche_list: - error_info = 'Sorry, the physicochemical properties ' + e + ' is not exit.' - import sys - - sys.stderr.write(error_info) - sys.exit(0) - - # Generate phyche_value. - from PyBioMed.PyDNA.PyDNApsenacutil import GetPhycheIndex, ExtendPhycheIndex - - return ExtendPhycheIndex(GetPhycheIndex(k, phyche_index), extra_phyche_index)
- - -
[docs]def ConvertPhycheIndexToDict(phyche_index): - """ - ################################################################# - Convert phyche index from list to dict. - ################################################################# - """ - # for e in phyche_index: - # print e - len_index_value = len(phyche_index[0]) - k = 0 - for i in range(1, 10): - if len_index_value < 4**i: - error_infor = 'Sorry, the number of each index value is must be 4^k.' - sys.stdout.write(error_infor) - sys.exit(0) - if len_index_value == 4**i: - k = i - break - from PyBioMed.PyDNA.PyDNAnacutil import MakeKmerList - kmer_list = MakeKmerList(k, ALPHABET) - # print kmer_list - len_kmer = len(kmer_list) - phyche_index_dict = {} - for kmer in kmer_list: - phyche_index_dict[kmer] = [] - # print phyche_index_dict - phyche_index = list(zip(*phyche_index)) - for i in range(len_kmer): - phyche_index_dict[kmer_list[i]] = list(phyche_index[i]) - - return phyche_index_dict
- - -
[docs]def StandardDeviation(value_list): - """ - ################################################################# - Return standard deviation. - ################################################################# - """ - from math import sqrt - from math import pow - n = len(value_list) - average_value = sum(value_list) * 1.0 / n - return sqrt(sum([pow(e - average_value, 2) for e in value_list]) * 1.0 / (n-1))
- - -
[docs]def NormalizeIndex(phyche_index, is_convert_dict=False): - """ - ################################################################# - Normalize the physicochemical index. - ################################################################# - """ - normalize_phyche_value = [] - for phyche_value in phyche_index: - average_phyche_value = sum(phyche_value) * 1.0 / len(phyche_value) - sd_phyche = StandardDeviation(phyche_value) - normalize_phyche_value.append([round((e - average_phyche_value) / sd_phyche, 2) for e in phyche_value]) - - if is_convert_dict is True: - return ConvertPhycheIndexToDict(normalize_phyche_value) - - return normalize_phyche_value
- - -
[docs]def DNAChecks(s): - for e in s: - if e not in ALPHABET: - return e - return True
- - -if __name__ == "__main__": - re =['GACTGAACTGCACTTTGGTTTCATATTATTTGCTC'] - - - phyche_index = [[1.019, -0.918, 0.488, 0.567, 0.567, -0.070, -0.579, 0.488, -0.654, -2.455,-0.070, -0.918, 1.603, -0.654, 0.567, 1.019]] - print (NormalizeIndex(phyche_index,is_convert_dict = False)[0]) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyInteraction.html b/PyBioMed/doc/_build/html/_modules/PyInteraction.html deleted file mode 100644 index f5f2701..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyInteraction.html +++ /dev/null @@ -1,250 +0,0 @@ - - - - - - - - PyInteraction — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyInteraction

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-The calculation of interaction descriptors. You can choose three types of 
-
-interacation descriptors. You can freely use and distribute it. If you 
-
-hava any problem, you could contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.14
-
-Email: gadsby@163.com 
-"""
-
-##############################################################################
-
[docs]def CalculateInteraction1(dict1 = {}, dict2 = {}): - ''' - Calculate the two interaction features by combining two different - - features. - - Usage: - - res=CalculateInteraction(dict1,dict2) - - Input: dict1 is a dict form containing features. - - dict2 is a dict form containing features. - - Output: res is a dict form containing interaction - - features. - ''' - result = {} - result.update(dict1) - for i in dict2: - result[i+'ex'] = dict2[i] - - return result
- - -
[docs]def CalculateInteraction2(dict1 = {}, dict2 = {}): - ''' - Calculate the two interaction features by combining two different - - features. - - Usage: - - res=CalculateInteraction(dict1,dict2) - - Input: dict1 is a dict form containing features. - - dict2 is a dict form containing features. - - Output: res is a dict form containing interaction - - features. - ''' - res = {} - for i in dict1: - for j in dict2: - res[i + '*' + j] = round(dict1[i] * dict2[j], 3) - return res
- -
[docs]def CalculateInteraction3(dict1 = {}, dict2 = {}): - ''' - Calculate the two interaction features by - - F=[Fa(i)+Fb(i)),Fa(i)*Fb(i)] (2n) - - It's used in same type of descriptors. - - Usage: - - res=CalculateInteraction(dict1,dict2) - - Input: dict1 is a dict form containing features. - - dict2 is a dict form containing features. - - Output: res is a dict form containing interaction - - features. - ''' - res={} - for i in dict1: - res[i+'+'+i]=round(dict1[i]+dict2[i],3) - res[i+'*'+i]=round(dict1[i]*dict2[i],3) - return res
- - -if __name__ == '__main__': - from PyBioMed.PyDNA import PyDNAac - - DNA_des = PyDNAac.GetTCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome','MW-kg']) - - print DNA_des - - - from PyBioMed.PyProtein import CTD - protein="ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS" - protein_des = CTD.CalculateCTD(protein) - - from PyBioMed.PyMolecule import moe - from rdkit import Chem - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - m = Chem.MolFromSmiles(smis[3]) - mol_des = moe.GetMOE(m) - - mol_mol_interaction1 = CalculateInteraction1(mol_des,mol_des) - print mol_mol_interaction1 - - mol_mol_interaction2 = CalculateInteraction2(mol_des,mol_des) - print mol_mol_interaction2 - - mol_mol_interaction3 = CalculateInteraction3(mol_des,mol_des) - print mol_mol_interaction3 - - pro_mol_interaction1 = CalculateInteraction1(mol_des,protein_des) - print pro_mol_interaction1 - - pro_mol_interaction2 = CalculateInteraction2(mol_des,protein_des) - print pro_mol_interaction2 - - DNA_mol_interaction1 = CalculateInteraction1(DNA_des,mol_des) - print DNA_mol_interaction1 - - DNA_mol_interaction2 = CalculateInteraction2(DNA_des,mol_des) - print DNA_mol_interaction2 - - - - - - - - - - - - - - - - - - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyPreTools.html b/PyBioMed/doc/_build/html/_modules/PyPreTools.html deleted file mode 100644 index dde3d7c..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyPreTools.html +++ /dev/null @@ -1,217 +0,0 @@ - - - - - - - - PyPreTools — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyPreTools

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-This file provides functions to convert descriptors list of multiple molecules (dicts) into CSV
-If you have any questions, please feel free to contact us.
-E-mail: biomed@csu.edu.cn
-
-@File name: PyPreTools
-@author: Jie Dong and Zhijiang Yao
-"""
-import csv
-
[docs]def DictToCSV(MultiDictList, csvOutPath): - """ - Convert descriptors list of multiple molecules (dicts) into CSV - :param MultiDictList: a list contains multiple dicts - :param csvOutPath: path to save CSV file - :return: csvOutPath - """ - try: - desHeader = MultiDictList[0].keys() - desContent = [] - for i in MultiDictList: - temp=[] - for j in desHeader: - temp.append(i.get(j)) - desContent.append(temp) - f = file(csvOutPath, 'w') - writer = csv.writer(f) - writer.writerow(tuple(desHeader)) - for k in desContent: - writer.writerow(tuple(k)) - f.close() - return csvOutPath - except Exception as e: - return str(e)
- -
[docs]def ListToCSV(MultiList, csvOutPath,Name='Des'): - """ - Convert descriptors list of multiple molecules (lists) into CSV - :param MultiList: a list contains multiple lists - :param csvOutPath: path to save CSV file - :return: csvOutPath - """ - try: - desHeader = [] - for index in range(len(MultiList[0])): - desHeader.append(str(Name)+str(index+1)) - desContent = [] - for i in MultiList: - desContent.append(i) - f = file(csvOutPath, 'w') - writer = csv.writer(f) - writer.writerow(tuple(desHeader)) - for k in desContent: - writer.writerow(tuple(k)) - f.close() - return csvOutPath - except Exception as e: - return str(e)
- -
[docs]def TupleToCSV(MultiTupleList, csvOutPath,Name='Des'): - """ - Convert descriptors list of multiple molecules (tuple) into CSV - :param MultiTupleList: a list contains multiple lists - :param csvOutPath: path to save CSV file - :return: csvOutPath - """ - try: - desHeader = [] - for index in range(len(MultiTupleList[0])): - desHeader.append(str(Name)+str(index+1)) - desContent = [] - for i in MultiTupleList: - desContent.append(i) - f = file(csvOutPath, 'w') - writer = csv.writer(f) - writer.writerow(tuple(desHeader)) - for k in desContent: - writer.writerow(k) - f.close() - return csvOutPath - except Exception as e: - return str(e)
- - -if __name__=="__main__": - print 'Only PyBioMed is successfully installed the code below can be run!' - - # uncomment below code as an example to use if you have successfully installed PyBioMed. - - print '-'*10+'START'+'-'*10 - from rdkit import Chem - from PyBioMed.PyMolecule.charge import GetCharge - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - smi5=['CCCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCCCCN','c1ccccc1N'] - - des_list2 = [] - from PyBioMed.PyMolecule.fingerprint import CalculatePubChemFingerprint - - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - des_list2.append(CalculatePubChemFingerprint(m)) - print des_list2 - - print ListToCSV(des_list2,'reeeee.csv','pubchem') - print '-'*25 - - des_list = [] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - des_list.append(GetCharge(m)) - print des_list - - print DictToCSV(des_list,'reeee.csv') - print '-'*25 - - print '-'*10+'END'+'-'*10 -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyPretreatDNA.html b/PyBioMed/doc/_build/html/_modules/PyPretreatDNA.html deleted file mode 100644 index 9ad93a0..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyPretreatDNA.html +++ /dev/null @@ -1,542 +0,0 @@ - - - - - - - - PyPretreatDNA — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyPretreatDNA

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-Created on Wed May 18 14:06:37 2016
-
-@author: yzj
-"""
-
-
-import sys
-
-ALPHABET = 'ACGT'
-
-
-"""Used for process original data."""
-
-
-
[docs]class Seq: - def __init__(self, name, seq, no): - self.name = name - self.seq = seq.upper() - self.no = no - self.length = len(seq) - - def __str__(self): - """Output seq when 'print' method is called.""" - return "%s\tNo:%s\tlength:%s\n%s" % (self.name, str(self.no), str(self.length), self.seq)
- - -
[docs]def IsUnderAlphabet(s, alphabet): - """ - ################################################################# - Judge the string is within the scope of the alphabet or not. - - :param s: The string. - :param alphabet: alphabet. - - Return True or the error character. - ################################################################# - """ - for e in s: - if e not in alphabet: - return e - - return True
- - -
[docs]def IsFasta(seq): - """ - ################################################################# - Judge the Seq object is in FASTA format. - Two situation: - 1. No seq name. - 2. Seq name is illegal. - 3. No sequence. - - :param seq: Seq object. - ################################################################# - """ - if not seq.name: - error_info = 'Error, sequence ' + str(seq.no) + ' has no sequence name.' - print(seq) - sys.stderr.write(error_info) - return False - if -1 != seq.name.find('>'): - error_info = 'Error, sequence ' + str(seq.no) + ' name has > character.' - sys.stderr.write(error_info) - return False - if 0 == seq.length: - error_info = 'Error, sequence ' + str(seq.no) + ' is null.' - sys.stderr.write(error_info) - return False - - return True
- - -
[docs]def ReadFasta(f): - """ - ################################################################# - Read a fasta file. - - :param f: HANDLE to input. e.g. sys.stdin, or open(<file>) - - Return Seq obj list. - ################################################################# - """ - name, seq = '', '' - count = 0 - seq_list = [] - lines = f.readlines() - for line in lines: - if not line: - break - - if '>' == line[0]: - if 0 != count or (0 == count and seq != ''): - if IsFasta(Seq(name, seq, count)): - seq_list.append(Seq(name, seq, count)) - else: - sys.exit(0) - - seq = '' - name = line[1:].strip() - count += 1 - else: - seq += line.strip() - - count += 1 - if IsFasta(Seq(name, seq, count)): - seq_list.append(Seq(name, seq, count)) - else: - sys.exit(0) - - return seq_list
- - -
[docs]def ReadFastaYield(f): - """ - ################################################################# - Yields a Seq object. - - :param f: HANDLE to input. e.g. sys.stdin, or open(<file>) - ################################################################# - """ - name, seq = '', '' - count = 0 - while True: - line = f.readline() - if not line: - break - - if '>' == line[0]: - if 0 != count or (0 == count and seq != ''): - if IsFasta(Seq(name, seq, count)): - yield Seq(name, seq, count) - else: - sys.exit(0) - - seq = '' - name = line[1:].strip() - count += 1 - else: - seq += line.strip() - - if IsFasta(Seq(name, seq, count)): - yield Seq(name, seq, count) - else: - sys.exit(0)
- - -
[docs]def ReadFastaCheckDna(f): - """ - ################################################################# - Read the fasta file, and check its legality. - - :param f: HANDLE to input. e.g. sys.stdin, or open(<file>) - - Return the seq list. - ################################################################# - """ - seq_list = [] - for e in ReadFastaYield(f): - # print e - res = IsUnderAlphabet(e.seq, ALPHABET) - if res: - seq_list.append(e) - else: - error_info = 'Sorry, sequence ' + str(e.no) \ - + ' has character ' + str(res) + '.(The character must be A or C or G or T)' - sys.stderr(error_info) - sys.exit(0) - - return seq_list
- - -
[docs]def GetSequenceCheckDna(f): - """ - ################################################################# - Read the fasta file. - - Input: f: HANDLE to input. e.g. sys.stdin, or open(<file>) - - Return the sequence list. - ################################################################# - """ - sequence_list = [] - for e in ReadFastaYield(f): - # print e - res = IsUnderAlphabet(e.seq, ALPHABET) - if res is not True: - error_info = 'Sorry, sequence ' + str(e.no) \ - + ' has character ' + str(res) + '.(The character must be A, C, G or T)' - sys.stderr.write(error_info) - sys.exit(0) - else: - sequence_list.append(e.seq) - - return sequence_list
- - -
[docs]def IsSequenceList(sequence_list): - """ - ################################################################# - Judge the sequence list is within the scope of alphabet and - change the lowercase to capital. - ################################################################# - """ - count = 0 - new_sequence_list = [] - - for e in sequence_list: - e = e.upper() - count += 1 - res = IsUnderAlphabet(e, ALPHABET) - if res is not True: - error_info = 'Sorry, sequence ' + str(count) \ - + ' has illegal character ' + str(res) + '.(The character must be A, C, G or T)' - sys.stderr.write(error_info) - return False - else: - new_sequence_list.append(e) - - return new_sequence_list
- - -
[docs]def GetData(input_data, desc=False): - """ - ################################################################# - Get sequence data from file or list with check. - - :param input_data: type file or list - :param desc: with this option, the return value will be a Seq object list(it only works in file object). - :return: sequence data or shutdown. - ################################################################# - """ - if hasattr(input_data, 'read'): - if desc is False: - return GetSequenceCheckDna(input_data) - else: - return ReadFastaCheckDna(input_data) - elif isinstance(input_data, list): - input_data = IsSequenceList(input_data) - if input_data is not False: - return input_data - else: - sys.exit(0) - else: - error_info = 'Sorry, the parameter in get_data method must be list or file type.' - sys.stderr.write(error_info) - sys.exit(0)
- - -"""Some basic function for generate feature vector.""" - - -
[docs]def Frequency(tol_str, tar_str): - """ - ################################################################# - Generate the frequency of tar_str in tol_str. - - :param tol_str: mother string. - :param tar_str: substring. - ################################################################# - """ - i, j, tar_count = 0, 0, 0 - len_tol_str = len(tol_str) - len_tar_str = len(tar_str) - while i < len_tol_str and j < len_tar_str: - if tol_str[i] == tar_str[j]: - i += 1 - j += 1 - if j >= len_tar_str: - tar_count += 1 - i = i - j + 1 - j = 0 - else: - i = i - j + 1 - j = 0 - - return tar_count
- - -
[docs]def WriteLibsvm(vector_list, label_list, write_file): - """ - ################################################################# - Write the vector into disk in libSVM format. - ################################################################# - """ - len_vector_list = len(vector_list) - len_label_list = len(label_list) - if len_vector_list == 0: - sys.stderr.write("The vector is none.") - sys.exit(1) - if len_label_list == 0: - sys.stderr.write("The label is none.") - sys.exit(1) - if len_vector_list != len_label_list: - sys.stderr.write("The length of vector and label is different.") - sys.exit(1) - - with open(write_file, 'w') as f: - len_vector = len(vector_list[0]) - for i in range(len_vector_list): - temp_write = str(label_list[i]) - for j in range(0, len_vector): - temp_write += ' ' + str(j + 1) + ':' + str(vector_list[i][j]) - f.write(temp_write) - f.write('\n')
- - -
[docs]def GeneratePhycheValue(k, phyche_index=None, all_property=False, extra_phyche_index=None): - """ - ################################################################# - Combine the user selected phyche_list, is_all_property and - extra_phyche_index to a new standard phyche_value. - ################################################################# - """ - if phyche_index is None: - phyche_index = [] - if extra_phyche_index is None: - extra_phyche_index = {} - - diphyche_list = ['Base stacking', 'Protein induced deformability', 'B-DNA twist', 'Dinucleotide GC Content', - 'A-philicity', 'Propeller twist', 'Duplex stability:(freeenergy)', - 'Duplex tability(disruptenergy)', 'DNA denaturation', 'Bending stiffness', 'Protein DNA twist', - 'Stabilising energy of Z-DNA', 'Aida_BA_transition', 'Breslauer_dG', 'Breslauer_dH', - 'Breslauer_dS', 'Electron_interaction', 'Hartman_trans_free_energy', 'Helix-Coil_transition', - 'Ivanov_BA_transition', 'Lisser_BZ_transition', 'Polar_interaction', 'SantaLucia_dG', - 'SantaLucia_dH', 'SantaLucia_dS', 'Sarai_flexibility', 'Stability', 'Stacking_energy', - 'Sugimoto_dG', 'Sugimoto_dH', 'Sugimoto_dS', 'Watson-Crick_interaction', 'Twist', 'Tilt', - 'Roll', 'Shift', 'Slide', 'Rise'] - triphyche_list = ['Dnase I', 'Bendability (DNAse)', 'Bendability (consensus)', 'Trinucleotide GC Content', - 'Nucleosome positioning', 'Consensus_roll', 'Consensus-Rigid', 'Dnase I-Rigid', 'MW-Daltons', - 'MW-kg', 'Nucleosome', 'Nucleosome-Rigid'] - - # Set and check physicochemical properties. - if 2 == k: - if all_property is True: - phyche_index = diphyche_list - else: - for e in phyche_index: - if e not in diphyche_list: - error_info = 'Sorry, the physicochemical properties ' + e + ' is not exit.' - import sys - - sys.stderr.write(error_info) - sys.exit(0) - elif 3 == k: - if all_property is True: - phyche_index = triphyche_list - else: - for e in phyche_index: - if e not in triphyche_list: - error_info = 'Sorry, the physicochemical properties ' + e + ' is not exit.' - import sys - - sys.stderr.write(error_info) - sys.exit(0) - - # Generate phyche_value. - from PyBioMed.PyDNA.PyDNApsenacutil import GetPhycheIndex, ExtendPhycheIndex - - return ExtendPhycheIndex(GetPhycheIndex(k, phyche_index), extra_phyche_index)
- - -
[docs]def ConvertPhycheIndexToDict(phyche_index): - """ - ################################################################# - Convert phyche index from list to dict. - ################################################################# - """ - # for e in phyche_index: - # print e - len_index_value = len(phyche_index[0]) - k = 0 - for i in range(1, 10): - if len_index_value < 4**i: - error_infor = 'Sorry, the number of each index value is must be 4^k.' - sys.stdout.write(error_infor) - sys.exit(0) - if len_index_value == 4**i: - k = i - break - from PyBioMed.PyDNA.PyDNAnacutil import MakeKmerList - kmer_list = MakeKmerList(k, ALPHABET) - # print kmer_list - len_kmer = len(kmer_list) - phyche_index_dict = {} - for kmer in kmer_list: - phyche_index_dict[kmer] = [] - # print phyche_index_dict - phyche_index = list(zip(*phyche_index)) - for i in range(len_kmer): - phyche_index_dict[kmer_list[i]] = list(phyche_index[i]) - - return phyche_index_dict
- - -
[docs]def StandardDeviation(value_list): - """ - ################################################################# - Return standard deviation. - ################################################################# - """ - from math import sqrt - from math import pow - n = len(value_list) - average_value = sum(value_list) * 1.0 / n - return sqrt(sum([pow(e - average_value, 2) for e in value_list]) * 1.0 / (n-1))
- - -
[docs]def NormalizeIndex(phyche_index, is_convert_dict=False): - """ - ################################################################# - Normalize the physicochemical index. - ################################################################# - """ - normalize_phyche_value = [] - for phyche_value in phyche_index: - average_phyche_value = sum(phyche_value) * 1.0 / len(phyche_value) - sd_phyche = StandardDeviation(phyche_value) - normalize_phyche_value.append([round((e - average_phyche_value) / sd_phyche, 2) for e in phyche_value]) - - if is_convert_dict is True: - return ConvertPhycheIndexToDict(normalize_phyche_value) - - return normalize_phyche_value
- - -
[docs]def DNAChecks(s): - for e in s: - if e not in ALPHABET: - return e - return True
- - -if __name__ == "__main__": - re = ['GACTGAACTGCACTTTGGTTTCATATTATTTGCTC'] - - - phyche_index = [[1.019, -0.918, 0.488, 0.567, 0.567, -0.070, -0.579, 0.488, -0.654, -2.455,-0.070, -0.918, 1.603, -0.654, 0.567, 1.019]] - print (NormalizeIndex(phyche_index,is_convert_dict = False)[0]) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyPretreatMol.html b/PyBioMed/doc/_build/html/_modules/PyPretreatMol.html deleted file mode 100644 index 15e9d7b..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyPretreatMol.html +++ /dev/null @@ -1,291 +0,0 @@ - - - - - - - - PyPretreatMol — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyPretreatMol

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-#from PyPretreatMolutil import Standardizer
-#from PyPretreatMolutil import validate_smiles
-#from PyPretreatMolutil import standardize_smiles
-#from PyPretreatMolutil import Validator
-from PyPretreatMolutil import *
-from rdkit import Chem
-import logging
-
-log = logging.getLogger(__name__)
-
-map_dict = {'1':'disconnect_metals', '2':'normalize', '3':'addhs', '4':'rmhs', 
-    '5':'reionize', '6':'uncharge', '7':'largest_fragment', '8':'canonicalize_tautomer'}
-
-#NORMALIZATIONS = NORMALIZATIONS
-
-
[docs]class StandardizeMol(object): - """ - The main class for performing standardization of molecules and deriving parent molecules. - - The primary usage is via the :meth:`~molvs.standardize.Standardizer.standardize` method:: - - s = Standardizer() - mol1 = Chem.MolFromSmiles('C1=CC=CC=C1') - mol2 = s.standardize(mol1) - - There are separate methods to derive fragment, charge, tautomer, isotope and stereo parent molecules. - - """ - - def __init__(self, normalizations=NORMALIZATIONS, acid_base_pairs=ACID_BASE_PAIRS, - tautomer_transforms=TAUTOMER_TRANSFORMS, tautomer_scores=TAUTOMER_SCORES, - max_restarts=MAX_RESTARTS, max_tautomers=MAX_TAUTOMERS, prefer_organic=PREFER_ORGANIC): - """Initialize a Standardizer with optional custom parameters. - - :param normalizations: A list of Normalizations to apply (default: :data:`~molvs.normalize.NORMALIZATIONS`). - :param acid_base_pairs: A list of AcidBasePairs for competitive reionization (default: - :data:`~molvs.charge.ACID_BASE_PAIRS`). - :param tautomer_transforms: A list of TautomerTransforms to apply (default: - :data:`~molvs.tautomer.TAUTOMER_TRANSFORMS`). - :param tautomer_scores: A list of TautomerScores used to determine canonical tautomer (default: - :data:`~molvs.tautomer.TAUTOMER_SCORES`). - :param max_restarts: The maximum number of times to attempt to apply the series of normalizations (default 200). - :param max_tautomers: The maximum number of tautomers to enumerate (default 1000). - :param prefer_organic: Whether to prioritize organic fragments when choosing fragment parent (default False). - """ - log.debug('Initializing Standardizer') - self.normalizations = normalizations - self.acid_base_pairs = acid_base_pairs - self.tautomer_transforms = tautomer_transforms - self.tautomer_scores = tautomer_scores - self.max_restarts = max_restarts - self.max_tautomers = max_tautomers - self.prefer_organic = prefer_organic - - def __call__(self, mol): - """Calling a Standardizer instance like a function is the same as calling its - :meth:`~molvs.standardize.Standardizer.standardize` method.""" - return self.standardize(mol) - - -
[docs] def addhs(self,mol): - from rdkit.Chem import AddHs - return AddHs(mol)
- - -
[docs] def rmhs(self, mol): - from rdkit.Chem import RemoveHs - return RemoveHs(mol)
- - @memoized_property - def disconnect_metals(self): - """ - :returns: A callable :class:`~molvs.metal.MetalDisconnector` instance. - """ - return MetalDisconnector() - - @memoized_property - def normalize(self): - """ - :returns: A callable :class:`~molvs.normalize.Normalizer` instance. - """ - return Normalizer(normalizations=self.normalizations, max_restarts=self.max_restarts) - - @memoized_property - def reionize(self): - """ - :returns: A callable :class:`~molvs.charge.Reionizer` instance. - """ - return Reionizer(acid_base_pairs=self.acid_base_pairs) - - @memoized_property - def uncharge(self): - """ - :returns: A callable :class:`~molvs.charge.Uncharger` instance. - """ - return Uncharger() - - @memoized_property - def largest_fragment(self): - """ - :returns: A callable :class:`~molvs.fragment.LargestFragmentChooser` instance. - """ - return LargestFragmentChooser(prefer_organic=self.prefer_organic) - - @memoized_property - def canonicalize_tautomer(self): - """ - :returns: A callable :class:`~molvs.tautomer.TautomerCanonicalizer` instance. - """ - return TautomerCanonicalizer(transforms=self.tautomer_transforms, scores=self.tautomer_scores, - max_tautomers=self.max_tautomers)
- - -
[docs]def StandardMol(mol): - ''' - The function for performing standardization of molecules and deriving parent molecules. - The function contains derive fragment, charge, tautomer, isotope and stereo parent molecules. - The primary usage is:: - - mol1 = Chem.MolFromSmiles('C1=CC=CC=C1') - mol2 = s.standardize(mol1) - - ''' - s = Standardizer() - mol = s.disconnect_metals(mol) - mol = s.normalize(mol) - mol = s.uncharge(mol) - mol = s.largest_fragment(mol) - mol = s.canonicalize_tautomer(mol) - mol = s.reionize(mol) - mol = s.addhs(mol) - mol = s.rmhs(mol) - return mol
- -
[docs]def StandardSmi(smi): - ''' - The function for performing standardization of molecules and deriving parent molecules. - The function contains derive fragment, charge, tautomer, isotope and stereo parent molecules. - The primary usage is:: - - smi = StandardSmi('C[n+]1c([N-](C))cccc1') - - ''' - mol = Chem.MolFromSmiles(smi) - mol = StandardMol(mol) - smi = Chem.MolToSmiles(mol, isomericSmiles=True) - return smi
- -
[docs]def ValidatorMol(mol): - ''' - Return log messages for a given SMILES string using the default validations. - - Note: This is a convenience function for quickly validating a single SMILES string. - - :param string smiles: The SMILES for the molecule. - :returns: A list of log messages. - :rtype: list of strings. - - ''' - return Validator().validate(mol)
- -
[docs]def ValidatorSmi(smi): - ''' - Return log messages for a given SMILES string using the default validations. - - Note: This is a convenience function for quickly validating a single SMILES string. - - :param string smiles: The SMILES for the molecule. - :returns: A list of log messages. - :rtype: list of strings. - - ''' - - return validate_smiles(smi)
- -if __name__ == '__main__': - smiles = ['O=C([O-])c1ccccc1','C[n+]1c([N-](C))cccc1','[2H]C(Cl)(Cl)Cl'] - mol = Chem.MolFromSmiles('[Na]OC(=O)c1ccc(C[S+2]([O-])([O-]))cc1') - sm = StandardizeMol() - mol = sm.addhs(mol) - mol = sm.disconnect_metals(mol) - mol = sm.largest_fragment(mol) - mol = sm.normalize(mol) - mol = sm.uncharge(mol) - mol = sm.canonicalize_tautomer(mol) - mol = sm.reionize(mol) - mol = sm.rmhs(mol) - mol = sm.addhs(mol) - print Chem.MolToSmiles(mol, isomericSmiles=True) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyPretreatPro.html b/PyBioMed/doc/_build/html/_modules/PyPretreatPro.html deleted file mode 100644 index bf09fbd..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyPretreatPro.html +++ /dev/null @@ -1,155 +0,0 @@ - - - - - - - - PyPretreatPro — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyPretreatPro

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-#####################################################################################
-This module is used for checking whether the input protein sequence is valid amino acid
-
-sequence. You can freely use and distribute it. If you hava any problem, you could 
-
-contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-#####################################################################################
-
-"""
-
-AALetter = ["A", "R", "N", "D", "C", "E", "Q", "G", "H", "I", "L", "K", "M", "F", "P", "S", "T", "W", "Y", "V"]
-
-
-
[docs]def ProteinCheck(ProteinSequence): - """ - ################################################################################### - Check whether the protein sequence is a valid amino acid sequence or not - - Usage: - - result=ProteinCheck(protein) - - Input: protein is a pure protein sequence. - - Output: if the check is no problem, result will return the length of protein. - - if the check has problems, result will return 0. - ################################################################################### - """ - - NumPro = len(ProteinSequence) - for i in ProteinSequence: - if i not in AALetter: - flag = 0 - break - else: - flag = NumPro - - return flag
- - -if __name__ == "__main__": - protein = "ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDASU" - protein = "ADGC" - print ProteinCheck(protein) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyProtein.html b/PyBioMed/doc/_build/html/_modules/PyProtein.html deleted file mode 100644 index 9be8257..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyProtein.html +++ /dev/null @@ -1,515 +0,0 @@ - - - - - - - - PyProtein — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyProtein

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-A class used for computing different types of protein descriptors! 
-
-You can freely use and distribute it. If you have any problem, 
-
-you could contact with us timely.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-"""
-from AAComposition import CalculateAAComposition, CalculateDipeptideComposition, GetSpectrumDict
-
-from Autocorrelation import CalculateNormalizedMoreauBrotoAutoTotal, CalculateMoranAutoTotal, CalculateGearyAutoTotal
-
-from Autocorrelation import CalculateEachGearyAuto, CalculateEachMoranAuto, CalculateEachNormalizedMoreauBrotoAuto
-
-from CTD import CalculateCTD
-
-from QuasiSequenceOrder import GetSequenceOrderCouplingNumberTotal, GetQuasiSequenceOrder, \
-    GetSequenceOrderCouplingNumberp, GetQuasiSequenceOrderp
-
-from PseudoAAC import _GetPseudoAAC, GetAPseudoAAC, GetPseudoAAC
-
-from GetSubSeq import GetSubSequence
-
-from AAIndex import GetAAIndex1, GetAAIndex23
-
-from ConjointTriad import CalculateConjointTriad
-
-
-
[docs]class PyProtein(): - """ - This GetProDes class aims at collecting all descriptor calcualtion modules into a simple class. - - """ - AALetter = ["A", "R", "N", "D", "C", "E", "Q", "G", "H", "I", "L", "K", "M", "F", "P", "S", "T", "W", "Y", "V"] - - Version = 1.0 - - def __init__(self, ProteinSequence=''): - """ - input a protein sequence - """ - if len(ProteinSequence) == 0: - print "You must input a protein sequence when constructing a object. It is a string!" - else: - self.ProteinSequence = ProteinSequence - -
[docs] def GetAAComp(self): - """ - amino acid compositon descriptors (20) - - Usage: - - result = GetAAComp() - """ - res = CalculateAAComposition(self.ProteinSequence) - return res
- -
[docs] def GetDPComp(self): - """ - dipeptide composition descriptors (400) - - Usage: - - result = GetDPComp() - """ - res = CalculateDipeptideComposition(self.ProteinSequence) - return res
- -
[docs] def GetTPComp(self): - """ - tri-peptide composition descriptors (8000) - - Usage: - - result = GetTPComp() - """ - res = GetSpectrumDict(self.ProteinSequence) - return res
- -
[docs] def GetMoreauBrotoAuto(self): - """ - Normalized Moreau-Broto autocorrelation descriptors (240) - - Usage: - - result = GetMoreauBrotoAuto() - """ - res = CalculateNormalizedMoreauBrotoAutoTotal(self.ProteinSequence) - return res
- -
[docs] def GetMoranAuto(self): - """ - Moran autocorrelation descriptors (240) - - Usage: - - result = GetMoranAuto() - """ - res = CalculateMoranAutoTotal(self.ProteinSequence) - return res
- -
[docs] def GetGearyAuto(self): - """ - Geary autocorrelation descriptors (240) - - Usage: - - result = GetGearyAuto() - """ - res = CalculateGearyAutoTotal(self.ProteinSequence) - return res
- -
[docs] def GetCTD(self): - """ - Composition Transition Distribution descriptors (147) - - Usage: - - result = GetCTD() - """ - res = CalculateCTD(self.ProteinSequence) - return res
- -
[docs] def GetPAAC(self, lamda=10, weight=0.05): - """ - Type I Pseudo amino acid composition descriptors (default is 30) - - Usage: - - result = GetPAAC(lamda=10,weight=0.05) - - lamda factor reflects the rank of correlation and is a non-Negative integer, such as 15. - - Note that (1)lamda should NOT be larger than the length of input protein sequence; - - (2) lamda must be non-Negative integer, such as 0, 1, 2, ...; (3) when lamda =0, the - - output of PseAA server is the 20-D amino acid composition. - - weight factor is designed for the users to put weight on the additional PseAA components - - with respect to the conventional AA components. The user can select any value within the - - region from 0.05 to 0.7 for the weight factor. - """ - res = _GetPseudoAAC(self.ProteinSequence, lamda=lamda, weight=weight) - return res
- -
[docs] def GetPAACp(self, lamda=10, weight=0.05, AAP=[]): - """ - Type I Pseudo amino acid composition descriptors for the given properties (default is 30) - - Usage: - - result = GetPAACp(lamda=10,weight=0.05,AAP=[]) - - lamda factor reflects the rank of correlation and is a non-Negative integer, such as 15. - - Note that (1)lamda should NOT be larger than the length of input protein sequence; - - (2) lamda must be non-Negative integer, such as 0, 1, 2, ...; (3) when lamda =0, the - - output of PseAA server is the 20-D amino acid composition. - - weight factor is designed for the users to put weight on the additional PseAA components - - with respect to the conventional AA components. The user can select any value within the - - region from 0.05 to 0.7 for the weight factor. - - AAP is a list form containing the properties, each of which is a dict form. - """ - res = GetPseudoAAC(self.ProteinSequence, lamda=lamda, weight=weight, AAP=AAP) - return res
- -
[docs] def GetAPAAC(self, lamda=10, weight=0.5): - """ - Amphiphilic (Type II) Pseudo amino acid composition descriptors - - default is 30 - - Usage: - - result = GetAPAAC(lamda=10,weight=0.5) - - lamda factor reflects the rank of correlation and is a non-Negative integer, such as 15. - - Note that (1)lamda should NOT be larger than the length of input protein sequence; - - (2) lamda must be non-Negative integer, such as 0, 1, 2, ...; (3) when lamda =0, the - - output of PseAA server is the 20-D amino acid composition. - - weight factor is designed for the users to put weight on the additional PseAA components - - with respect to the conventional AA components. The user can select any value within the - - region from 0.05 to 0.7 for the weight factor. - - """ - res = GetAPseudoAAC(self.ProteinSequence, lamda=lamda, weight=weight) - return res
- -
[docs] def GetSOCN(self, maxlag=45): - """ - Sequence order coupling numbers default is 45 - - Usage: - - result = GetSOCN(maxlag=45) - - maxlag is the maximum lag and the length of the protein should be larger - - than maxlag. default is 45. - """ - res = GetSequenceOrderCouplingNumberTotal(self.ProteinSequence, maxlag=maxlag) - return res
- -
[docs] def GetSOCNp(self, maxlag=45, distancematrix={}): - """ - Sequence order coupling numbers default is 45 - - Usage: - - result = GetSOCN(maxlag=45) - - maxlag is the maximum lag and the length of the protein should be larger - - than maxlag. default is 45. - - distancematrix is a dict form containing 400 distance values - """ - res = GetSequenceOrderCouplingNumberp(self.ProteinSequence, maxlag=maxlag, distancematrix=distancematrix) - return res
- -
[docs] def GetQSO(self, maxlag=30, weight=0.1): - """ - Quasi sequence order descriptors default is 50 - - result = GetQSO(maxlag=30, weight=0.1) - - maxlag is the maximum lag and the length of the protein should be larger - - than maxlag. default is 45. - """ - res = GetQuasiSequenceOrder(self.ProteinSequence, maxlag=maxlag, weight=weight) - return res
- -
[docs] def GetQSOp(self, maxlag=30, weight=0.1, distancematrix={}): - """ - Quasi sequence order descriptors default is 50 - - result = GetQSO(maxlag=30, weight=0.1) - - maxlag is the maximum lag and the length of the protein should be larger - - than maxlag. default is 45. - - distancematrix is a dict form containing 400 distance values - """ - res = GetQuasiSequenceOrderp(self.ProteinSequence, maxlag=maxlag, weight=weight, distancematrix=distancematrix) - return res
- -
[docs] def GetMoreauBrotoAutop(self, AAP={}, AAPName='p'): - """ - Normalized Moreau-Broto autocorrelation descriptors for the given property (30) - - Usage: - - result = GetMoreauBrotoAutop(AAP={},AAPName='p') - - AAP is a dict containing physicochemical properities of 20 amino acids - """ - res = CalculateEachNormalizedMoreauBrotoAuto(self.ProteinSequence, AAP=AAP, AAPName=AAPName) - return res
- -
[docs] def GetMoranAutop(self, AAP={}, AAPName='p'): - """ - Moran autocorrelation descriptors for the given property (30) - - Usage: - - result = GetMoranAutop(AAP={},AAPName='p') - - AAP is a dict containing physicochemical properities of 20 amino acids - """ - res = CalculateEachMoranAuto(self.ProteinSequence, AAP=AAP, AAPName=AAPName) - return res
- -
[docs] def GetGearyAutop(self, AAP={}, AAPName='p'): - """ - Geary autocorrelation descriptors for the given property (30) - - Usage: - - result = GetGearyAutop(AAP={},AAPName='p') - - AAP is a dict containing physicochemical properities of 20 amino acids - """ - res = CalculateEachGearyAuto(self.ProteinSequence, AAP=AAP, AAPName=AAPName) - return res
- -
[docs] def GetSubSeq(self, ToAA='S', window=3): - """ - obtain the sub sequences wit length 2*window+1, whose central point is ToAA - - Usage: - - result = GetSubSeq(ToAA='S',window=3) - - ToAA is the central (query point) amino acid in the sub-sequence. - - window is the span. - """ - res = GetSubSequence(self.ProteinSequence, ToAA=ToAA, window=window) - return res
- -
[docs] def GetTriad(self): - """ - Calculate the conjoint triad features from protein sequence. - - Useage: - - res = GetTriad() - - Output is a dict form containing all 343 conjoint triad features. - """ - res = CalculateConjointTriad(self.ProteinSequence) - return res
- -
[docs] def GetALL(self): - """ - Calcualte all descriptors except tri-peptide descriptors - """ - res = {} - res.update(self.GetAAComp()) - res.update(self.GetDPComp()) - res.update(self.GetTPComp()) - res.update(self.GetMoreauBrotoAuto()) - res.update(self.GetMoranAuto()) - res.update(self.GetGearyAuto()) - res.update(self.GetCTD()) - res.update(self.GetPAAC()) - res.update(self.GetAPAAC()) - res.update(self.GetSOCN()) - res.update(self.GetQSO()) - res.update(self.GetTriad()) - return res
- -
[docs] def GetAAindex1(self, name, path='.'): - """ - Get the amino acid property values from aaindex1 - - Usage: - - result=GetAAIndex1(name) - - Input: name is the name of amino acid property (e.g., KRIW790103) - - Output: result is a dict form containing the properties of 20 amino acids - """ - - return GetAAIndex1(name, path=path)
- -
[docs] def GetAAindex23(self, name, path='.'): - """ - Get the amino acid property values from aaindex2 and aaindex3 - - Usage: - - result=GetAAIndex23(name) - - Input: name is the name of amino acid property (e.g.,TANS760101,GRAR740104) - - Output: result is a dict form containing the properties of 400 amino acid pairs - """ - return GetAAIndex23(name, path=path)
- - -##################################################################################################### -if __name__ == "__main__": - import os - from Autocorrelation import _Steric - from PseudoAAC import _Hydrophobicity, _hydrophilicity, _residuemass - - protein = "ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS" - cds = PyProtein(protein) - - print cds.GetAAComp() - print cds.GetDPComp() - print cds.GetTPComp() - print cds.GetCTD() - print cds.GetPAAC(lamda=5) - print cds.GetALL() - print cds.GetMoreauBrotoAutop(AAP=_Steric, AAPName='Steric') - print cds.GetMoranAutop(AAP=_Steric, AAPName='Steric') - print cds.GetGearyAutop(AAP=_Steric, AAPName='Steric') - - print cds.GetPAACp(lamda=5, weight=0.05, AAP=[_Hydrophobicity, _hydrophilicity]) - - print cds.GetSubSeq(ToAA='D', window=5) - print cds.GetTriad() - proper = cds.GetAAindex23('GRAR740104') - print cds.GetAAindex1('KRIW790103') - - print cds.GetQSOp(maxlag=30, weight=0.1, distancematrix=proper) - print cds.GetSOCNp(maxlag=30, distancematrix=proper) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyProteinAAComposition.html b/PyBioMed/doc/_build/html/_modules/PyProteinAAComposition.html deleted file mode 100644 index cfee773..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyProteinAAComposition.html +++ /dev/null @@ -1,284 +0,0 @@ - - - - - - - - PyProteinAAComposition — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyProteinAAComposition

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-###############################################################################
-
-The module is used for computing the composition of amino acids, dipetide and 
-
-3-mers (tri-peptide) for a given protein sequence. You can get 8420 descriptors 
-
-for a given protein sequence. You can freely use and distribute it. If you hava 
-
-any problem, you could contact with us timely!
-
-References:
-
-[1]: Reczko, M. and Bohr, H. (1994) The DEF data base of sequence based protein
-
-fold class predictions. Nucleic Acids Res, 22, 3616-3619.
-
-[2]: Hua, S. and Sun, Z. (2001) Support vector machine approach for protein
-
-subcellular localization prediction. Bioinformatics, 17, 721-728.
-
-
-[3]:Grassmann, J., Reczko, M., Suhai, S. and Edler, L. (1999) Protein fold class
-
-prediction: new methods of statistical classification. Proc Int Conf Intell Syst Mol
-
-Biol, 106-112.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-###############################################################################
-"""
-
-import re
-
-AALetter = ["A", "R", "N", "D", "C", "E", "Q", "G", "H", "I", "L", "K", "M", "F", "P", "S", "T", "W", "Y", "V"]
-
-
-#############################################################################################
-
[docs]def CalculateAAComposition(ProteinSequence): - """ - ######################################################################## - Calculate the composition of Amino acids - - for a given protein sequence. - - Usage: - - result=CalculateAAComposition(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing the composition of - - 20 amino acids. - ######################################################################## - """ - LengthSequence = len(ProteinSequence) - Result = {} - for i in AALetter: - Result[i] = round(float(ProteinSequence.count(i)) / LengthSequence * 100, 3) - return Result
- - -############################################################################################# -
[docs]def CalculateDipeptideComposition(ProteinSequence): - """ - ######################################################################## - Calculate the composition of dipeptidefor a given protein sequence. - - Usage: - - result=CalculateDipeptideComposition(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing the composition of - - 400 dipeptides. - ######################################################################## - """ - - LengthSequence = len(ProteinSequence) - Result = {} - for i in AALetter: - for j in AALetter: - Dipeptide = i + j - Result[Dipeptide] = round(float(ProteinSequence.count(Dipeptide)) / (LengthSequence - 1) * 100, 2) - return Result
- - -############################################################################################# - -
[docs]def Getkmers(): - """ - ######################################################################## - Get the amino acid list of 3-mers. - - Usage: - - result=Getkmers() - - Output: result is a list form containing 8000 tri-peptides. - - ######################################################################## - """ - kmers = list() - for i in AALetter: - for j in AALetter: - for k in AALetter: - kmers.append(i + j + k) - return kmers
- - -############################################################################################# -
[docs]def GetSpectrumDict(proteinsequence): - """ - ######################################################################## - Calcualte the spectrum descriptors of 3-mers for a given protein. - - Usage: - - result=GetSpectrumDict(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing the composition values of 8000 - - 3-mers. - ######################################################################## - """ - result = {} - kmers = Getkmers() - for i in kmers: - result[i] = len(re.findall(i, proteinsequence)) - return result
- - -############################################################################################# -
[docs]def CalculateAADipeptideComposition(ProteinSequence): - """ - ######################################################################## - Calculate the composition of AADs, dipeptide and 3-mers for a - - given protein sequence. - - Usage: - - result=CalculateAADipeptideComposition(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing all composition values of - - AADs, dipeptide and 3-mers (8420). - ######################################################################## - """ - - result = {} - result.update(CalculateAAComposition(ProteinSequence)) - result.update(CalculateDipeptideComposition(ProteinSequence)) - result.update(GetSpectrumDict(ProteinSequence)) - - return result
- - -############################################################################################# -if __name__ == "__main__": - protein = "ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS" - - AAC = CalculateAAComposition(protein) - print AAC - DIP = CalculateDipeptideComposition(protein) - print DIP - spectrum = GetSpectrumDict(protein) - print spectrum - res = CalculateAADipeptideComposition(protein) - print len(res) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/PyProteinAAIndex.html b/PyBioMed/doc/_build/html/_modules/PyProteinAAIndex.html deleted file mode 100644 index f42d037..0000000 --- a/PyBioMed/doc/_build/html/_modules/PyProteinAAIndex.html +++ /dev/null @@ -1,412 +0,0 @@ - - - - - - - - PyProteinAAIndex — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for PyProteinAAIndex

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-This module is used for obtaining the properties of amino acids or their pairs
-
-from the aaindex database. You can freely use and distribute it. If you hava 
-
-any problem, you could contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-"""
-
-import sys, os, string
-
-AALetter = ["A", "R", "N", "D", "C", "E", "Q", "G", "H", "I", "L", "K", "M", "F", "P", "S", "T", "W", "Y", "V"]
-_aaindex = dict()
-
-
-#####################################################################################################
-
[docs]class Record: - ''' - Amino acid index (AAindex) Record - ''' - aakeys = 'ARNDCQEGHILKMFPSTWYV' - - def __init__(self): - self.key = None - self.desc = '' - self.ref = '' - self.authors = '' - self.title = '' - self.journal = '' - self.correlated = dict() - self.index = dict() - self.comment = '' - -
[docs] def extend(self, row): - i = len(self.index) - for x in row: - self.index[self.aakeys[i]] = x - i += 1
- -
[docs] def get(self, aai, aaj=None, d=None): - assert aaj is None - return self.index.get(aai, d)
- - def __getitem__(self, aai): - return self.get(aai) - -
[docs] def median(self): - x = sorted(filter(None, self.index.values())) - half = len(x) / 2 - if len(x) % 2 == 1: - return x[half] - return (x[half - 1] + x[half]) / 2.0
- - def __str__(self): - desc = self.desc.replace('\n', ' ').strip() - return '%s(%s: %s)' % (self.__class__.__name__, self.key, desc)
- - -##################################################################################################### -
[docs]class MatrixRecord(Record): - ''' - Matrix record for mutation matrices or pair-wise contact potentials - ''' - - def __init__(self): - Record.__init__(self) - self.index = [] - self.rows = dict() - self.cols = dict() - -
[docs] def extend(self, row): - self.index.append(row)
- - def _get(self, aai, aaj): - i = self.rows[aai] - j = self.cols[aaj] - return self.index[i][j] - -
[docs] def get(self, aai, aaj, d=None): - try: - return self._get(aai, aaj) - except: - pass - try: - return self._get(aaj, aai) - except: - return d
- - def __getitem__(self, aaij): - return self.get(aaij[0], aaij[1]) - -
[docs] def median(self): - x = [] - for y in self.index: - x.extend(filter(None, y)) - x.sort() - if len(x) % 2 == 1: - return x[len(x) / 2] - return sum(x[len(x) / 2 - 1:len(x) / 2 + 1]) / 2.0
- - -##################################################################################################### - - - -##################################################################################################### -
[docs]def grep(pattern): - ''' - Search for pattern in title and description of all records (case - insensitive) and print results on standard output. - - ''' - for record in search(pattern): - print record
- - -##################################################################################################### -
[docs]def get(key): - ''' - Get record for key - ''' - if len(_aaindex) == 0: - init() - return _aaindex[key]
- - -##################################################################################################### -def _float_or_None(x): - if x == 'NA' or x == '-': - return None - return float(x) - - -##################################################################################################### -
[docs]def init(path=None, index='123'): - ''' - Read in the aaindex files. You need to run this (once) before you can - access any records. If the files are not within the current directory, - you need to specify the correct directory path. By default all three - aaindex files are read in. - ''' - index = str(index) - if path is None: - for path in [os.path.split(__file__)[0], '.']: - if os.path.exists(os.path.join(path, 'aaindex' + index[0])): - break - print >> sys.stderr, 'path =', path - if '1' in index: - _parse(path + '/aaindex1', Record) - if '2' in index: - _parse(path + '/aaindex2', MatrixRecord) - if '3' in index: - _parse(path + '/aaindex3', MatrixRecord)
- - -##################################################################################################### -
[docs]def init_from_file(filename, type=Record): - _parse(filename, type)
- - -##################################################################################################### -def _parse(filename, rec, quiet=True): - ''' - Parse aaindex input file. `rec` must be `Record` for aaindex1 and - `MarixRecord` for aaindex2 and aaindex3. - ''' - if not os.path.exists(filename): - import urllib - url = 'ftp://ftp.genome.jp/pub/db/community/aaindex/' + os.path.split(filename)[1] - # print 'Downloading "%s"' % (url) - filename = urllib.urlretrieve(url, filename)[0] - # print 'Saved to "%s"' % (filename) - f = open(filename) - - current = rec() - lastkey = None - for line in f: - key = line[0:2] - if key[0] == ' ': - key = lastkey - if key == '//': - _aaindex[current.key] = current - current = rec() - elif key == 'H ': - current.key = line[2:].strip() - elif key == 'R ': - current.ref += line[2:] - elif key == 'D ': - current.desc += line[2:] - elif key == 'A ': - current.authors += line[2:] - elif key == 'T ': - current.title += line[2:] - elif key == 'J ': - current.journal += line[2:] - elif key == '* ': - current.comment += line[2:] - elif key == 'C ': - a = line[2:].split() - for i in range(0, len(a), 2): - current.correlated[a[i]] = float(a[i + 1]) - elif key == 'I ': - a = line[1:].split() - if a[0] != 'A/L': - current.extend(map(_float_or_None, a)) - elif list(Record.aakeys) != [i[0] for i in a] + [i[-1] for i in a]: - print 'Warning: wrong amino acid sequence for', current.key - else: - try: - assert list(Record.aakeys[:10]) == [i[0] for i in a] - assert list(Record.aakeys[10:]) == [i[2] for i in a] - except: - print 'Warning: wrong amino acid sequence for', current.key - elif key == 'M ': - a = line[2:].split() - if a[0] == 'rows': - if a[4] == 'rows': - a.pop(4) - assert a[3] == 'cols' and len(a) == 6 - i = 0 - for aa in a[2]: - current.rows[aa] = i - i += 1 - i = 0 - for aa in a[5]: - current.cols[aa] = i - i += 1 - else: - current.extend(map(_float_or_None, a)) - elif not quiet: - print 'Warning: line starts with "%s"' % (key) - lastkey = key - f.close() - - -##################################################################################################### -
[docs]def GetAAIndex1(name, path='.'): - """ - Get the amino acid property values from aaindex1 - - Usage: - - result=GetAAIndex1(name) - - Input: name is the name of amino acid property (e.g., KRIW790103) - - Output: result is a dict form containing the properties of 20 amino acids - """ - - init(path=path) - name = str(name) - temp = get(string.strip(name)) - res = {} - for i in AALetter: - res[i] = temp.get(i) - return res
- - -##################################################################################################### -
[docs]def GetAAIndex23(name, path='.'): - """ - Get the amino acid property values from aaindex2 and aaindex3 - - Usage: - - result=GetAAIndex23(name) - - Input: name is the name of amino acid property (e.g.,TANS760101,GRAR740104) - - Output: result is a dict form containing the properties of 400 amino acid pairs - """ - init(path=path) - name = str(name) - temp = get(string.strip(name)) - res = {} - for i in AALetter: - for j in AALetter: - res[i + j] = temp.get(i, j) - return res
- - -##################################################################################################### - -if __name__ == "__main__": - - temp1 = GetAAIndex1('KRIW790103') - print len(temp1) - - temp2 = GetAAIndex23('TANS760101') - print len(temp2) - temp2 = GetAAIndex23('GRAR740104') - print len(temp2) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/QuasiSequenceOrder.html b/PyBioMed/doc/_build/html/_modules/QuasiSequenceOrder.html deleted file mode 100644 index 749a367..0000000 --- a/PyBioMed/doc/_build/html/_modules/QuasiSequenceOrder.html +++ /dev/null @@ -1,715 +0,0 @@ - - - - - - - - QuasiSequenceOrder — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for QuasiSequenceOrder

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################################
-This module is used for computing the quasi sequence order descriptors based on the 
-
-given protein sequence. We can obtain two types of descriptors: Sequence-order-coupling
-
-number and quasi-sequence-order descriptors. Two distance matrixes between 20 amino acids
-
-are employed. You can freely use and distribute it. If you have any problem, please contact
-
-us immediately.
-
-References:
-
-[1]:Kuo-Chen Chou. Prediction of Protein Subcellar Locations by Incorporating
-
-Quasi-Sequence-Order Effect. Biochemical and Biophysical Research Communications 
-
-2000, 278, 477-483.
-
-[2]: Kuo-Chen Chou and Yu-Dong Cai. Prediction of Protein sucellular locations by
-
-GO-FunD-PseAA predictor, Biochemical and Biophysical Research Communications,
-
-2004, 320, 1236-1239.
-
-[3]:Gisbert Schneider and Paul wrede. The Rational Design of Amino Acid
-
-Sequences by Artifical Neural Networks and Simulated Molecular Evolution: Do
-
-Novo Design of an Idealized Leader Cleavge Site. Biophys Journal, 1994, 66,
-
-335-344.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-##############################################################################################
-"""
-
-import math
-import string
-
-AALetter = ["A", "R", "N", "D", "C", "E", "Q", "G", "H", "I", "L", "K", "M", "F", "P", "S", "T", "W", "Y", "V"]
-## Distance is the Schneider-Wrede physicochemical distance matrix used by Chou et. al. 
-_Distance1 = {"GW": 0.923, "GV": 0.464, "GT": 0.272, "GS": 0.158, "GR": 1.0, "GQ": 0.467, "GP": 0.323, "GY": 0.728,
-              "GG": 0.0, "GF": 0.727, "GE": 0.807, "GD": 0.776, "GC": 0.312, "GA": 0.206, "GN": 0.381, "GM": 0.557,
-              "GL": 0.591, "GK": 0.894, "GI": 0.592, "GH": 0.769, "ME": 0.879, "MD": 0.932, "MG": 0.569, "MF": 0.182,
-              "MA": 0.383, "MC": 0.276, "MM": 0.0, "ML": 0.062, "MN": 0.447, "MI": 0.058, "MH": 0.648, "MK": 0.884,
-              "MT": 0.358, "MW": 0.391, "MV": 0.12, "MQ": 0.372, "MP": 0.285, "MS": 0.417, "MR": 1.0, "MY": 0.255,
-              "FP": 0.42, "FQ": 0.459, "FR": 1.0, "FS": 0.548, "FT": 0.499, "FV": 0.252, "FW": 0.207, "FY": 0.179,
-              "FA": 0.508, "FC": 0.405, "FD": 0.977, "FE": 0.918, "FF": 0.0, "FG": 0.69, "FH": 0.663, "FI": 0.128,
-              "FK": 0.903, "FL": 0.131, "FM": 0.169, "FN": 0.541, "SY": 0.615, "SS": 0.0, "SR": 1.0, "SQ": 0.358,
-              "SP": 0.181, "SW": 0.827, "SV": 0.342, "ST": 0.174, "SK": 0.883, "SI": 0.478, "SH": 0.718, "SN": 0.289,
-              "SM": 0.44, "SL": 0.474, "SC": 0.185, "SA": 0.1, "SG": 0.17, "SF": 0.622, "SE": 0.812, "SD": 0.801,
-              "YI": 0.23, "YH": 0.678, "YK": 0.904, "YM": 0.268, "YL": 0.219, "YN": 0.512, "YA": 0.587, "YC": 0.478,
-              "YE": 0.932, "YD": 1.0, "YG": 0.782, "YF": 0.202, "YY": 0.0, "YQ": 0.404, "YP": 0.444, "YS": 0.612,
-              "YR": 0.995, "YT": 0.557, "YW": 0.244, "YV": 0.328, "LF": 0.139, "LG": 0.596, "LD": 0.944, "LE": 0.892,
-              "LC": 0.296, "LA": 0.405, "LN": 0.452, "LL": 0.0, "LM": 0.062, "LK": 0.893, "LH": 0.653, "LI": 0.013,
-              "LV": 0.133, "LW": 0.341, "LT": 0.397, "LR": 1.0, "LS": 0.443, "LP": 0.309, "LQ": 0.376, "LY": 0.205,
-              "RT": 0.808, "RV": 0.914, "RW": 1.0, "RP": 0.796, "RQ": 0.668, "RR": 0.0, "RS": 0.86, "RY": 0.859,
-              "RD": 0.305, "RE": 0.225, "RF": 0.977, "RG": 0.928, "RA": 0.919, "RC": 0.905, "RL": 0.92, "RM": 0.908,
-              "RN": 0.69, "RH": 0.498, "RI": 0.929, "RK": 0.141, "VH": 0.649, "VI": 0.135, "EM": 0.83, "EL": 0.854,
-              "EN": 0.599, "EI": 0.86, "EH": 0.406, "EK": 0.143, "EE": 0.0, "ED": 0.133, "EG": 0.779, "EF": 0.932,
-              "EA": 0.79, "EC": 0.788, "VM": 0.12, "EY": 0.837, "VN": 0.38, "ET": 0.682, "EW": 1.0, "EV": 0.824,
-              "EQ": 0.598, "EP": 0.688, "ES": 0.726, "ER": 0.234, "VP": 0.212, "VQ": 0.339, "VR": 1.0, "VT": 0.305,
-              "VW": 0.472, "KC": 0.871, "KA": 0.889, "KG": 0.9, "KF": 0.957, "KE": 0.149, "KD": 0.279, "KK": 0.0,
-              "KI": 0.899, "KH": 0.438, "KN": 0.667, "KM": 0.871, "KL": 0.892, "KS": 0.825, "KR": 0.154, "KQ": 0.639,
-              "KP": 0.757, "KW": 1.0, "KV": 0.882, "KT": 0.759, "KY": 0.848, "DN": 0.56, "DL": 0.841, "DM": 0.819,
-              "DK": 0.249, "DH": 0.435, "DI": 0.847, "DF": 0.924, "DG": 0.697, "DD": 0.0, "DE": 0.124, "DC": 0.742,
-              "DA": 0.729, "DY": 0.836, "DV": 0.797, "DW": 1.0, "DT": 0.649, "DR": 0.295, "DS": 0.667, "DP": 0.657,
-              "DQ": 0.584, "QQ": 0.0, "QP": 0.272, "QS": 0.461, "QR": 1.0, "QT": 0.389, "QW": 0.831, "QV": 0.464,
-              "QY": 0.522, "QA": 0.512, "QC": 0.462, "QE": 0.861, "QD": 0.903, "QG": 0.648, "QF": 0.671, "QI": 0.532,
-              "QH": 0.765, "QK": 0.881, "QM": 0.505, "QL": 0.518, "QN": 0.181, "WG": 0.829, "WF": 0.196, "WE": 0.931,
-              "WD": 1.0, "WC": 0.56, "WA": 0.658, "WN": 0.631, "WM": 0.344, "WL": 0.304, "WK": 0.892, "WI": 0.305,
-              "WH": 0.678, "WW": 0.0, "WV": 0.418, "WT": 0.638, "WS": 0.689, "WR": 0.968, "WQ": 0.538, "WP": 0.555,
-              "WY": 0.204, "PR": 1.0, "PS": 0.196, "PP": 0.0, "PQ": 0.228, "PV": 0.244, "PW": 0.72, "PT": 0.161,
-              "PY": 0.481, "PC": 0.179, "PA": 0.22, "PF": 0.515, "PG": 0.376, "PD": 0.852, "PE": 0.831, "PK": 0.875,
-              "PH": 0.696, "PI": 0.363, "PN": 0.231, "PL": 0.357, "PM": 0.326, "CK": 0.887, "CI": 0.304, "CH": 0.66,
-              "CN": 0.324, "CM": 0.277, "CL": 0.301, "CC": 0.0, "CA": 0.114, "CG": 0.32, "CF": 0.437, "CE": 0.838,
-              "CD": 0.847, "CY": 0.457, "CS": 0.176, "CR": 1.0, "CQ": 0.341, "CP": 0.157, "CW": 0.639, "CV": 0.167,
-              "CT": 0.233, "IY": 0.213, "VA": 0.275, "VC": 0.165, "VD": 0.9, "VE": 0.867, "VF": 0.269, "VG": 0.471,
-              "IQ": 0.383, "IP": 0.311, "IS": 0.443, "IR": 1.0, "VL": 0.134, "IT": 0.396, "IW": 0.339, "IV": 0.133,
-              "II": 0.0, "IH": 0.652, "IK": 0.892, "VS": 0.322, "IM": 0.057, "IL": 0.013, "VV": 0.0, "IN": 0.457,
-              "IA": 0.403, "VY": 0.31, "IC": 0.296, "IE": 0.891, "ID": 0.942, "IG": 0.592, "IF": 0.134, "HY": 0.821,
-              "HR": 0.697, "HS": 0.865, "HP": 0.777, "HQ": 0.716, "HV": 0.831, "HW": 0.981, "HT": 0.834, "HK": 0.566,
-              "HH": 0.0, "HI": 0.848, "HN": 0.754, "HL": 0.842, "HM": 0.825, "HC": 0.836, "HA": 0.896, "HF": 0.907,
-              "HG": 1.0, "HD": 0.629, "HE": 0.547, "NH": 0.78, "NI": 0.615, "NK": 0.891, "NL": 0.603, "NM": 0.588,
-              "NN": 0.0, "NA": 0.424, "NC": 0.425, "ND": 0.838, "NE": 0.835, "NF": 0.766, "NG": 0.512, "NY": 0.641,
-              "NP": 0.266, "NQ": 0.175, "NR": 1.0, "NS": 0.361, "NT": 0.368, "NV": 0.503, "NW": 0.945, "TY": 0.596,
-              "TV": 0.345, "TW": 0.816, "TT": 0.0, "TR": 1.0, "TS": 0.185, "TP": 0.159, "TQ": 0.322, "TN": 0.315,
-              "TL": 0.453, "TM": 0.403, "TK": 0.866, "TH": 0.737, "TI": 0.455, "TF": 0.604, "TG": 0.312, "TD": 0.83,
-              "TE": 0.812, "TC": 0.261, "TA": 0.251, "AA": 0.0, "AC": 0.112, "AE": 0.827, "AD": 0.819, "AG": 0.208,
-              "AF": 0.54, "AI": 0.407, "AH": 0.696, "AK": 0.891, "AM": 0.379, "AL": 0.406, "AN": 0.318, "AQ": 0.372,
-              "AP": 0.191, "AS": 0.094, "AR": 1.0, "AT": 0.22, "AW": 0.739, "AV": 0.273, "AY": 0.552, "VK": 0.889}
-
-## Distance is the Grantham chemical distance matrix used by Grantham et. al. 
-_Distance2 = {"GW": 0.923, "GV": 0.464, "GT": 0.272, "GS": 0.158, "GR": 1.0, "GQ": 0.467, "GP": 0.323, "GY": 0.728,
-              "GG": 0.0, "GF": 0.727, "GE": 0.807, "GD": 0.776, "GC": 0.312, "GA": 0.206, "GN": 0.381, "GM": 0.557,
-              "GL": 0.591, "GK": 0.894, "GI": 0.592, "GH": 0.769, "ME": 0.879, "MD": 0.932, "MG": 0.569, "MF": 0.182,
-              "MA": 0.383, "MC": 0.276, "MM": 0.0, "ML": 0.062, "MN": 0.447, "MI": 0.058, "MH": 0.648, "MK": 0.884,
-              "MT": 0.358, "MW": 0.391, "MV": 0.12, "MQ": 0.372, "MP": 0.285, "MS": 0.417, "MR": 1.0, "MY": 0.255,
-              "FP": 0.42, "FQ": 0.459, "FR": 1.0, "FS": 0.548, "FT": 0.499, "FV": 0.252, "FW": 0.207, "FY": 0.179,
-              "FA": 0.508, "FC": 0.405, "FD": 0.977, "FE": 0.918, "FF": 0.0, "FG": 0.69, "FH": 0.663, "FI": 0.128,
-              "FK": 0.903, "FL": 0.131, "FM": 0.169, "FN": 0.541, "SY": 0.615, "SS": 0.0, "SR": 1.0, "SQ": 0.358,
-              "SP": 0.181, "SW": 0.827, "SV": 0.342, "ST": 0.174, "SK": 0.883, "SI": 0.478, "SH": 0.718, "SN": 0.289,
-              "SM": 0.44, "SL": 0.474, "SC": 0.185, "SA": 0.1, "SG": 0.17, "SF": 0.622, "SE": 0.812, "SD": 0.801,
-              "YI": 0.23, "YH": 0.678, "YK": 0.904, "YM": 0.268, "YL": 0.219, "YN": 0.512, "YA": 0.587, "YC": 0.478,
-              "YE": 0.932, "YD": 1.0, "YG": 0.782, "YF": 0.202, "YY": 0.0, "YQ": 0.404, "YP": 0.444, "YS": 0.612,
-              "YR": 0.995, "YT": 0.557, "YW": 0.244, "YV": 0.328, "LF": 0.139, "LG": 0.596, "LD": 0.944, "LE": 0.892,
-              "LC": 0.296, "LA": 0.405, "LN": 0.452, "LL": 0.0, "LM": 0.062, "LK": 0.893, "LH": 0.653, "LI": 0.013,
-              "LV": 0.133, "LW": 0.341, "LT": 0.397, "LR": 1.0, "LS": 0.443, "LP": 0.309, "LQ": 0.376, "LY": 0.205,
-              "RT": 0.808, "RV": 0.914, "RW": 1.0, "RP": 0.796, "RQ": 0.668, "RR": 0.0, "RS": 0.86, "RY": 0.859,
-              "RD": 0.305, "RE": 0.225, "RF": 0.977, "RG": 0.928, "RA": 0.919, "RC": 0.905, "RL": 0.92, "RM": 0.908,
-              "RN": 0.69, "RH": 0.498, "RI": 0.929, "RK": 0.141, "VH": 0.649, "VI": 0.135, "EM": 0.83, "EL": 0.854,
-              "EN": 0.599, "EI": 0.86, "EH": 0.406, "EK": 0.143, "EE": 0.0, "ED": 0.133, "EG": 0.779, "EF": 0.932,
-              "EA": 0.79, "EC": 0.788, "VM": 0.12, "EY": 0.837, "VN": 0.38, "ET": 0.682, "EW": 1.0, "EV": 0.824,
-              "EQ": 0.598, "EP": 0.688, "ES": 0.726, "ER": 0.234, "VP": 0.212, "VQ": 0.339, "VR": 1.0, "VT": 0.305,
-              "VW": 0.472, "KC": 0.871, "KA": 0.889, "KG": 0.9, "KF": 0.957, "KE": 0.149, "KD": 0.279, "KK": 0.0,
-              "KI": 0.899, "KH": 0.438, "KN": 0.667, "KM": 0.871, "KL": 0.892, "KS": 0.825, "KR": 0.154, "KQ": 0.639,
-              "KP": 0.757, "KW": 1.0, "KV": 0.882, "KT": 0.759, "KY": 0.848, "DN": 0.56, "DL": 0.841, "DM": 0.819,
-              "DK": 0.249, "DH": 0.435, "DI": 0.847, "DF": 0.924, "DG": 0.697, "DD": 0.0, "DE": 0.124, "DC": 0.742,
-              "DA": 0.729, "DY": 0.836, "DV": 0.797, "DW": 1.0, "DT": 0.649, "DR": 0.295, "DS": 0.667, "DP": 0.657,
-              "DQ": 0.584, "QQ": 0.0, "QP": 0.272, "QS": 0.461, "QR": 1.0, "QT": 0.389, "QW": 0.831, "QV": 0.464,
-              "QY": 0.522, "QA": 0.512, "QC": 0.462, "QE": 0.861, "QD": 0.903, "QG": 0.648, "QF": 0.671, "QI": 0.532,
-              "QH": 0.765, "QK": 0.881, "QM": 0.505, "QL": 0.518, "QN": 0.181, "WG": 0.829, "WF": 0.196, "WE": 0.931,
-              "WD": 1.0, "WC": 0.56, "WA": 0.658, "WN": 0.631, "WM": 0.344, "WL": 0.304, "WK": 0.892, "WI": 0.305,
-              "WH": 0.678, "WW": 0.0, "WV": 0.418, "WT": 0.638, "WS": 0.689, "WR": 0.968, "WQ": 0.538, "WP": 0.555,
-              "WY": 0.204, "PR": 1.0, "PS": 0.196, "PP": 0.0, "PQ": 0.228, "PV": 0.244, "PW": 0.72, "PT": 0.161,
-              "PY": 0.481, "PC": 0.179, "PA": 0.22, "PF": 0.515, "PG": 0.376, "PD": 0.852, "PE": 0.831, "PK": 0.875,
-              "PH": 0.696, "PI": 0.363, "PN": 0.231, "PL": 0.357, "PM": 0.326, "CK": 0.887, "CI": 0.304, "CH": 0.66,
-              "CN": 0.324, "CM": 0.277, "CL": 0.301, "CC": 0.0, "CA": 0.114, "CG": 0.32, "CF": 0.437, "CE": 0.838,
-              "CD": 0.847, "CY": 0.457, "CS": 0.176, "CR": 1.0, "CQ": 0.341, "CP": 0.157, "CW": 0.639, "CV": 0.167,
-              "CT": 0.233, "IY": 0.213, "VA": 0.275, "VC": 0.165, "VD": 0.9, "VE": 0.867, "VF": 0.269, "VG": 0.471,
-              "IQ": 0.383, "IP": 0.311, "IS": 0.443, "IR": 1.0, "VL": 0.134, "IT": 0.396, "IW": 0.339, "IV": 0.133,
-              "II": 0.0, "IH": 0.652, "IK": 0.892, "VS": 0.322, "IM": 0.057, "IL": 0.013, "VV": 0.0, "IN": 0.457,
-              "IA": 0.403, "VY": 0.31, "IC": 0.296, "IE": 0.891, "ID": 0.942, "IG": 0.592, "IF": 0.134, "HY": 0.821,
-              "HR": 0.697, "HS": 0.865, "HP": 0.777, "HQ": 0.716, "HV": 0.831, "HW": 0.981, "HT": 0.834, "HK": 0.566,
-              "HH": 0.0, "HI": 0.848, "HN": 0.754, "HL": 0.842, "HM": 0.825, "HC": 0.836, "HA": 0.896, "HF": 0.907,
-              "HG": 1.0, "HD": 0.629, "HE": 0.547, "NH": 0.78, "NI": 0.615, "NK": 0.891, "NL": 0.603, "NM": 0.588,
-              "NN": 0.0, "NA": 0.424, "NC": 0.425, "ND": 0.838, "NE": 0.835, "NF": 0.766, "NG": 0.512, "NY": 0.641,
-              "NP": 0.266, "NQ": 0.175, "NR": 1.0, "NS": 0.361, "NT": 0.368, "NV": 0.503, "NW": 0.945, "TY": 0.596,
-              "TV": 0.345, "TW": 0.816, "TT": 0.0, "TR": 1.0, "TS": 0.185, "TP": 0.159, "TQ": 0.322, "TN": 0.315,
-              "TL": 0.453, "TM": 0.403, "TK": 0.866, "TH": 0.737, "TI": 0.455, "TF": 0.604, "TG": 0.312, "TD": 0.83,
-              "TE": 0.812, "TC": 0.261, "TA": 0.251, "AA": 0.0, "AC": 0.112, "AE": 0.827, "AD": 0.819, "AG": 0.208,
-              "AF": 0.54, "AI": 0.407, "AH": 0.696, "AK": 0.891, "AM": 0.379, "AL": 0.406, "AN": 0.318, "AQ": 0.372,
-              "AP": 0.191, "AS": 0.094, "AR": 1.0, "AT": 0.22, "AW": 0.739, "AV": 0.273, "AY": 0.552, "VK": 0.889}
-
-
-#############################################################################################
-#############################################################################################
-
[docs]def GetSequenceOrderCouplingNumber(ProteinSequence, d=1, distancematrix=_Distance1): - """ - ############################################################################### - Computing the dth-rank sequence order coupling number for a protein. - - Usage: - - result = GetSequenceOrderCouplingNumber(protein,d) - - Input: protein is a pure protein sequence. - - d is the gap between two amino acids. - - Output: result is numeric value. - - ############################################################################### - """ - NumProtein = len(ProteinSequence) - tau = 0.0 - for i in range(NumProtein - d): - temp1 = ProteinSequence[i] - temp2 = ProteinSequence[i + d] - tau = tau + math.pow(distancematrix[temp1 + temp2], 2) - return round(tau, 3)
- - -############################################################################################# -
[docs]def GetSequenceOrderCouplingNumberp(ProteinSequence, maxlag=30, distancematrix={}): - """ - ############################################################################### - Computing the sequence order coupling numbers from 1 to maxlag - - for a given protein sequence based on the user-defined property. - - Usage: - - result = GetSequenceOrderCouplingNumberp(protein, maxlag,distancematrix) - - Input: protein is a pure protein sequence - - maxlag is the maximum lag and the length of the protein should be larger - - than maxlag. default is 30. - - distancematrix is the a dict form containing 400 distance values - - Output: result is a dict form containing all sequence order coupling numbers based - - on the given property - ############################################################################### - """ - NumProtein = len(ProteinSequence) - Tau = {} - for i in range(maxlag): - Tau["tau" + str(i + 1)] = GetSequenceOrderCouplingNumber(ProteinSequence, i + 1, distancematrix) - return Tau
- - -############################################################################################# -
[docs]def GetSequenceOrderCouplingNumberSW(ProteinSequence, maxlag=30, distancematrix=_Distance1): - """ - ############################################################################### - Computing the sequence order coupling numbers from 1 to maxlag - - for a given protein sequence based on the Schneider-Wrede physicochemical - - distance matrix - - Usage: - - result = GetSequenceOrderCouplingNumberSW(protein, maxlag,distancematrix) - - Input: protein is a pure protein sequence - - maxlag is the maximum lag and the length of the protein should be larger - - than maxlag. default is 30. - - distancematrix is a dict form containing Schneider-Wrede physicochemical - - distance matrix. omitted! - - Output: result is a dict form containing all sequence order coupling numbers based - - on the Schneider-Wrede physicochemical distance matrix - ############################################################################### - """ - NumProtein = len(ProteinSequence) - Tau = {} - for i in range(maxlag): - Tau["tausw" + str(i + 1)] = GetSequenceOrderCouplingNumber(ProteinSequence, i + 1, distancematrix) - return Tau
- - -############################################################################################# -
[docs]def GetSequenceOrderCouplingNumberGrant(ProteinSequence, maxlag=30, distancematrix=_Distance2): - """ - - ############################################################################### - Computing the sequence order coupling numbers from 1 to maxlag - - for a given protein sequence based on the Grantham chemical distance - - matrix. - - Usage: - - result = GetSequenceOrderCouplingNumberGrant(protein, maxlag,distancematrix) - - Input: protein is a pure protein sequence - - maxlag is the maximum lag and the length of the protein should be larger - - than maxlag. default is 30. - - distancematrix is a dict form containing Grantham chemical distance - - matrix. omitted! - - Output: result is a dict form containing all sequence order coupling numbers - - based on the Grantham chemical distance matrix - ############################################################################### - """ - NumProtein = len(ProteinSequence) - Tau = {} - for i in range(maxlag): - Tau["taugrant" + str(i + 1)] = GetSequenceOrderCouplingNumber(ProteinSequence, i + 1, distancematrix) - return Tau
- - -############################################################################################# -
[docs]def GetSequenceOrderCouplingNumberTotal(ProteinSequence, maxlag=30): - """ - ############################################################################### - Computing the sequence order coupling numbers from 1 to maxlag - for a given protein sequence. - Usage: - result = GetSequenceOrderCouplingNumberTotal(protein, maxlag) - - Input: protein is a pure protein sequence - - maxlag is the maximum lag and the length of the protein should be larger - - than maxlag. default is 30. - - Output: result is a dict form containing all sequence order coupling numbers - ############################################################################### - """ - Tau = {} - Tau.update(GetSequenceOrderCouplingNumberSW(ProteinSequence, maxlag=maxlag)) - Tau.update(GetSequenceOrderCouplingNumberGrant(ProteinSequence, maxlag=maxlag)) - return Tau
- - -############################################################################################# -
[docs]def GetAAComposition(ProteinSequence): - """ - ############################################################################### - Calculate the composition of Amino acids - - for a given protein sequence. - - Usage: - - result=CalculateAAComposition(protein) - - Input: protein is a pure protein sequence. - - Output: result is a dict form containing the composition of - - 20 amino acids. - ############################################################################### - """ - LengthSequence = len(ProteinSequence) - Result = {} - for i in AALetter: - Result[i] = round(float(ProteinSequence.count(i)) / LengthSequence, 3) - return Result
- - -############################################################################################# -
[docs]def GetQuasiSequenceOrder1(ProteinSequence, maxlag=30, weight=0.1, distancematrix={}): - """ - ############################################################################### - Computing the first 20 quasi-sequence-order descriptors for - - a given protein sequence. - - Usage: - - result = GetQuasiSequenceOrder1(protein,maxlag,weigt) - - see method GetQuasiSequenceOrder for the choice of parameters. - ############################################################################### - """ - rightpart = 0.0 - for i in range(maxlag): - rightpart = rightpart + GetSequenceOrderCouplingNumber(ProteinSequence, i + 1, distancematrix) - AAC = GetAAComposition(ProteinSequence) - result = {} - temp = 1 + weight * rightpart - for index, i in enumerate(AALetter): - result['QSO' + str(index + 1)] = round(AAC[i] / temp, 6) - - return result
- - -############################################################################################# -
[docs]def GetQuasiSequenceOrder2(ProteinSequence, maxlag=30, weight=0.1, distancematrix={}): - """ - ############################################################################### - Computing the last maxlag quasi-sequence-order descriptors for - - a given protein sequence. - - Usage: - - result = GetQuasiSequenceOrder2(protein,maxlag,weigt) - - see method GetQuasiSequenceOrder for the choice of parameters. - ############################################################################### - """ - rightpart = [] - for i in range(maxlag): - rightpart.append(GetSequenceOrderCouplingNumber(ProteinSequence, i + 1, distancematrix)) - AAC = GetAAComposition(ProteinSequence) - result = {} - temp = 1 + weight * sum(rightpart) - for index in range(20, 20 + maxlag): - result['QSO' + str(index + 1)] = round(weight * rightpart[index - 20] / temp, 6) - - return result
- - -############################################################################################# -
[docs]def GetQuasiSequenceOrder1SW(ProteinSequence, maxlag=30, weight=0.1, distancematrix=_Distance1): - """ - ############################################################################### - Computing the first 20 quasi-sequence-order descriptors for - - a given protein sequence. - - Usage: - - result = GetQuasiSequenceOrder1SW(protein,maxlag,weigt) - - see method GetQuasiSequenceOrder for the choice of parameters. - ############################################################################### - """ - rightpart = 0.0 - for i in range(maxlag): - rightpart = rightpart + GetSequenceOrderCouplingNumber(ProteinSequence, i + 1, distancematrix) - AAC = GetAAComposition(ProteinSequence) - result = {} - temp = 1 + weight * rightpart - for index, i in enumerate(AALetter): - result['QSOSW' + str(index + 1)] = round(AAC[i] / temp, 6) - - return result
- - -############################################################################################# -
[docs]def GetQuasiSequenceOrder2SW(ProteinSequence, maxlag=30, weight=0.1, distancematrix=_Distance1): - """ - ############################################################################### - Computing the last maxlag quasi-sequence-order descriptors for - - - a given protein sequence. - - Usage: - - result = GetQuasiSequenceOrder2SW(protein,maxlag,weigt) - - see method GetQuasiSequenceOrder for the choice of parameters. - ############################################################################### - - """ - rightpart = [] - for i in range(maxlag): - rightpart.append(GetSequenceOrderCouplingNumber(ProteinSequence, i + 1, distancematrix)) - AAC = GetAAComposition(ProteinSequence) - result = {} - temp = 1 + weight * sum(rightpart) - for index in range(20, 20 + maxlag): - result['QSOSW' + str(index + 1)] = round(weight * rightpart[index - 20] / temp, 6) - - return result
- - -############################################################################################# -
[docs]def GetQuasiSequenceOrder1Grant(ProteinSequence, maxlag=30, weight=0.1, distancematrix=_Distance2): - """ - ############################################################################### - Computing the first 20 quasi-sequence-order descriptors for - - a given protein sequence. - - Usage: - - result = GetQuasiSequenceOrder1Grant(protein,maxlag,weigt) - - see method GetQuasiSequenceOrder for the choice of parameters. - ############################################################################### - """ - rightpart = 0.0 - for i in range(maxlag): - rightpart = rightpart + GetSequenceOrderCouplingNumber(ProteinSequence, i + 1, distancematrix) - AAC = GetAAComposition(ProteinSequence) - result = {} - temp = 1 + weight * rightpart - for index, i in enumerate(AALetter): - result['QSOgrant' + str(index + 1)] = round(AAC[i] / temp, 6) - - return result
- - -############################################################################################# -
[docs]def GetQuasiSequenceOrder2Grant(ProteinSequence, maxlag=30, weight=0.1, distancematrix=_Distance2): - """ - ############################################################################### - Computing the last maxlag quasi-sequence-order descriptors for - - - a given protein sequence. - - Usage: - - result = GetQuasiSequenceOrder2Grant(protein,maxlag,weigt) - - see method GetQuasiSequenceOrder for the choice of parameters. - ############################################################################### - - """ - rightpart = [] - for i in range(maxlag): - rightpart.append(GetSequenceOrderCouplingNumber(ProteinSequence, i + 1, distancematrix)) - AAC = GetAAComposition(ProteinSequence) - result = {} - temp = 1 + weight * sum(rightpart) - for index in range(20, 20 + maxlag): - result['QSOgrant' + str(index + 1)] = round(weight * rightpart[index - 20] / temp, 6) - - return result
- - -############################################################################################# -
[docs]def GetQuasiSequenceOrder(ProteinSequence, maxlag=30, weight=0.1): - """ - ############################################################################### - Computing quasi-sequence-order descriptors for a given protein. - - [1]:Kuo-Chen Chou. Prediction of Protein Subcellar Locations by - - Incorporating Quasi-Sequence-Order Effect. Biochemical and Biophysical - - Research Communications 2000, 278, 477-483. - - Usage: - - result = GetQuasiSequenceOrder(protein,maxlag,weight) - - Input: protein is a pure protein sequence - - maxlag is the maximum lag and the length of the protein should be larger - - than maxlag. default is 30. - - weight is a weight factor. please see reference 1 for its choice. default is 0.1. - - Output: result is a dict form containing all quasi-sequence-order descriptors - ############################################################################### - """ - result = dict() - result.update(GetQuasiSequenceOrder1SW(ProteinSequence, maxlag, weight, _Distance1)) - result.update(GetQuasiSequenceOrder2SW(ProteinSequence, maxlag, weight, _Distance1)) - result.update(GetQuasiSequenceOrder1Grant(ProteinSequence, maxlag, weight, _Distance2)) - result.update(GetQuasiSequenceOrder2Grant(ProteinSequence, maxlag, weight, _Distance2)) - return result
- - -############################################################################################# -
[docs]def GetQuasiSequenceOrderp(ProteinSequence, maxlag=30, weight=0.1, distancematrix={}): - """ - - ############################################################################### - - Computing quasi-sequence-order descriptors for a given protein. - - [1]:Kuo-Chen Chou. Prediction of Protein Subcellar Locations by - - Incorporating Quasi-Sequence-Order Effect. Biochemical and Biophysical - - Research Communications 2000, 278, 477-483. - - Usage: - - result = GetQuasiSequenceOrderp(protein,maxlag,weight,distancematrix) - - Input: protein is a pure protein sequence - - maxlag is the maximum lag and the length of the protein should be larger - - than maxlag. default is 30. - - weight is a weight factor. please see reference 1 for its choice. default is 0.1. - - distancematrix is a dict form containing 400 distance values - - Output: result is a dict form containing all quasi-sequence-order descriptors - - ############################################################################### - """ - result = dict() - result.update(GetQuasiSequenceOrder1(ProteinSequence, maxlag, weight, distancematrix)) - result.update(GetQuasiSequenceOrder2(ProteinSequence, maxlag, weight, distancematrix)) - return result
- - -############################################################################################# -if __name__ == "__main__": - - protein = "ELRLRYCAPAGFALLKCNDADYDGFKTNCSNVSVVHCTNLMNTTVTTGLLLNGSYSENRT\ -QIWQKHRTSNDSALILLNKHYNLTVTCKRPGNKTVLPVTIMAGLVFHSQKYNLRLRQAWC\ -HFPSNWKGAWKEVKEEIVNLPKERYRGTNDPKRIFFQRQWGDPETANLWFNCHGEFFYCK\ -MDWFLNYLNNLTVDADHNECKNTSGTKSGNKRAPGPCVQRTYVACHIRSVIIWLETISKK\ -TYAPPREGHLECTSTVTGMTVELNYIPKNRTNVTLSPQIESIWAAELDRYKLVEITPIGF\ -APTEVRRYTGGHERQKRVPFVVQSQHLLAGILQQQKNLLAAVEAQQQMLKLTIWGVK" - print len(protein) - SCN = GetSequenceOrderCouplingNumberTotal(protein, maxlag=30) - print len(SCN) - for i in SCN: - print i, SCN[i] - - QSO1 = GetQuasiSequenceOrder1(protein, maxlag=30, weight=0.1, distancematrix=_Distance1) - print QSO1 - for i in QSO1: - print i, QSO1[i] - - QSO2 = GetQuasiSequenceOrder2(protein, maxlag=30, weight=0.1, distancematrix=_Distance1) - print QSO2 - for i in QSO2: - print i, QSO2[i] - - QSO = GetQuasiSequenceOrder(protein, maxlag=30, weight=0.1) - print len(QSO) - for i in QSO: - print i, QSO[i] - - SCN = GetSequenceOrderCouplingNumberp(protein, maxlag=30, distancematrix=_Distance1) - print len(SCN) - for i in SCN: - print i, SCN[i] - - QSO = GetQuasiSequenceOrderp(protein, maxlag=30, distancematrix=_Distance1) - print len(QSO) - for i in QSO: - print i, QSO[i] -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/Scaffolds.html b/PyBioMed/doc/_build/html/_modules/Scaffolds.html deleted file mode 100644 index 21ab382..0000000 --- a/PyBioMed/doc/_build/html/_modules/Scaffolds.html +++ /dev/null @@ -1,207 +0,0 @@ - - - - - - - - Scaffolds — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for Scaffolds

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-This module provides standard Murcko-type decomposition of molecules into scaffolds. 
-
-If you have any question please contact me via email.
-
-Bemis, G. W.; Murcko, M. A. “The Properties of Known Drugs. 1. Molecular Frameworks.” 
-J. Med. Chem. 39:2887-93 (1996).
-
-2016.11.15
-
-@author: Zhijiang Yao and Dongsheng Cao
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-from rdkit import Chem
-from rdkit.Chem.Scaffolds import MurckoScaffold
-
-
[docs]def GetScaffold(mol, generic_framework = False): - """ - ################################################################# - Calculate Scaffold - - Usage: - - result = GetScaffold(mol) - - Input: mol is a molecule object. - - generic_framework is boolean value. If the generic_framework is True, the - - result returns a generic framework. - - Output: result is a string form of the molecule's scaffold. - ################################################################# - """ - core = MurckoScaffold.GetScaffoldForMol(mol) - if generic_framework == True: - fw = MurckoScaffold.MakeScaffoldGeneric(core) - mol_generic_framework = Chem.MolToSmiles(fw) - return mol_generic_framework - else: - mol_scafflod = Chem.MolToSmiles(core) - return mol_scafflod
- - -
[docs]def GetUniqueScaffold(mols, generic_framework = False): - """ - ################################################################# - Calculate molecules' unique scaffolds - - Usage: - - result = GetUniqueScaffold(mols) - - Input: mols is molecules object. - - generic_framework is boolean value. If the generic_framework is True, the - - result returns a generic framework dictionary. - - Output: result is a tuple form. The first is the list of - - unique scaffolds. The second is a dict form whose keys are the - - scaffolds and the values are the scaffolds' count. - ################################################################# - """ - scaffolds_dict = {} - if generic_framework == True: - for mol in mols: - scaffold = GetScaffold(mol,generic_framework = True) - if scaffold not in scaffolds_dict: - scaffolds_dict[scaffold] = 1 - else: - scaffolds_dict[scaffold] += 1 - else: - for mol in mols: - scaffold = GetScaffold(mol) - if scaffold not in scaffolds_dict: - scaffolds_dict[scaffold] = 1 - else: - scaffolds_dict[scaffold] += 1 - return scaffolds_dict.keys(),scaffolds_dict
- - - - - -if __name__ == '__main__': - m1 = Chem.MolFromSmiles('O=C1N=C(Nc2ncc(nc12)CNc1ccc(cc1)C(=O)N[C@@H](CCC(O)=O)C(O)=O)N') - print GetScaffold(m1) - print GetScaffold(m1,generic_framework = True) - mols = [m1]*3 - print GetUniqueScaffold(mols) - - - - - - - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/basak.html b/PyBioMed/doc/_build/html/_modules/basak.html deleted file mode 100644 index 6412cce..0000000 --- a/PyBioMed/doc/_build/html/_modules/basak.html +++ /dev/null @@ -1,646 +0,0 @@ - - - - - - - - basak — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for basak

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-The calculation of some commonly used basak information index  based on its 
-
-topological structure. You can get 21 molecular connectivity descriptors. 
-
-You can freely use and distribute it. If you hava  any problem, you could 
-
-contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.
-
-##############################################################################
-"""
-
-
-from rdkit import Chem
-
-import numpy
-import copy
-
-
-Version=1.0
-
-############################################################################
-
-def _CalculateEntropy(Probability):
-    """
-    #################################################################
-    **Internal used only**
-    
-    Calculation of entropy (Information content) for probability given
-    #################################################################
-    """
-    res=0.0
-    for i in Probability:
-        if i!=0:       
-            res=res-i*numpy.log2(i)
-
-    return res
-
-
-
[docs]def CalculateBasakIC0(mol): - - """ - ################################################################# - Obtain the information content with order 0 proposed by Basak - - ---->IC0 - ################################################################# - """ - - BasakIC=0.0 - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=[] - for i in range(nAtoms): - at=Hmol.GetAtomWithIdx(i) - IC.append(at.GetAtomicNum()) - Unique=numpy.unique(IC) - NAtomType=len(Unique) - NTAtomType=numpy.zeros(NAtomType,numpy.float) - for i in range(NAtomType): - NTAtomType[i]=IC.count(Unique[i]) - - if nAtoms!=0: - #print sum(NTAtomType/nAtoms) - BasakIC=_CalculateEntropy(NTAtomType/nAtoms) - else: - BasakIC=0.0 - - return BasakIC
- - -
[docs]def CalculateBasakSIC0(mol): - """ - ################################################################# - Obtain the structural information content with order 0 - - proposed by Basak - - ---->SIC0 - ################################################################# - """ - - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=CalculateBasakIC0(mol) - if nAtoms<=1: - BasakSIC=0.0 - else: - BasakSIC=IC/numpy.log2(nAtoms) - - return BasakSIC
- - -
[docs]def CalculateBasakCIC0(mol): - - """ - ################################################################# - Obtain the complementary information content with order 0 - - proposed by Basak - - ---->CIC0 - ################################################################# - """ - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=CalculateBasakIC0(mol) - if nAtoms<=1: - BasakCIC=0.0 - else: - BasakCIC=numpy.log2(nAtoms)-IC - - return BasakCIC
- - -def _CalculateBasakICn(mol,NumPath=1): - - """ - ################################################################# - **internal used only** - - Obtain the information content with order n proposed by Basak - ################################################################# - """ - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - TotalPath=Chem.FindAllPathsOfLengthN(Hmol,NumPath,useBonds=0,useHs=1) - if len(TotalPath)==0: - BasakIC=0.0 - else: - IC={} - for i in range(nAtoms): - temp=[] - at=Hmol.GetAtomWithIdx(i) - temp.append(at.GetAtomicNum()) - for index in TotalPath: - if i==index[0]: - temp.append([Hmol.GetAtomWithIdx(kk).GetAtomicNum() for kk in index[1:]]) - if i==index[-1]: - cds=list(index) - cds.reverse() - temp.append([Hmol.GetAtomWithIdx(kk).GetAtomicNum() for kk in cds[1:]]) - #print temp - - IC[str(i)]=temp - cds=[] - for value in IC.values(): - value.sort() - cds.append(value) - kkk=range(len(cds)) - aaa=copy.deepcopy(kkk) - res=[] - for i in aaa: - if i in kkk: - jishu=0 - kong=[] - temp1=cds[i] - for j in aaa: - if cds[j]==temp1: - jishu=jishu+1 - kong.append(j) - for ks in kong: - kkk.remove(ks) - res.append(jishu) - - #print res - BasakIC=_CalculateEntropy(numpy.array(res,numpy.float)/sum(res)) - - return BasakIC - - - -
[docs]def CalculateBasakIC1(mol): - """ - ################################################################# - Obtain the information content with order 1 proposed by Basak - - ---->IC1 - ################################################################# - """ - return _CalculateBasakICn(mol,NumPath=2)
- -
[docs]def CalculateBasakIC2(mol): - """ - ################################################################# - Obtain the information content with order 2 proposed by Basak - - ---->IC2 - ################################################################# - """ - return _CalculateBasakICn(mol,NumPath=3)
- -
[docs]def CalculateBasakIC3(mol): - """ - ################################################################# - Obtain the information content with order 3 proposed by Basak - - ---->IC3 - ################################################################# - """ - return _CalculateBasakICn(mol,NumPath=4)
- -
[docs]def CalculateBasakIC4(mol): - """ - ################################################################# - Obtain the information content with order 4 proposed by Basak - - ---->IC4 - ################################################################# - """ - return _CalculateBasakICn(mol,NumPath=5)
- -
[docs]def CalculateBasakIC5(mol): - """ - ################################################################# - Obtain the information content with order 5 proposed by Basak - - ---->IC5 - ################################################################# - """ - return _CalculateBasakICn(mol,NumPath=6)
- -
[docs]def CalculateBasakIC6(mol): - """ - ################################################################# - Obtain the information content with order 6 proposed by Basak - - ---->IC6 - ################################################################# - """ - return _CalculateBasakICn(mol,NumPath=7)
- - - -
[docs]def CalculateBasakSIC1(mol): - """ - ################################################################# - Obtain the structural information content with order 1 - - proposed by Basak. - - ---->SIC1 - ################################################################# - """ - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=CalculateBasakIC1(mol) - if nAtoms<=1: - BasakSIC=0.0 - else: - BasakSIC=IC/numpy.log2(nAtoms) - - return BasakSIC
- -
[docs]def CalculateBasakSIC2(mol): - """ - ################################################################# - Obtain the structural information content with order 2 proposed - - by Basak. - - ---->SIC2 - ################################################################# - """ - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=CalculateBasakIC2(mol) - if nAtoms<=1: - BasakSIC=0.0 - else: - BasakSIC=IC/numpy.log2(nAtoms) - - return BasakSIC
- -
[docs]def CalculateBasakSIC3(mol): - """ - ################################################################# - Obtain the structural information content with order 3 proposed - - by Basak. - - ---->SIC3 - ################################################################# - """ - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=CalculateBasakIC3(mol) - if nAtoms<=1: - BasakSIC=0.0 - else: - BasakSIC=IC/numpy.log2(nAtoms) - - return BasakSIC
- -
[docs]def CalculateBasakSIC4(mol): - """ - ################################################################# - Obtain the structural information content with order 4 proposed - - by Basak. - - ---->SIC4 - ################################################################# - """ - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=CalculateBasakIC4(mol) - if nAtoms<=1: - BasakSIC=0.0 - else: - BasakSIC=IC/numpy.log2(nAtoms) - - return BasakSIC
- -
[docs]def CalculateBasakSIC5(mol): - """ - ################################################################# - Obtain the structural information content with order 5 proposed - - by Basak. - - ---->SIC5 - ################################################################# - """ - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=CalculateBasakIC5(mol) - if nAtoms<=1: - BasakSIC=0.0 - else: - BasakSIC=IC/numpy.log2(nAtoms) - - return BasakSIC
- -
[docs]def CalculateBasakSIC6(mol): - """ - ################################################################# - Obtain the structural information content with order 6 proposed - - by Basak. - - ---->SIC6 - ################################################################# - """ - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=CalculateBasakIC6(mol) - if nAtoms<=1: - BasakSIC=0.0 - else: - BasakSIC=IC/numpy.log2(nAtoms) - - return BasakSIC
- - - -
[docs]def CalculateBasakCIC1(mol): - """ - ################################################################# - Obtain the complementary information content with order 1 proposed - - by Basak. - - ---->CIC1 - ################################################################# - """ - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=CalculateBasakIC1(mol) - if nAtoms<=1: - BasakCIC=0.0 - else: - BasakCIC=numpy.log2(nAtoms)-IC - - return BasakCIC
- -
[docs]def CalculateBasakCIC2(mol): - """ - ################################################################# - Obtain the complementary information content with order 2 proposed - - by Basak. - - ---->CIC2 - ################################################################# - """ - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=CalculateBasakIC2(mol) - if nAtoms<=1: - BasakCIC=0.0 - else: - BasakCIC=numpy.log2(nAtoms)-IC - - return BasakCIC
- -
[docs]def CalculateBasakCIC3(mol): - """ - ################################################################# - Obtain the complementary information content with order 3 proposed - - by Basak. - - ---->CIC3 - ################################################################# - """ - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=CalculateBasakIC3(mol) - if nAtoms<=1: - BasakCIC=0.0 - else: - BasakCIC=numpy.log2(nAtoms)-IC - - return BasakCIC
- -
[docs]def CalculateBasakCIC4(mol): - """ - ################################################################# - Obtain the complementary information content with order 4 proposed - - by Basak. - - ---->CIC4 - ################################################################# - """ - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=CalculateBasakIC4(mol) - if nAtoms<=1: - BasakCIC=0.0 - else: - BasakCIC=numpy.log2(nAtoms)-IC - - return BasakCIC
- - -
[docs]def CalculateBasakCIC5(mol): - """ - ################################################################# - Obtain the complementary information content with order 5 proposed - - by Basak. - - ---->CIC5 - ################################################################# - """ - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=CalculateBasakIC5(mol) - if nAtoms<=1: - BasakCIC=0.0 - else: - BasakCIC=numpy.log2(nAtoms)-IC - - return BasakCIC
- - -
[docs]def CalculateBasakCIC6(mol): - """ - ################################################################# - Obtain the complementary information content with order 6 proposed - - by Basak. - - ---->CIC6 - ################################################################# - """ - Hmol=Chem.AddHs(mol) - nAtoms=Hmol.GetNumAtoms() - IC=CalculateBasakIC6(mol) - if nAtoms<=1: - BasakCIC=0.0 - else: - BasakCIC=numpy.log2(nAtoms)-IC - - return BasakCIC
- - - -_basak={'CIC0':CalculateBasakCIC0, - 'CIC1':CalculateBasakCIC1, - 'CIC2':CalculateBasakCIC2, - 'CIC3':CalculateBasakCIC3, - 'CIC4':CalculateBasakCIC4, - 'CIC5':CalculateBasakCIC5, - 'CIC6':CalculateBasakCIC6, - 'SIC0':CalculateBasakSIC0, - 'SIC1':CalculateBasakSIC1, - 'SIC2':CalculateBasakSIC2, - 'SIC3':CalculateBasakSIC3, - 'SIC4':CalculateBasakSIC4, - 'SIC5':CalculateBasakSIC5, - 'SIC6':CalculateBasakSIC6, - 'IC0':CalculateBasakIC0, - 'IC1':CalculateBasakIC1, - 'IC2':CalculateBasakIC2, - 'IC3':CalculateBasakIC3, - 'IC4':CalculateBasakIC4, - 'IC5':CalculateBasakIC5, - 'IC6':CalculateBasakIC6 - } - - -
[docs]def Getbasak(mol): - """ - ################################################################# - Get the dictionary of basak descriptors for given moelcule mol - ################################################################# - """ - result={} - for DesLabel in _basak.keys(): - result[DesLabel]=round(_basak[DesLabel](mol),3) - return result
- - - -def _GetHTMLDoc(): - """ - ################################################################# - Write HTML documentation for this module. - ################################################################# - """ - import pydoc - pydoc.writedoc('basak') -################################################################################ - -if __name__ =='__main__': - - - smi5=['CCCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCCCCN','c1ccccc1N'] - for index, smi in enumerate(smi5): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',Getbasak(m) - print len(Getbasak(m)) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/bcut.html b/PyBioMed/doc/_build/html/_modules/bcut.html deleted file mode 100644 index 5adc4a6..0000000 --- a/PyBioMed/doc/_build/html/_modules/bcut.html +++ /dev/null @@ -1,329 +0,0 @@ - - - - - - - - bcut — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for bcut

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-
-The calculation of Burden eigvenvalue descriptors. You can get 64
-
-molecular decriptors. You can freely use and distribute it. If you hava  
-
-any problem, you could contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-##############################################################################
-"""
-
-from rdkit import Chem
-from AtomProperty import GetRelativeAtomicProperty
-
-import numpy
-import numpy.linalg
-
-
-Version=1.0
-################################################################
-
-def _GetBurdenMatrix(mol,propertylabel='m'):
-    """
-    #################################################################
-    *Internal used only**
-    
-    Calculate Burden matrix and their eigenvalues.
-    #################################################################
-    """
-    mol=Chem.AddHs(mol)
-    Natom=mol.GetNumAtoms()
-
-    AdMatrix=Chem.GetAdjacencyMatrix(mol)
-    bondindex=numpy.argwhere(AdMatrix)
-    AdMatrix1=numpy.array(AdMatrix,dtype=numpy.float32)
-    
-    #The diagonal elements of B, Bii, are either given by 
-    #the carbon normalized atomic mass,
-    #van der Waals volume, Sanderson electronegativity,
-    #and polarizability of atom i.
-
-    for i in range(Natom):
-        atom=mol.GetAtomWithIdx(i)
-        temp=GetRelativeAtomicProperty(element=atom.GetSymbol(),propertyname=propertylabel)
-        AdMatrix1[i,i]=round(temp,3)
-        
-    #The element of B connecting atoms i and j, Bij, 
-    #is equal to the square root of the bond
-    #order between atoms i and j.
-    
-    for i in bondindex:
-        bond=mol.GetBondBetweenAtoms(int(i[0]),int(i[1]))
-        if bond.GetBondType().name =='SINGLE':
-            AdMatrix1[i[0],i[1]]=round(numpy.sqrt(1),3)
-        if bond.GetBondType().name=="DOUBLE":
-            AdMatrix1[i[0],i[1]]=round(numpy.sqrt(2),3)
-        if bond.GetBondType().name=="TRIPLE":
-            AdMatrix1[i[0],i[1]]=round(numpy.sqrt(3),3)
-        if bond.GetBondType().name=="AROMATIC":
-            AdMatrix1[i[0],i[1]]=round(numpy.sqrt(1.5),3)
-    
-    ##All other elements of B (corresponding non bonded 
-    #atom pairs) are set to 0.001       
-    bondnonindex=numpy.argwhere(AdMatrix==0)
-    
-    for i in bondnonindex:
-        if i[0]!=i[1]:
-            
-            AdMatrix1[i[0],i[1]]=0.001  
-     
-    return numpy.real(numpy.linalg.eigvals(AdMatrix1))
-    
-    
-
-
[docs]def CalculateBurdenMass(mol): - """ - ################################################################# - Calculate Burden descriptors based on atomic mass. - - res--->dict type with 16 descriptors - ################################################################# - """ - temp=_GetBurdenMatrix(mol,propertylabel='m') - temp1=numpy.sort(temp[temp>=0]) - temp2=numpy.sort(numpy.abs(temp[temp<0])) - - if len(temp1)<8: - temp1=numpy.concatenate((numpy.zeros(8),temp1)) - if len(temp2)<8: - temp2=numpy.concatenate((numpy.zeros(8),temp2)) - - bcut=["bcutm16","bcutm15","bcutm14","bcutm13","bcutm12","bcutm11","bcutm10", - "bcutm9","bcutm8","bcutm7","bcutm6","bcutm5","bcutm4","bcutm3", - "bcutm2","bcutm1"] - bcutvalue=numpy.concatenate((temp2[-8:],temp1[-8:])) - - bcutvalue=[round(i,3) for i in bcutvalue] - res=dict(zip(bcut,bcutvalue)) - return res
- - - -
[docs]def CalculateBurdenVDW(mol): - """ - ################################################################# - Calculate Burden descriptors based on atomic vloumes - - res-->dict type with 16 descriptors - ################################################################# - """ - temp=_GetBurdenMatrix(mol,propertylabel='V') - temp1=numpy.sort(temp[temp>=0]) - temp2=numpy.sort(numpy.abs(temp[temp<0])) - - if len(temp1)<8: - temp1=numpy.concatenate((numpy.zeros(8),temp1)) - if len(temp2)<8: - temp2=numpy.concatenate((numpy.zeros(8),temp2)) - - bcut=["bcutv16","bcutv15","bcutv14","bcutv13","bcutv12","bcutv11","bcutv10", - "bcutv9","bcutv8","bcutv7","bcutv6","bcutv5","bcutv4","bcutv3", - "bcutv2","bcutv1"] - bcutvalue=numpy.concatenate((temp2[-8:],temp1[-8:])) - - bcutvalue=[round(i,3) for i in bcutvalue] - res=dict(zip(bcut,bcutvalue)) - return res
- - - -
[docs]def CalculateBurdenElectronegativity(mol): - """ - ################################################################# - Calculate Burden descriptors based on atomic electronegativity. - - res-->dict type with 16 descriptors - ################################################################# - """ - temp=_GetBurdenMatrix(mol,propertylabel='En') - temp1=numpy.sort(temp[temp>=0]) - temp2=numpy.sort(numpy.abs(temp[temp<0])) - - if len(temp1)<8: - temp1=numpy.concatenate((numpy.zeros(8),temp1)) - if len(temp2)<8: - temp2=numpy.concatenate((numpy.zeros(8),temp2)) - - bcut=["bcute16","bcute15","bcute14","bcute13","bcute12","bcute11","bcute10", - "bcute9","bcute8","bcute7","bcute6","bcute5","bcute4","bcute3", - "bcute2","bcute1"] - bcutvalue=numpy.concatenate((temp2[-8:],temp1[-8:])) - - bcutvalue=[round(i,3) for i in bcutvalue] - res=dict(zip(bcut,bcutvalue)) - return res
- - -
[docs]def CalculateBurdenPolarizability(mol): - """ - ################################################################# - Calculate Burden descriptors based on polarizability. - - res-->dict type with 16 descriptors - ################################################################# - """ - temp=_GetBurdenMatrix(mol,propertylabel='alapha') - temp1=numpy.sort(temp[temp>=0]) - temp2=numpy.sort(numpy.abs(temp[temp<0])) - - if len(temp1)<8: - temp1=numpy.concatenate((numpy.zeros(8),temp1)) - if len(temp2)<8: - temp2=numpy.concatenate((numpy.zeros(8),temp2)) - - bcut=["bcutp16","bcutp15","bcutp14","bcutp13","bcutp12","bcutp11","bcutp10", - "bcutp9","bcutp8","bcutp7","bcutp6","bcutp5","bcutp4","bcutp3", - "bcutp2","bcutp1"] - bcutvalue=numpy.concatenate((temp2[-8:],temp1[-8:])) - - bcutvalue=[round(i,3) for i in bcutvalue] - res=dict(zip(bcut,bcutvalue)) - return res
- - -
[docs]def GetBurden(mol): - """ - ################################################################# - Calculate all 64 Burden descriptors - - res-->dict type - ################################################################# - """ - bcut={} - bcut.update(CalculateBurdenMass(mol)) - bcut.update(CalculateBurdenVDW(mol)) - bcut.update(CalculateBurdenElectronegativity(mol)) - bcut.update(CalculateBurdenPolarizability(mol)) - return bcut
- - -def _GetHTMLDoc(): - """ - ################################################################# - Write HTML documentation for this module. - ################################################################# - """ - import pydoc - pydoc.writedoc('bcut') -######################################################################## - -if __name__ =='__main__': - - smi5=['CCOCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCCCCN','c1ccccc1N','C'] - for index, smi in enumerate(smi5): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi, '\n' - print GetBurden(m) - print len(GetBurden(m)) - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/cats2d.html b/PyBioMed/doc/_build/html/_modules/cats2d.html deleted file mode 100644 index 2209f41..0000000 --- a/PyBioMed/doc/_build/html/_modules/cats2d.html +++ /dev/null @@ -1,384 +0,0 @@ - - - - - - - - cats2d — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for cats2d

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-# CATS2D  Potential Pharmacophore Point (PPP) definitions as describes in
-# Pharmacophores and Pharmacophore Searches 2006 (Eds. T. Langer and R.D. Hoffmann), Chapter 3:
-# Alignment-free Pharmacophore Patterns - A Correlattion-vector Approach.
-# The last lipophilic pattern on page 55 of the book is realized as a graph search and not
-# as a SMARTS search. Therefore, the list contains only two lipophilic SMARTS patterns.
-# The format is tab separated and contains in the first column the PPP type (D = H-bond donor,
-# A = H-bond acceptor, P = positive, N = negative, L = lipophilic). The second column of each entry
-# contains the SMARTS pattern(s). The last entry is a description of the molecular feature
-
-D	[OH]	Oxygen atom of an OH group
-D	[#7H,#7H2]	Nitrogen atom of an NH or NH2 group
-A	[O]	Oxygen atom
-A	[#7H0]	Nitrogen atom not adjacent to a hydrogen atom
-P	[*+]	atom with a positive charge
-P	[#7H2]	Nitrogen atom of an NH2 group
-N	[*-]	Atom with a negative charge
-N	[C&D2&$(C(=O)O),P&D2&$(P(=O)O),S&D2&$(S(=O)O)] 	Carbon, sulfur or phosphorus atom of a COOH, SOOH or POOH group. This pattern is realized by an graph algorithm
-L	[Cl,Br,I]	Chlorine, bromine, or iodine atom
-L	[S;D2;$(S(C)(C))]	Sulfur atom adjacent to exactly two carbon atoms
-
-
-Created on Thu Sep  1 20:13:38 2016
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-"""
-###############################################################################
-import scipy
-from rdkit import Chem
-
-
-PPP = {"D":['[OH]','[#7H,#7H2]'],
-      "A":['[O]','[#7H0]'],
-      'P':['[*+]','[#7H2]'],
-      'N':['[*-]','[C&$(C(=O)O)]','[P&$(P(=O)O)]','[S&$(S(=O)O)]'],
-      "L":['[Cl,Br,I]','[S;D2;$(S(C)(C))]']}
-
-Version = 1.0
-###############################################################################
-
[docs]def MatchAtomType(IndexList,AtomTypeDict): - """ - ################################################################# - Mapping two atoms with a certain distance into their atom types - - such as AA,AL, DP,LD etc. - - The result is a list format. - ################################################################# - """ - First = [] - Second = [] - for i in AtomTypeDict: - if IndexList[0] in AtomTypeDict[i]: - First.append(i) - if IndexList[1] in AtomTypeDict[i]: - Second.append(i) - - temp = [] - for i in First: - for j in Second: - temp.append(i+j) - - temp1 = [] - for i in temp: - if i in ['AD','PD','ND','LD','PA','NA','LA', 'NP', 'LN','LP']: - temp1.append(i[1]+i[0]) - else: - temp1.append(i) - - res = [] - for i in temp1: - if i not in res: - res.append(i) - - return res
- -################################### -
[docs]def ContructLFromGraphSearch(mol): - """ - ################################################################# - The last lipophilic pattern on page 55 of the book is realized as a graph - search and not as a SMARTS search. - - "L" carbon atom adjacent only to carbon atoms. - - The result is a list format. - ################################################################# - """ - - AtomIndex = [] - Hmol = Chem.RemoveHs(mol) - for atom in Hmol.GetAtoms(): - temp = [] - if atom.GetAtomicNum() == 6: - for neighatom in atom.GetNeighbors(): - if neighatom.GetAtomicNum() == 6: - temp.append(0) - elif neighatom.GetAtomicNum() == 1: - continue - else: - temp.append(1) - if sum(temp) == 0: - AtomIndex.append(atom.GetIdx()) - - return AtomIndex
- - -################################### -
[docs]def FormCATSLabel(PathLength = 10): - - """ - ################################################################# - Construct the CATS label such as AA0, AA1,....AP3,....... - - The result is a list format. - - A acceptor; - P positive; - N negative; - L lipophilic; - D donor; - ################################################################# - """ - AtomPair =['DD','DA','DP','DN','DL','AA','AP','AN','AL', - 'PP','PN','PL','NN','NL','LL'] - CATSLabel = [] - for i in AtomPair: - for k in range(PathLength): - CATSLabel.append("CATS_"+i+str(k)) - return CATSLabel
- -################################### - -
[docs]def FormCATSDict(AtomDict,CATSLabel): - """ - ################################################################# - Construt the CATS dict. - - The result is a dict format. - ################################################################# - """ - - temp = [] - for i in AtomDict: - for j in AtomDict[i]: - if len(j) == 0: - continue - else: - temp.append(j+str(i)) - - res = dict() - for i in set(temp): - res.update({"CATS_"+i:temp.count(i)}) - - result = dict(zip(CATSLabel,[0 for i in CATSLabel])) - result.update(res) - - return result
-################################### - -
[docs]def AssignAtomType(mol): - """ - ################################################################# - Assign the atoms in the mol object into each of the PPP type - - according to PPP list definition. - - Note: res is a dict form such as {'A': [2], 'P': [], 'N': [4]} - ################################################################# - """ - res = dict() - for ppptype in PPP: - temp = [] - for i in PPP[ppptype]: - patt = Chem.MolFromSmarts(i) - atomindex = mol.GetSubstructMatches(patt) - atomindex = [k[0] for k in atomindex] - temp.extend(atomindex) - res.update({ppptype:temp}) - temp = ContructLFromGraphSearch(mol) - temp.extend(res['L']) - res.update({'L':temp}) - - return res
- -################################### -
[docs]def CATS2D(mol,PathLength = 10,scale = 3): - """ - ################################################################# - The main program for calculating the CATS descriptors. - - CATS: chemically advanced template serach - - ----> CATS_DA0 .... - - Usage: - - result=CATS2D(mol,PathLength = 10,scale = 1) - - Input: mol is a molecule object. - - PathLength is the max topological distance between two atoms. - - scale is the normalization method (descriptor scaling method) - - scale = 1 indicates that no normalization. That is to say: the - - values of the vector represent raw counts ("counts"). - - scale = 2 indicates that division by the number of non-hydrogen - - atoms (heavy atoms) in the molecule. - - scale = 3 indicates that division of each of 15 possible PPP pairs - - by the added occurrences of the two respective PPPs. - - Output: result is a dict format with the definitions of each descritor. - ################################################################# - """ - Hmol = Chem.RemoveHs(mol) - AtomNum = Hmol.GetNumAtoms() - atomtype = AssignAtomType(Hmol) - DistanceMatrix = Chem.GetDistanceMatrix(Hmol) - DM = scipy.triu(DistanceMatrix) - tempdict = {} - for PL in range(0,PathLength): - if PL == 0: - Index = [[k,k] for k in range(AtomNum)] - else: - Index1 = scipy.argwhere(DM == PL) - Index = [[k[0],k[1]] for k in Index1] - temp = [] - for j in Index: - temp.extend(MatchAtomType(j,atomtype)) - tempdict.update({PL:temp}) - - CATSLabel = FormCATSLabel(PathLength) - CATS1 = FormCATSDict(tempdict,CATSLabel) - - ####set normalization 3 - AtomPair = ['DD','DA','DP','DN','DL','AA','AP', - 'AN','AL','PP','PN','PL','NN','NL','LL'] - temp = [] - for i,j in tempdict.items(): - temp.extend(j) - - AtomPairNum = {} - for i in AtomPair: - AtomPairNum.update({i:temp.count(i)}) - ############################################ - CATS = {} - if scale == 1: - CATS = CATS1 - if scale == 2: - for i in CATS1: - CATS.update({i:round(CATS1[i]/(AtomNum+0.0),3)}) - if scale == 3: - for i in CATS1: - if AtomPairNum[i[5:7]] == 0: - CATS.update({i:round(CATS1[i],3)}) - else: - CATS.update({i:round(CATS1[i]/(AtomPairNum[i[5:7]]+0.0),3)}) - - return CATS
- -############################################################################### -if __name__ =='__main__': - - import string - import os -# import pandas as pd - smif = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - AllDes = [] - for i in smif: - mol = Chem.MolFromSmiles(i) - cats = CATS2D(mol,PathLength = 10,scale = 3) - AllDes.append(cats) - print AllDes -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/charge.html b/PyBioMed/doc/_build/html/_modules/charge.html deleted file mode 100644 index d781ca2..0000000 --- a/PyBioMed/doc/_build/html/_modules/charge.html +++ /dev/null @@ -1,839 +0,0 @@ - - - - - - - - charge — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for charge

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-
-The calculation of Charge descriptors based on Gasteiger/Marseli partial 
-
-charges(25). You can freely use and distribute it. If you hava  any problem, 
-
-you could contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com
-
-##############################################################################
-"""
-from rdkit import Chem
-from rdkit.Chem import rdPartialCharges as GMCharge
-
-import numpy
-
-Version=1.0
-##############################################################################
-iter_step=12
-
-def _CalculateElementMaxPCharge(mol,AtomicNum=6):
-    """
-    #################################################################
-    **Internal used only**
-    
-    Most positive charge on atom with atomic number equal to n
-    #################################################################
-    """
-    Hmol=Chem.AddHs(mol)
-    GMCharge.ComputeGasteigerCharges(Hmol,iter_step)
-    res=[]
-    for atom in Hmol.GetAtoms():
-        if atom.GetAtomicNum()==AtomicNum:
-            res.append(float(atom.GetProp('_GasteigerCharge')))
-            
-    if res==[]:
-        return 0
-    else:
-        return round(max(res),3)
-
-def _CalculateElementMaxNCharge(mol,AtomicNum=6):
-    """
-    #################################################################
-    **Internal used only**
-    
-    Most negative charge on atom with atomic number equal to n
-    #################################################################
-    """
-    Hmol=Chem.AddHs(mol)
-    GMCharge.ComputeGasteigerCharges(Hmol,iter_step)
-    res=[]
-    for atom in Hmol.GetAtoms():
-        if atom.GetAtomicNum()==AtomicNum:
-            res.append(float(atom.GetProp('_GasteigerCharge')))
-    if res==[]:
-        return 0
-    else:
-        return round(min(res),3)
-
-
-
[docs]def CalculateHMaxPCharge(mol): - """ - ################################################################# - Most positive charge on H atoms - - -->QHmax - - Usage: - - result=CalculateHMaxPCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return _CalculateElementMaxPCharge(mol,AtomicNum=1)
- - -
[docs]def CalculateCMaxPCharge(mol): - """ - ################################################################# - Most positive charge on C atoms - - -->QCmax - - Usage: - - result=CalculateCMaxPCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return _CalculateElementMaxPCharge(mol,AtomicNum=6)
- - -
[docs]def CalculateNMaxPCharge(mol): - """ - ################################################################# - Most positive charge on N atoms - - -->QNmax - - Usage: - - result=CalculateNMaxPCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return _CalculateElementMaxPCharge(mol,AtomicNum=7)
- - -
[docs]def CalculateOMaxPCharge(mol): - """ - ################################################################# - Most positive charge on O atoms - - -->QOmax - - Usage: - - result=CalculateOMaxPCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return _CalculateElementMaxPCharge(mol,AtomicNum=8)
- -
[docs]def CalculateHMaxNCharge(mol): - """ - ################################################################# - Most negative charge on H atoms - - -->QHmin - - Usage: - - result=CalculateHMaxNCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return _CalculateElementMaxNCharge(mol,AtomicNum=1)
- - -
[docs]def CalculateCMaxNCharge(mol): - """ - ################################################################# - Most negative charge on C atoms - - -->QCmin - - Usage: - - result=CalculateCMaxNCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return _CalculateElementMaxNCharge(mol,AtomicNum=6)
- - -
[docs]def CalculateNMaxNCharge(mol): - """ - ################################################################# - Most negative charge on N atoms - - -->QNmin - - Usage: - - result=CalculateNMaxNCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return _CalculateElementMaxNCharge(mol,AtomicNum=7)
- - -
[docs]def CalculateOMaxNCharge(mol): - """ - ################################################################# - Most negative charge on O atoms - - -->QOmin - - Usage: - - result=CalculateOMaxNCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return _CalculateElementMaxNCharge(mol,AtomicNum=8)
- -
[docs]def CalculateAllMaxPCharge(mol): - """ - ################################################################# - Most positive charge on ALL atoms - - -->Qmax - - Usage: - - result=CalculateAllMaxPCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - Hmol=Chem.AddHs(mol) - GMCharge.ComputeGasteigerCharges(Hmol,iter_step) - res=[] - for atom in Hmol.GetAtoms(): - res.append(float(atom.GetProp('_GasteigerCharge'))) - if res==[]: - return 0 - else: - return round(max(res),3)
- - -
[docs]def CalculateAllMaxNCharge(mol): - """ - ################################################################# - Most negative charge on all atoms - - -->Qmin - - Usage: - - result=CalculateAllMaxNCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - Hmol=Chem.AddHs(mol) - GMCharge.ComputeGasteigerCharges(Hmol,iter_step) - res=[] - for atom in Hmol.GetAtoms(): - res.append(float(atom.GetProp('_GasteigerCharge'))) - if res==[]: - return 0 - else: - return round(min(res),3)
- - -def _CalculateElementSumSquareCharge(mol,AtomicNum=6): - """ - ################################################################# - **Internal used only** - - Ths sum of square Charges on all atoms with atomicnumber equal to n - ################################################################# - """ - Hmol=Chem.AddHs(mol) - GMCharge.ComputeGasteigerCharges(Hmol,iter_step) - res=[] - for atom in Hmol.GetAtoms(): - if atom.GetAtomicNum()==AtomicNum: - res.append(float(atom.GetProp('_GasteigerCharge'))) - if res==[]: - return 0 - else: - return round(sum(numpy.square(res)),3) - - -
[docs]def CalculateHSumSquareCharge(mol): - - """ - ################################################################# - The sum of square charges on all H atoms - - -->QHss - - Usage: - - result=CalculateHSumSquareCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return _CalculateElementSumSquareCharge(mol,AtomicNum=1)
- - -
[docs]def CalculateCSumSquareCharge(mol): - """ - ################################################################# - The sum of square charges on all C atoms - - -->QCss - - Usage: - - result=CalculateCSumSquareCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return _CalculateElementSumSquareCharge(mol,AtomicNum=6)
- - -
[docs]def CalculateNSumSquareCharge(mol): - """ - ################################################################# - The sum of square charges on all N atoms - - -->QNss - - Usage: - - result=CalculateNSumSquareCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return _CalculateElementSumSquareCharge(mol,AtomicNum=7)
- -
[docs]def CalculateOSumSquareCharge(mol): - """ - ################################################################# - The sum of square charges on all O atoms - - -->QOss - - Usage: - - result=CalculateOSumSquareCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return _CalculateElementSumSquareCharge(mol,AtomicNum=8)
- -
[docs]def CalculateAllSumSquareCharge(mol): - """ - ################################################################# - The sum of square charges on all atoms - - -->Qass - - Usage: - - result=CalculateAllSumSquareCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - Hmol=Chem.AddHs(mol) - GMCharge.ComputeGasteigerCharges(Hmol,iter_step) - res=[] - for atom in Hmol.GetAtoms(): - res.append(float(atom.GetProp('_GasteigerCharge'))) - - if res==[]: - return 0 - else: - return round(sum(numpy.square(res)),3)
- -
[docs]def CalculateTotalPCharge(mol): - """ - ################################################################# - The total postive charge - - -->Tpc - - Usage: - - result=CalculateTotalPCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - Hmol=Chem.AddHs(mol) - GMCharge.ComputeGasteigerCharges(Hmol,iter_step) - res=[] - for atom in Hmol.GetAtoms(): - res.append(float(atom.GetProp('_GasteigerCharge'))) - - if res==[]: - return 0 - else: - cc=numpy.array(res,'d') - return round(sum(cc[cc>0]),3)
- -
[docs]def CalculateMeanPCharge(mol): - """ - ################################################################# - The average postive charge - - -->Mpc - - Usage: - - result=CalculateMeanPCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - Hmol=Chem.AddHs(mol) - GMCharge.ComputeGasteigerCharges(Hmol,iter_step) - res=[] - for atom in Hmol.GetAtoms(): - res.append(float(atom.GetProp('_GasteigerCharge'))) - - if res==[]: - return 0 - else: - cc=numpy.array(res,'d') - return round(numpy.mean(cc[cc>0]),3)
- - -
[docs]def CalculateTotalNCharge(mol): - """ - ################################################################# - The total negative charge - - -->Tnc - - Usage: - - result=CalculateTotalNCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - Hmol=Chem.AddHs(mol) - GMCharge.ComputeGasteigerCharges(Hmol,iter_step) - res=[] - for atom in Hmol.GetAtoms(): - res.append(float(atom.GetProp('_GasteigerCharge'))) - - if res==[]: - return 0 - else: - cc=numpy.array(res,'d') - return round(sum(cc[cc<0]),3)
- - -
[docs]def CalculateMeanNCharge(mol): - """ - ################################################################# - The average negative charge - - -->Mnc - - Usage: - - result=CalculateMeanNCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - Hmol=Chem.AddHs(mol) - GMCharge.ComputeGasteigerCharges(Hmol,iter_step) - res=[] - for atom in Hmol.GetAtoms(): - res.append(float(atom.GetProp('_GasteigerCharge'))) - - if res==[]: - return 0 - else: - cc=numpy.array(res,'d') - return round(numpy.mean(cc[cc<0]),3)
- - -
[docs]def CalculateTotalAbsoulteCharge(mol): - """ - ################################################################# - The total absolute charge - - -->Tac - - Usage: - - result=CalculateTotalAbsoulteCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - Hmol=Chem.AddHs(mol) - GMCharge.ComputeGasteigerCharges(Hmol,iter_step) - res=[] - for atom in Hmol.GetAtoms(): - res.append(float(atom.GetProp('_GasteigerCharge'))) - - if res==[]: - return 0 - else: - cc=numpy.array(res,'d') - return round(sum(numpy.absolute(cc)),3)
- -
[docs]def CalculateMeanAbsoulteCharge(mol): - """ - ################################################################# - The average absolute charge - - -->Mac - - Usage: - - result=CalculateMeanAbsoulteCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - Hmol=Chem.AddHs(mol) - GMCharge.ComputeGasteigerCharges(Hmol,iter_step) - res=[] - for atom in Hmol.GetAtoms(): - res.append(float(atom.GetProp('_GasteigerCharge'))) - - if res==[]: - return 0 - else: - cc=numpy.array(res,'d') - return round(numpy.mean(numpy.absolute(cc)),3)
- -
[docs]def CalculateRelativePCharge(mol): - """ - ################################################################# - The partial charge of the most positive atom divided by - - the total positive charge. - - -->Rpc - - Usage: - - result=CalculateRelativePCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - Hmol=Chem.AddHs(mol) - GMCharge.ComputeGasteigerCharges(Hmol,iter_step) - res=[] - for atom in Hmol.GetAtoms(): - res.append(float(atom.GetProp('_GasteigerCharge'))) - - if res==[]: - return 0 - else: - cc=numpy.array(res,'d') - if sum(cc[cc>0])==0: - return 0 - else: - return round(max(res)/sum(cc[cc>0]),3)
- -
[docs]def CalculateRelativeNCharge(mol): - """ - ################################################################# - The partial charge of the most negative atom divided - - by the total negative charge. - - -->Rnc - - Usage: - - result=CalculateRelativeNCharge(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - Hmol=Chem.AddHs(mol) - GMCharge.ComputeGasteigerCharges(Hmol,iter_step) - res=[] - for atom in Hmol.GetAtoms(): - res.append(float(atom.GetProp('_GasteigerCharge'))) - - if res==[]: - return 0 - else: - cc=numpy.array(res,'d') - if sum(cc[cc<0])==0: - return 0 - else: - return round(min(res)/sum(cc[cc<0]),3)
- -
[docs]def CalculateLocalDipoleIndex(mol): - """ - ################################################################# - Calculation of local dipole index (D) - - -->LDI - - Usage: - - result=CalculateLocalDipoleIndex(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - - GMCharge.ComputeGasteigerCharges(mol,iter_step) - res=[] - for atom in mol.GetAtoms(): - res.append(float(atom.GetProp('_GasteigerCharge'))) - cc = [numpy.absolute(res[x.GetBeginAtom().GetIdx()]-res[x.GetEndAtom().GetIdx()]) for x in mol.GetBonds()] - B=len(mol.GetBonds()) - - return round(sum(cc)/B,3)
- -
[docs]def CalculateSubmolPolarityPara(mol): - """ - ################################################################# - Calculation of submolecular polarity parameter(SPP) - - -->SPP - - Usage: - - result=CalculateSubmolPolarityPara(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - - return round(CalculateAllMaxPCharge(mol)-CalculateAllMaxNCharge(mol),3)
- - -_Charge={'SPP':CalculateSubmolPolarityPara, - 'LDI':CalculateLocalDipoleIndex, - 'Rnc':CalculateRelativeNCharge, - 'Rpc':CalculateRelativePCharge, - 'Mac':CalculateMeanAbsoulteCharge, - 'Tac':CalculateTotalAbsoulteCharge, - 'Mnc':CalculateMeanNCharge, - 'Tnc':CalculateTotalNCharge, - 'Mpc':CalculateMeanPCharge, - 'Tpc':CalculateTotalPCharge, - 'Qass':CalculateAllSumSquareCharge, - 'QOss':CalculateOSumSquareCharge, - 'QNss':CalculateNSumSquareCharge, - 'QCss':CalculateCSumSquareCharge, - 'QHss':CalculateHSumSquareCharge, - 'Qmin':CalculateAllMaxNCharge, - 'Qmax':CalculateAllMaxPCharge, - 'QOmin':CalculateOMaxNCharge, - 'QNmin':CalculateNMaxNCharge, - 'QCmin':CalculateCMaxNCharge, - 'QHmin':CalculateHMaxNCharge, - 'QOmax':CalculateOMaxPCharge, - 'QNmax':CalculateNMaxPCharge, - 'QCmax':CalculateCMaxPCharge, - 'QHmax':CalculateHMaxPCharge, - } - - -
[docs]def GetCharge(mol): - """ - ################################################################# - Get the dictionary of constitutional descriptors for given moelcule mol - - Usage: - - result=GetCharge(mol) - - Input: mol is a molecule object. - - Output: result is a dict form containing all charge descriptors. - ################################################################# - """ - result={} - for DesLabel in _Charge.keys(): - result[DesLabel]=_Charge[DesLabel](mol) - return result
- -############################################################################## - -if __name__ =='__main__': - - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - smi5=['CCCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCCCCN','c1ccccc1N'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',GetCharge(m) - print len(GetCharge(m)) - - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/connectivity.html b/PyBioMed/doc/_build/html/_modules/connectivity.html deleted file mode 100644 index ab617be..0000000 --- a/PyBioMed/doc/_build/html/_modules/connectivity.html +++ /dev/null @@ -1,1305 +0,0 @@ - - - - - - - - connectivity — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for connectivity

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-The calculation of molecular connectivity indices based on its topological
-
-structure. You can get 44 molecular connectivity descriptors. You can freely
-
-use and distribute it. If you hava  any problem, you could contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-from rdkit import Chem
-from rdkit.Chem import rdchem
-import numpy
-
-
-periodicTable = rdchem.GetPeriodicTable()
-
-Version=1.0
-################################################################
-
-
[docs]def CalculateChi0(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for path order 0 - - ---->Chi0 - - Usage: - - result=CalculateChi0(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - deltas=[x.GetDegree() for x in mol.GetAtoms()] - while 0 in deltas: - deltas.remove(0) - deltas=numpy.array(deltas,'d') - res=sum(numpy.sqrt(1./deltas)) - return res
- - - -
[docs]def CalculateChi1(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for path order 1 - - (i.e.,Radich) - - ---->Chi1 - - Usage: - - result=CalculateChi1(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - cc = [x.GetBeginAtom().GetDegree()*x.GetEndAtom().GetDegree() for x in mol.GetBonds()] - while 0 in cc: - cc.remove(0) - cc = numpy.array(cc,'d') - res = sum(numpy.sqrt(1./cc)) - return res
- -
[docs]def CalculateMeanRandic(mol): - """ - ################################################################# - Calculation of mean chi1 (Randic) connectivity index. - - ---->mchi1 - - Usage: - - result=CalculateMeanRandic(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - cc = [x.GetBeginAtom().GetDegree()*x.GetEndAtom().GetDegree() for x in mol.GetBonds()] - while 0 in cc: - cc.remove(0) - cc = numpy.array(cc,'d') - res = numpy.mean(numpy.sqrt(1./cc)) - - return res
- - - -def _CalculateChinp(mol,NumPath=2): - - """ - ################################################################# - **Internal used only** - - Calculation of molecular connectivity chi index for path order 2 - ################################################################# - """ - accum=0.0 - deltas=[x.GetDegree() for x in mol.GetAtoms()] - for path in Chem.FindAllPathsOfLengthN(mol,NumPath+1,useBonds=0): - cAccum=1.0 - for idx in path: - cAccum *= deltas[idx] - if cAccum: - accum += 1./numpy.sqrt(cAccum) - return accum - - -
[docs]def CalculateChi2(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for path order 2 - - ---->Chi2 - - Usage: - - result=CalculateChi2(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChinp(mol,NumPath=2)
- - - -
[docs]def CalculateChi3p(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for path order 3 - - ---->Chi3 - - Usage: - - result=CalculateChi3p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChinp(mol,NumPath=3)
- -
[docs]def CalculateChi4p(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for path order 4 - - ---->Chi4 - - Usage: - - result=CalculateChi4p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChinp(mol,NumPath=4)
- -
[docs]def CalculateChi5p(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for path order 5 - - ---->Chi5 - - Usage: - - result=CalculateChi5p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChinp(mol,NumPath=5)
- -
[docs]def CalculateChi6p(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for path order 6 - - ---->Chi6 - - Usage: - - result=CalculateChi6p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChinp(mol,NumPath=6)
- -
[docs]def CalculateChi7p(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for path order 7 - - ---->Chi7 - - Usage: - - result=CalculateChi7p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChinp(mol,NumPath=7)
- -
[docs]def CalculateChi8p(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for path order 8 - - ---->Chi8 - - Usage: - - result=CalculateChi8p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChinp(mol,NumPath=8)
- -
[docs]def CalculateChi9p(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for path order 9 - - ---->Chi9 - - Usage: - - result=CalculateChi9p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChinp(mol,NumPath=9)
- -
[docs]def CalculateChi10p(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for path order 10 - - ---->Chi10 - - Usage: - - result=CalculateChi10p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChinp(mol,NumPath=10)
- - -
[docs]def CalculateChi3c(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for cluster - - ---->Chi3c - - Usage: - - result=CalculateChi3c(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - - accum=0.0 - deltas=[x.GetDegree() for x in mol.GetAtoms()] - patt=Chem.MolFromSmarts('*~*(~*)~*') - HPatt=mol.GetSubstructMatches(patt) - for cluster in HPatt: - deltas=[mol.GetAtomWithIdx(x).GetDegree() for x in cluster] - while 0 in deltas: - deltas.remove(0) - if deltas!=[]: - deltas1=numpy.array(deltas,numpy.float) - accum=accum+1./numpy.sqrt(deltas1.prod()) - return accum
- -
[docs]def CalculateChi4c(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for cluster - - ---->Chi4c - - Usage: - - result=CalculateChi4c(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - - accum=0.0 - deltas=[x.GetDegree() for x in mol.GetAtoms()] - patt=Chem.MolFromSmarts('*~*(~*)(~*)~*') - HPatt=mol.GetSubstructMatches(patt) - for cluster in HPatt: - deltas=[mol.GetAtomWithIdx(x).GetDegree() for x in cluster] - while 0 in deltas: - deltas.remove(0) - if deltas!=[]: - deltas1=numpy.array(deltas,numpy.float) - accum=accum+1./numpy.sqrt(deltas1.prod()) - return accum
- - -
[docs]def CalculateChi4pc(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for path/cluster - - ---->Chi4pc - - Usage: - - result=CalculateChi4pc(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - - accum=0.0 - deltas=[x.GetDegree() for x in mol.GetAtoms()] - patt=Chem.MolFromSmarts('*~*(~*)~*~*') - HPatt=mol.GetSubstructMatches(patt) - #print HPatt - for cluster in HPatt: - deltas=[mol.GetAtomWithIdx(x).GetDegree() for x in cluster] - while 0 in deltas: - deltas.remove(0) - if deltas!=[]: - deltas1=numpy.array(deltas,numpy.float) - accum=accum+1./numpy.sqrt(deltas1.prod()) - return accum
- - -
[docs]def CalculateDeltaChi3c4pc(mol): - """ - ################################################################# - Calculation of the difference between chi3c and chi4pc - - ---->knotp - - Usage: - - result=CalculateDeltaChi3c4pc(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return abs(CalculateChi3c(mol)-CalculateChi4pc(mol))
- -def _CalculateChinch(mol,NumCycle=3): - - """ - ################################################################# - **Internal used only** - - Calculation of molecular connectivity chi index for cycles of n - ################################################################# - """ - accum=0.0 - deltas=[x.GetDegree() for x in mol.GetAtoms()] - for tup in mol.GetRingInfo().AtomRings(): - cAccum=1.0 - if len(tup)==NumCycle: - for idx in tup: - cAccum *= deltas[idx] - if cAccum: - accum += 1./numpy.sqrt(cAccum) - - return accum - -
[docs]def CalculateChi3ch(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for cycles of 3 - - ---->Chi3ch - - Usage: - - result=CalculateChi3ch(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - - return _CalculateChinch(mol,NumCycle=3)
- - -
[docs]def CalculateChi4ch(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for cycles of 4 - - ---->Chi4ch - - Usage: - - result=CalculateChi4ch(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChinch(mol,NumCycle=4)
- - -
[docs]def CalculateChi5ch(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for cycles of 5 - - ---->Chi5ch - - Usage: - - result=CalculateChi5ch(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - - return _CalculateChinch(mol,NumCycle=5)
- - -
[docs]def CalculateChi6ch(mol): - """ - ################################################################# - Calculation of molecular connectivity chi index for cycles of 6 - - ---->Chi6ch - - Usage: - - result=CalculateChi6ch(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChinch(mol,NumCycle=6)
- - -def _HKDeltas(mol,skipHs=1): - """ - ################################################################# - *Internal Use Only* - - Calculation of modified delta value for a molecule - - res---->list type - ################################################################# - """ - global periodicTable - res=[] - for atom in mol.GetAtoms(): - n=atom.GetAtomicNum() - if n>1: - nV=periodicTable.GetNOuterElecs(n) - nHs=atom.GetTotalNumHs() - if n<10: - res.append(float(nV-nHs)) - else: - res.append(float(nV-nHs)/float(n-nV-1)) - elif not skipHs: - res.append(0.0) - return res - - -
[docs]def CalculateChiv0(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - path order 0 - - ---->Chiv0 - - Usage: - - result=CalculateChiv0(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - deltas=_HKDeltas(mol,skipHs=0) - while 0 in deltas: - deltas.remove(0) - deltas=numpy.array(deltas,'d') - res=sum(numpy.sqrt(1./deltas)) - return res
- - -def _CalculateChivnp(mol,NumPath=1): - - """################################################################# - **Internal used only** - - Calculation of valence molecular connectivity chi index for path order 1 - ################################################################# - """ - - accum=0.0 - deltas=_HKDeltas(mol,skipHs=0) - for path in Chem.FindAllPathsOfLengthN(mol,NumPath+1,useBonds=0): - cAccum=1.0 - for idx in path: - cAccum *= deltas[idx] - if cAccum: - accum += 1./numpy.sqrt(cAccum) - return accum - - -
[docs]def CalculateChiv1(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - path order 1 - - ---->Chiv1 - - Usage: - - result=CalculateChiv1(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChivnp(mol,NumPath=1)
- - - -
[docs]def CalculateChiv2(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - path order 2 - - ---->Chiv2 - - Usage: - - result=CalculateChiv2(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChivnp(mol,NumPath=2)
- - - -
[docs]def CalculateChiv3p(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - path order 3 - - ---->Chiv3 - - Usage: - - result=CalculateChiv3p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - - return _CalculateChivnp(mol,NumPath=3)
- -
[docs]def CalculateChiv4p(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - path order 4 - - ---->Chiv4 - - Usage: - - result=CalculateChiv4p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - - return _CalculateChivnp(mol,NumPath=4)
- -
[docs]def CalculateChiv5p(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - path order 5 - - ---->Chiv5 - - Usage: - - result=CalculateChiv5p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - - return _CalculateChivnp(mol,NumPath=5)
- -
[docs]def CalculateChiv6p(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - path order 6 - - ---->Chiv6 - - Usage: - - result=CalculateChiv6p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - - return _CalculateChivnp(mol,NumPath=6)
- - -
[docs]def CalculateChiv7p(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - path order 7 - - ---->Chiv7 - - Usage: - - result=CalculateChiv7p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - - return _CalculateChivnp(mol,NumPath=7)
- -
[docs]def CalculateChiv8p(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - path order 8 - - ---->Chiv8 - - Usage: - - result=CalculateChiv8p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - - return _CalculateChivnp(mol,NumPath=8)
- -
[docs]def CalculateChiv9p(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - path order 9 - - ---->Chiv9 - - Usage: - - result=CalculateChiv9p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - - return _CalculateChivnp(mol,NumPath=9)
- -
[docs]def CalculateChiv10p(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - path order 10 - - ---->Chiv10 - - Usage: - - result=CalculateChiv10p(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - - return _CalculateChivnp(mol,NumPath=10)
- - -
[docs]def CalculateDeltaChi0(mol): - """ - ################################################################# - Calculation of the difference between chi0v and chi0 - - ---->dchi0 - - Usage: - - result=CalculateDeltaChi0(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return abs(CalculateChiv0(mol)-CalculateChi0(mol))
- - -
[docs]def CalculateDeltaChi1(mol): - """ - ################################################################# - Calculation of the difference between chi1v and chi1 - - ---->dchi1 - - Usage: - - result=CalculateDeltaChi1(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return abs(CalculateChiv1(mol)-CalculateChi1(mol))
- - -
[docs]def CalculateDeltaChi2(mol): - """ - ################################################################# - Calculation of the difference between chi2v and chi2 - - ---->dchi2 - - Usage: - - result=CalculateDeltaChi2(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return abs(_CalculateChivnp(mol,NumPath=2)-_CalculateChinp(mol,NumPath=2))
- - -
[docs]def CalculateDeltaChi3(mol): - """ - ################################################################# - Calculation of the difference between chi3v and chi3 - - ---->dchi3 - - Usage: - - result=CalculateDeltaChi3(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return abs(_CalculateChivnp(mol,NumPath=3)-_CalculateChinp(mol,NumPath=3))
- - -
[docs]def CalculateDeltaChi4(mol): - """ - ################################################################# - Calculation of the difference between chi4v and chi4 - - ---->dchi4 - - Usage: - - result=CalculateDeltaChi4(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return abs(_CalculateChivnp(mol,NumPath=4)-_CalculateChinp(mol,NumPath=4))
- - -def _AtomHKDeltas(atom,skipHs=0): - """ - ################################################################# - *Internal Use Only* - - Calculation of modified delta value for a molecule - ################################################################# - """ - global periodicTable - res=[] - n=atom.GetAtomicNum() - if n>1: - nV=periodicTable.GetNOuterElecs(n) - nHs=atom.GetTotalNumHs() - if n<10: - res.append(float(nV-nHs)) - else: - res.append(float(nV-nHs)/float(n-nV-1)) - elif not skipHs: - res.append(0.0) - return res - - -
[docs]def CalculateChiv3c(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for cluster - - ---->Chiv3c - - Usage: - - result=CalculateChiv3c(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - accum=0.0 - deltas=[x.GetDegree() for x in mol.GetAtoms()] - patt=Chem.MolFromSmarts('*~*(~*)~*') - HPatt=mol.GetSubstructMatches(patt) - #print HPatt - for cluster in HPatt: - deltas=[_AtomHKDeltas(mol.GetAtomWithIdx(x)) for x in cluster] - while 0 in deltas: - deltas.remove(0) - if deltas!=[]: - deltas1=numpy.array(deltas,numpy.float) - accum=accum+1./numpy.sqrt(deltas1.prod()) - return accum
- -
[docs]def CalculateChiv4c(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for cluster - - ---->Chiv4c - - Usage: - - result=CalculateChiv4c(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - accum=0.0 - deltas=[x.GetDegree() for x in mol.GetAtoms()] - patt=Chem.MolFromSmarts('*~*(~*)(~*)~*') - HPatt=mol.GetSubstructMatches(patt) - #print HPatt - for cluster in HPatt: - deltas=[_AtomHKDeltas(mol.GetAtomWithIdx(x)) for x in cluster] - while 0 in deltas: - deltas.remove(0) - if deltas!=[]: - deltas1=numpy.array(deltas,numpy.float) - accum=accum+1./numpy.sqrt(deltas1.prod()) - return accum
- -
[docs]def CalculateChiv4pc(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - path/cluster - - ---->Chiv4pc - - Usage: - - result=CalculateChiv4pc(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - accum=0.0 - deltas=[x.GetDegree() for x in mol.GetAtoms()] - patt=Chem.MolFromSmarts('*~*(~*)~*~*') - HPatt=mol.GetSubstructMatches(patt) - #print HPatt - for cluster in HPatt: - deltas=[_AtomHKDeltas(mol.GetAtomWithIdx(x)) for x in cluster] - while 0 in deltas: - deltas.remove(0) - if deltas!=[]: - deltas1=numpy.array(deltas,numpy.float) - accum=accum+1./numpy.sqrt(deltas1.prod()) - return accum
- -
[docs]def CalculateDeltaChiv3c4pc(mol): - """ - ################################################################# - Calculation of the difference between chiv3c and chiv4pc - - ---->knotpv - - Usage: - - result=CalculateDeltaChiv3c4pc(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return abs(CalculateChiv3c(mol)-CalculateChiv4pc(mol))
- -def _CalculateChivnch(mol,NumCyc=3): - """ - ################################################################# - **Internal used only** - - Calculation of valence molecular connectivity chi index for cycles of n - ################################################################# - """ - accum=0.0 - deltas=_HKDeltas(mol,skipHs=0) - for tup in mol.GetRingInfo().AtomRings(): - cAccum=1.0 - if len(tup)==NumCyc: - for idx in tup: - cAccum *= deltas[idx] - if cAccum: - accum += 1./numpy.sqrt(cAccum) - - return accum - -
[docs]def CalculateChiv3ch(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index - - for cycles of 3 - - ---->Chiv3ch - - Usage: - - result=CalculateChiv3ch(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChivnch(mol,NumCyc=3)
- - - -
[docs]def CalculateChiv4ch(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - cycles of 4 - - ---->Chiv4ch - - Usage: - - result=CalculateChiv4ch(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChivnch(mol,NumCyc=4)
- - -
[docs]def CalculateChiv5ch(mol): - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - cycles of 5 - - ---->Chiv5ch - - Usage: - - result=CalculateChiv5ch(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChivnch(mol,NumCyc=5)
- - - -
[docs]def CalculateChiv6ch(mol): - - """ - ################################################################# - Calculation of valence molecular connectivity chi index for - - cycles of 6 - - ---->Chiv6ch - - Usage: - - result=CalculateChiv6ch(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value - ################################################################# - """ - return _CalculateChivnch(mol,NumCyc=6)
- - - - - -_connectivity={'Chi0':CalculateChi0, - 'Chi1':CalculateChi1, - 'mChi1':CalculateMeanRandic, - 'Chi2':CalculateChi2, - 'Chi3':CalculateChi3p, - 'Chi4':CalculateChi4p, - 'Chi5':CalculateChi5p, - 'Chi6':CalculateChi6p, - 'Chi7':CalculateChi7p, - 'Chi8':CalculateChi8p, - 'Chi9':CalculateChi9p, - 'Chi10':CalculateChi10p, - 'Chi3c':CalculateChi3c, - 'Chi4c':CalculateChi4c, - 'Chi4pc':CalculateChi4pc, - 'Chi3ch':CalculateChi3ch, - 'Chi4ch':CalculateChi4ch, - 'Chi5ch':CalculateChi5ch, - 'Chi6ch':CalculateChi6ch, - 'knotp':CalculateDeltaChi3c4pc, - 'Chiv0':CalculateChiv0, - 'Chiv1':CalculateChiv1, - 'Chiv2':CalculateChiv2, - 'Chiv3':CalculateChiv3p, - 'Chiv4':CalculateChiv4p, - 'Chiv5':CalculateChiv5p, - 'Chiv6':CalculateChiv6p, - 'Chiv7':CalculateChiv7p, - 'Chiv8':CalculateChiv8p, - 'Chiv9':CalculateChiv9p, - 'Chiv10':CalculateChiv10p, - 'dchi0':CalculateDeltaChi0, - 'dchi1':CalculateDeltaChi1, - 'dchi2':CalculateDeltaChi2, - 'dchi3':CalculateDeltaChi3, - 'dchi4':CalculateDeltaChi4, - 'Chiv3c':CalculateChiv3c, - 'Chiv4c':CalculateChiv4c, - 'Chiv4pc':CalculateChiv4pc, - 'Chiv3ch':CalculateChiv3ch, - 'Chiv4ch':CalculateChiv4ch, - 'Chiv5ch':CalculateChiv5ch, - 'Chiv6ch':CalculateChiv6ch, - 'knotpv':CalculateDeltaChiv3c4pc - } - - - - - -
[docs]def GetConnectivity(mol): - """ - ################################################################# - Get the dictionary of connectivity descriptors for given moelcule mol - - Usage: - - result=GetConnectivity(mol) - - Input: mol is a molecule object. - - Output: result is a dict form containing all connectivity indices - ################################################################# - """ - result={} - for DesLabel in _connectivity.keys(): - result[DesLabel]=round(_connectivity[DesLabel](mol),3) - return result
- -############################################################################### -if __name__ =='__main__': - - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - smi5=['CCCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCCCCN','c1ccccc1N'] - - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',GetConnectivity(m) - print '\t',len(GetConnectivity(m)) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/constitution.html b/PyBioMed/doc/_build/html/_modules/constitution.html deleted file mode 100644 index 55aec0a..0000000 --- a/PyBioMed/doc/_build/html/_modules/constitution.html +++ /dev/null @@ -1,811 +0,0 @@ - - - - - - - - constitution — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for constitution

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-The calculation of molecular constitutional indices based on its topological
-
-structure. You can get 30 molecular connectivity descriptors. You can freely
-
-use and distribute it. If you hava  any problem, you could contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-from rdkit import Chem
-#from rdkit.Chem import rdchem
-from rdkit.Chem import Lipinski as LPK
-
-#import math
-
-Version=1.0
-#############################################################
-
-
[docs]def CalculateMolWeight(mol): - - """ - ################################################################# - Calculation of molecular weight - - Note that not including H - - ---->Weight - - Usage: - - result=CalculateMolWeight(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - - ################################################################# - """ - MolWeight=0 - for atom in mol.GetAtoms(): - MolWeight=MolWeight+atom.GetMass() - - return MolWeight
- - -
[docs]def CalculateAverageMolWeight(mol): - """ - ################################################################# - Calcualtion of average molecular weight - - Note that not including H - - ---->AWeight - - Usage: - - result=CalculateAverageMolWeight(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - - MolWeight=0 - for atom in mol.GetAtoms(): - MolWeight=MolWeight+atom.GetMass() - - return MolWeight/mol.GetNumAtoms()
- - -
[docs]def CalculateHydrogenNumber(mol): - - """ - ################################################################# - Calculation of Number of Hydrogen in a molecule - - ---->nhyd - - Usage: - - result=CalculateHydrogenNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - i=0 - Hmol=Chem.AddHs(mol) - for atom in Hmol.GetAtoms(): - if atom.GetAtomicNum()==1: - i=i+1 - - return i
- -
[docs]def CalculateHalogenNumber(mol): - - """ - ################################################################# - Calculation of Halogen counts in a molecule - - ---->nhal - - Usage: - - result=CalculateHalogenNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - i=0 - for atom in mol.GetAtoms(): - if atom.GetAtomicNum()==9 or atom.GetAtomicNum()==17 or atom.GetAtomicNum()==35 or atom.GetAtomicNum()==53: - i=i+1 - return i
- - - -
[docs]def CalculateHeteroNumber(mol): - """ - ################################################################# - Calculation of Hetero counts in a molecule - - ---->nhet - - Usage: - - result=CalculateHeteroNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - i=0 - for atom in mol.GetAtoms(): - if atom.GetAtomicNum()==6 or atom.GetAtomicNum()==1: - i=i+1 - - return mol.GetNumAtoms()-i
- - - -
[docs]def CalculateHeavyAtomNumber(mol): - """ - ################################################################# - Calculation of Heavy atom counts in a molecule - - ---->nhev - - Usage: - - result=CalculateHeavyAtomNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return mol.GetNumAtoms(onlyHeavy=1)
- - -def _CalculateElementNumber(mol,AtomicNumber=6): - - """ - ################################################################# - **Internal used only** - - Calculation of element counts with atomic number equal to n in a molecule - ################################################################# - """ - i=0 - for atom in mol.GetAtoms(): - if atom.GetAtomicNum()==AtomicNumber: - i=i+1 - - return i - - -
[docs]def CalculateFluorinNumber(mol): - - """ - ################################################################# - Calculation of Fluorin counts in a molecule - - ---->ncof - - Usage: - - result=CalculateFluorinNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - - return _CalculateElementNumber(mol,AtomicNumber=9)
- - -
[docs]def CalculateChlorinNumber(mol): - - """ - ################################################################# - Calculation of Chlorin counts in a molecule - - ---->ncocl - - Usage: - - result=CalculateChlorinNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - - return _CalculateElementNumber(mol,AtomicNumber=17)
- - -
[docs]def CalculateBromineNumber(mol): - - """ - ################################################################# - Calculation of Bromine counts in a molecule - - ---->ncobr - - Usage: - - result=CalculateBromineNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - - return _CalculateElementNumber(mol,AtomicNumber=35)
- -
[docs]def CalculateIodineNumber(mol): - """ - ################################################################# - Calculation of Iodine counts in a molecule - - ---->ncoi - - Usage: - - result=CalculateIodineNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - - return _CalculateElementNumber(mol,AtomicNumber=53)
- - -
[docs]def CalculateCarbonNumber(mol): - - """ - ################################################################# - Calculation of Carbon number in a molecule - - ---->ncarb - - Usage: - - result=CalculateCarbonNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - - return _CalculateElementNumber(mol,AtomicNumber=6)
- -
[docs]def CalculatePhosphorNumber(mol): - """ - ################################################################# - Calcualtion of Phosphor number in a molecule - - ---->nphos - - Usage: - - result=CalculatePhosphorNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return _CalculateElementNumber(mol,AtomicNumber=15)
- - -
[docs]def CalculateSulfurNumber(mol): - """ - ################################################################# - Calculation of Sulfur counts in a molecule - - ---->nsulph - - Usage: - - result=CalculateSulfurNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return _CalculateElementNumber(mol,AtomicNumber=16)
- - - -
[docs]def CalculateOxygenNumber(mol): - """ - ################################################################# - Calculation of Oxygen counts in a molecule - - ---->noxy - - Usage: - - result=CalculateOxygenNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - - """ - return _CalculateElementNumber(mol,AtomicNumber=8)
- - - -
[docs]def CalculateNitrogenNumber(mol): - """ - ################################################################# - Calculation of Nitrogen counts in a molecule - - ---->nnitro - - Usage: - - result=CalculateNitrogenNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - - return _CalculateElementNumber(mol,AtomicNumber=7)
- - -
[docs]def CalculateRingNumber(mol): - """ - ################################################################# - Calculation of ring counts in a molecule - - ---->nring - - Usage: - - result=CalculateRingNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return Chem.GetSSSR(mol)
- - -
[docs]def CalculateRotationBondNumber(mol): - """ - ################################################################# - Calculation of rotation bonds counts in a molecule - - ---->nrot - - Note that this is the same as calculation of single bond - - counts in a molecule. - - Usage: - - result=CalculateRotationBondNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return LPK.NumRotatableBonds(mol)
- - -
[docs]def CalculateHdonorNumber(mol): - """ - ################################################################# - Calculation of Hydrongen bond donor counts in a molecule - - ---->ndonr - - Usage: - - result=CalculateHdonorNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return LPK.NumHDonors(mol)
- - - -
[docs]def CalculateHacceptorNumber(mol): - """ - ################################################################# - Calculation of Hydrogen bond acceptor counts in a molecule - - ---->naccr - - Usage: - - result=CalculateHacceptorNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return LPK.NumHAcceptors(mol)
- - -
[docs]def CalculateSingleBondNumber(mol): - - """ - ################################################################# - Calculation of single bond counts in a molecule - - ---->nsb - - Usage: - - result=CalculateSingleBondNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - i=0; - for bond in mol.GetBonds(): - - if bond.GetBondType().name=='SINGLE': - i=i+1 - - return i
- - -
[docs]def CalculateDoubleBondNumber(mol): - - """ - ################################################################# - Calculation of double bond counts in a molecule - - ---->ndb - - Usage: - - result=CalculateDoubleBondNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - i=0; - for bond in mol.GetBonds(): - - if bond.GetBondType().name=='DOUBLE': - i=i+1 - - return i
- - - -
[docs]def CalculateTripleBondNumber(mol): - - """ - ################################################################# - Calculation of triple bond counts in a molecule - - ---->ntb - - Usage: - - result=CalculateTripleBondNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - i=0; - for bond in mol.GetBonds(): - - if bond.GetBondType().name=='TRIPLE': - i=i+1 - - return i
- -
[docs]def CalculateAromaticBondNumber(mol): - - """ - ################################################################# - Calculation of aromatic bond counts in a molecule - - ---->naro - - Usage: - - result=CalculateAromaticBondNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - i=0; - for bond in mol.GetBonds(): - - if bond.GetBondType().name=='AROMATIC': - i=i+1 - - return i
- -
[docs]def CalculateAllAtomNumber(mol): - """ - ################################################################# - Calculation of all atom counts in a molecule - - ---->nta - - Usage: - - result=CalculateAllAtomNumber(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - - return Chem.AddHs(mol).GetNumAtoms()
- -def _CalculatePathN(mol,PathLength=2): - """ - ################################################################# - *Internal Use Only* - - Calculation of the counts of path length N for a molecule - - ---->PC1-PC6 - - Usage: - - result=CalculateMolWeight(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return len(Chem.FindAllPathsOfLengthN(mol,PathLength,useBonds=1)) - -
[docs]def CalculatePath1(mol): - """ - ################################################################# - Calculation of the counts of path length 1 for a molecule - ################################################################# - """ - return _CalculatePathN(mol,1)
- -
[docs]def CalculatePath2(mol): - """ - ################################################################# - Calculation of the counts of path length 2 for a molecule - ################################################################# - """ - return _CalculatePathN(mol,2)
- -
[docs]def CalculatePath3(mol): - """ - ################################################################# - Calculation of the counts of path length 3 for a molecule - ################################################################# - """ - return _CalculatePathN(mol,3)
- -
[docs]def CalculatePath4(mol): - """ - ################################################################# - Calculation of the counts of path length 4 for a molecule - ################################################################# - """ - return _CalculatePathN(mol,4)
- -
[docs]def CalculatePath5(mol): - """ - ################################################################# - Calculation of the counts of path length 5 for a molecule - ################################################################# - """ - return _CalculatePathN(mol,5)
- -
[docs]def CalculatePath6(mol): - """ - ################################################################# - Calculation of the counts of path length 6 for a molecule - ################################################################# - """ - return _CalculatePathN(mol,6)
- - -_constitutional={'Weight':CalculateMolWeight, - 'AWeight':CalculateAverageMolWeight, - 'nhyd':CalculateHydrogenNumber, - 'nhal':CalculateHalogenNumber, - 'nhet':CalculateHeteroNumber, - 'nhev':CalculateHeavyAtomNumber, - 'ncof':CalculateFluorinNumber, - 'ncocl':CalculateChlorinNumber, - 'ncobr':CalculateBromineNumber, - 'ncoi':CalculateIodineNumber, - 'ncarb':CalculateCarbonNumber, - 'nphos':CalculatePhosphorNumber, - 'nsulph':CalculateOxygenNumber, - 'noxy':CalculateOxygenNumber, - 'nnitro':CalculateNitrogenNumber, - 'nring':CalculateRingNumber, - 'nrot':CalculateRotationBondNumber, - 'ndonr':CalculateHdonorNumber, - 'naccr':CalculateHacceptorNumber, - 'nsb':CalculateSingleBondNumber, - 'ndb':CalculateDoubleBondNumber, - 'naro':CalculateAromaticBondNumber, - 'ntb':CalculateTripleBondNumber, - 'nta':CalculateAllAtomNumber, - 'PC1':CalculatePath1, - 'PC2':CalculatePath2, - 'PC3':CalculatePath3, - 'PC4':CalculatePath4, - 'PC5':CalculatePath5, - 'PC6':CalculatePath6 - } - -
[docs]def GetConstitutional(mol): - """ - ################################################################# - Get the dictionary of constitutional descriptors for given moelcule mol - - Usage: - - result=GetConstitutional(mol) - - Input: mol is a molecule object. - - Output: result is a dict form containing all constitutional values. - ################################################################# - """ - result={} - for DesLabel in _constitutional.keys(): - result[DesLabel]=round(_constitutional[DesLabel](mol),3) - return result
- -############################################################# - -if __name__ =='__main__': - - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - smi5=['CCCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCCCCN','c1ccccc1N'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',GetConstitutional(m) - print len(GetConstitutional(m)) - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/estate.html b/PyBioMed/doc/_build/html/_modules/estate.html deleted file mode 100644 index 74231ab..0000000 --- a/PyBioMed/doc/_build/html/_modules/estate.html +++ /dev/null @@ -1,365 +0,0 @@ - - - - - - - - estate — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for estate

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-This module is to compute the estate fingerprints and values based on Kier 
-
-and Hall's paper. If you have any question please contact me via email.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-from rdkit.Chem.EState import Fingerprinter  as ESFP
-from rdkit import Chem
-
-import AtomTypes as ATEstate
-import numpy
-
-Version=1.0
-################################################################
-
-def _CalculateEState(mol,skipH=1):
-    """
-    #################################################################
-    **Internal used only**
-    
-    Get the EState value of each atom in a molecule
-    #################################################################
-    """
-    mol=Chem.AddHs(mol)
-    if skipH==1: 
-        mol=Chem.RemoveHs(mol)
-    tb1=Chem.GetPeriodicTable()
-    nAtoms=mol.GetNumAtoms()
-    Is=numpy.zeros(nAtoms,numpy.float)
-    for i in range(nAtoms):
-        at=mol.GetAtomWithIdx(i)
-        atNum=at.GetAtomicNum()
-        d=at.GetDegree()
-        if d>0:
-            h=at.GetTotalNumHs()
-            dv=tb1.GetNOuterElecs(atNum)-h         
-            #dv=numpy.array(_AtomHKDeltas(at),'d')
-            N=_GetPrincipleQuantumNumber(atNum)
-            Is[i]=(4.0/(N*N)*dv+1)/d
-    dists = Chem.GetDistanceMatrix(mol,useBO=0,useAtomWts=0)
-    dists +=1
-    accum = numpy.zeros(nAtoms,numpy.float)
-    for i in range(nAtoms):
-        for j in range(i+1,nAtoms):
-            p=dists[i,j]
-            if p < 1e6:
-                temp=(Is[i]-Is[j])/(p*p)
-                accum[i] +=temp
-                accum[j] -=temp
-    res=accum+Is
-    return res
-
-
-def _GetPrincipleQuantumNumber(atNum):
-    """
-    #################################################################
-    *Internal Use Only*
-    
-    Get the principle quantum number of atom with atomic
-    
-    number equal to atNum 
-    #################################################################
-    """
-    if atNum<=2:
-        return 1
-    elif atNum<=10:
-        return 2
-    elif atNum<=18:
-        return 3
-    elif atNum<=36:
-        return 4
-    elif atNum<=54:
-        return 5
-    elif atNum<=86:
-        return 6
-    else:
-        return 7
-
-
-
[docs]def CalculateEstateFingerprint(mol): - """ - ################################################################# - The Calculation of EState Fingerprints. - - It is the number of times each possible atom type is hit. - - Usage: - - result=CalculateEstateFingerprint(mol) - - Input: mol is a molecule object. - - Output: result is a dict form containing 79 estate fragments. - ################################################################# - """ - temp=ESFP.FingerprintMol(mol) - res={} - for i,j in enumerate(temp[0]): - res['Sfinger'+str(i+1)]=j - - return res
- - -
[docs]def CalculateEstateValue(mol): - """ - ################################################################# - The Calculate of EState Values. - - It is the sum of the Estate indices for atoms of each type. - - Usage: - - result=CalculateEstateValue(mol) - - Input: mol is a molecule object. - - Output: result is a dict form containing 79 estate values. - ################################################################# - """ - temp=ESFP.FingerprintMol(mol) - res={} - for i,j in enumerate(temp[1]): - res['S'+str(i+1)]=round(j,3) - - return res
- - -
[docs]def CalculateMaxAtomTypeEState(mol): - """ - ################################################################# - Calculation of maximum of E-State value of specified atom type - - res---->dict type - - Usage: - - result=CalculateMaxAtomTypeEState(mol) - - Input: mol is a molecule object. - - Output: result is a dict form containing 79 max estate values. - ################################################################# - """ - AT=ATEstate.GetAtomLabel(mol) - Estate=_CalculateEState(mol) - res=[] - for i in AT: - if i==[]: - res.append(0) - else: - res.append(max([Estate[k] for k in i])) - ESresult={} - for n,es in enumerate(res): - ESresult['Smax'+str(n)]=round(es,3) - - return ESresult
- - - -
[docs]def CalculateMinAtomTypeEState(mol): - """ - ################################################################# - Calculation of minimum of E-State value of specified atom type - - res---->dict type - - Usage: - - result=CalculateMinAtomTypeEState(mol) - - Input: mol is a molecule object. - - Output: result is a dict form containing 79 min estate values. - ################################################################# - """ - AT=ATEstate.GetAtomLabel(mol) - Estate=_CalculateEState(mol) - res=[] - for i in AT: - if i==[]: - res.append(0) - else: - res.append(min([Estate[k] for k in i])) - ESresult={} - for n,es in enumerate(res): - ESresult['Smin'+str(n)]=round(es,3) - - return ESresult
- - - -
[docs]def GetEstate(mol): - """ - ################################################################# - Obtain all descriptors related to Estate. - - Usage: - - result=GetEstate(mol) - - Input: mol is a molecule object. - - Output: result is a dict form containing all estate values. - ################################################################# - """ - result={} - result.update(CalculateEstateFingerprint(mol)) - result.update(CalculateEstateValue(mol)) - result.update(CalculateMaxAtomTypeEState(mol)) - result.update(CalculateMinAtomTypeEState(mol)) - - return result
- - - -def _GetEstate(mol): - """ - ################################################################# - Obtain all Estate descriptors except Estate fingerprints . - - Usage: - - result=_GetEstate(mol) - - Input: mol is a molecule object. - - Output: result is a dict form containing all estate values. - ################################################################# - """ - result={} - result.update(CalculateEstateValue(mol)) - result.update(CalculateMaxAtomTypeEState(mol)) - result.update(CalculateMinAtomTypeEState(mol)) - - return result -################################################################ - -if __name__=='__main__': - - - smi5=['COCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCOCCN','c1ccccc1N'] - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi -## print '\t',CalculateEstateFingerprint(m) -## print '\t',CalculateEstateValue(m) -## print '\t',CalculateMaxAtomTypeEState(m) -## print '\t', CalculateMinAtomTypeEState(m) - - print GetEstate(m) - - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/fingerprint.html b/PyBioMed/doc/_build/html/_modules/fingerprint.html deleted file mode 100644 index 4f582b3..0000000 --- a/PyBioMed/doc/_build/html/_modules/fingerprint.html +++ /dev/null @@ -1,774 +0,0 @@ - - - - - - - - fingerprint — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for fingerprint

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-This module is to compute the various fingerprints  based on the provided 
-
-fingerprint system. If you have any question please contact me via email.
-
-2016.11.15
-
-@author: Zhijiang Yao and Dongsheng Cao
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-from rdkit.Chem.Fingerprints import FingerprintMols
-from rdkit.Chem import MACCSkeys
-from rdkit.Chem import AllChem
-from rdkit import Chem
-from rdkit.Chem.AtomPairs import Pairs
-from rdkit.Chem.AtomPairs import Torsions
-from rdkit import DataStructs
-from estate import CalculateEstateFingerprint as EstateFingerprint
-import pybel
-from rdkit.Chem import ChemicalFeatures
-from rdkit.Chem.Pharm2D.SigFactory import SigFactory
-from rdkit.Chem.Pharm2D import Generate
-from ghosecrippen import GhoseCrippenFingerprint
-from PubChemFingerprints import calcPubChemFingerAll
-
-Version=1.0
-similaritymeasure=[i[0] for i in DataStructs.similarityFunctions]
-
-################################################################
-
[docs]def CalculateFP2Fingerprint(mol): - """ - ################################################################# - Calculate FP2 fingerprints (1024 bits). - - Usage: - - result=CalculateFP2Fingerprint(mol) - - Input: mol is a molecule object. - - Output: result is a tuple form. The first is the number of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - res={} - NumFinger = 1024 - temp = mol.calcfp().bits - for i in temp: - res.update({i:1}) - - return NumFinger,res
- -
[docs]def CalculateFP3Fingerprint(mol): - """ - ################################################################# - Calculate FP3 fingerprints (210 bits). - - Usage: - - result=CalculateFP3Fingerprint(mol) - - Input: mol is a molecule object. - - Output: result is a tuple form. The first is the number of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - res={} - NumFinger = 210 - temp = mol.calcfp('FP3').bits - for i in temp: - res.update({i:1}) - - return NumFinger,res
- -
[docs]def CalculateFP4Fingerprint(mol): - """ - ################################################################# - Calculate FP4 fingerprints (307 bits). - - Usage: - - result=CalculateFP4Fingerprint(mol) - - Input: mol is a molecule object. - - Output: result is a tuple form. The first is the number of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - res={} - NumFinger=307 - temp=mol.calcfp('FP4').bits - for i in temp: - res.update({i:1}) - - return NumFinger,res
- - -
[docs]def CalculateDaylightFingerprint(mol): - """ - ################################################################# - Calculate Daylight-like fingerprint or topological fingerprint - - (2048 bits). - - Usage: - - result=CalculateDaylightFingerprint(mol) - - Input: mol is a molecule object. - - Output: result is a tuple form. The first is the number of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - res={} - NumFinger=2048 - bv=FingerprintMols.FingerprintMol(mol) - temp=tuple(bv.GetOnBits()) - for i in temp: - res.update({i:1}) - - return NumFinger,res,bv
- - - -
[docs]def CalculateMACCSFingerprint(mol): - """ - ################################################################# - Calculate MACCS keys (166 bits). - - Usage: - - result=CalculateMACCSFingerprint(mol) - - Input: mol is a molecule object. - - Output: result is a tuple form. The first is the number of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - res={} - NumFinger=166 - bv=MACCSkeys.GenMACCSKeys(mol) - temp=tuple(bv.GetOnBits()) - for i in temp: - res.update({i:1}) - - return NumFinger,res,bv
- - - - -
[docs]def CalculateEstateFingerprint(mol): - """ - ################################################################# - Calculate E-state fingerprints (79 bits). - - Usage: - - result=CalculateEstateFingerprint(mol) - - Input: mol is a molecule object. - - Output: result is a tuple form. The first is the number of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - NumFinger=79 - res={} - temp=EstateFingerprint(mol) - for i in temp: - if temp[i]>0: - res[i[7:]]=1 - - return NumFinger,res,temp
- - -
[docs]def CalculateAtomPairsFingerprint(mol): - """ - ################################################################# - Calculate atom pairs fingerprints - - Usage: - - result=CalculateAtomPairsFingerprint(mol) - - Input: mol is a molecule object. - - Output: result is a tuple form. The first is the number of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - res=Pairs.GetAtomPairFingerprint(mol) - - return res.GetLength(),res.GetNonzeroElements(),res
- - - -
[docs]def CalculateTopologicalTorsionFingerprint(mol): - """ - ################################################################# - Calculate Topological Torsion Fingerprints - - Usage: - - result=CalculateTopologicalTorsionFingerprint(mol) - - Input: mol is a molecule object. - - Output: result is a tuple form. The first is the number of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - res=Torsions.GetTopologicalTorsionFingerprint(mol) - - return res.GetLength(),res.GetNonzeroElements(),res
- - - -
[docs]def CalculateMorganFingerprint(mol,radius=2): - """ - ################################################################# - Calculate Morgan - - Usage: - - result=CalculateMorganFingerprint(mol) - - Input: mol is a molecule object. - - radius is a radius. - - Output: result is a tuple form. The first is the number of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - res=AllChem.GetMorganFingerprint(mol,radius) - - return res.GetLength(),res.GetNonzeroElements(),res
- -
[docs]def CalculateECFP2Fingerprint(mol,radius=1): - """ - ################################################################# - Calculate ECFP2 - - Usage: - - result=CalculateECFP2Fingerprint(mol) - - Input: mol is a molecule object. - - radius is a radius. - - Output: result is a tuple form. The first is the vector of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - res=AllChem.GetMorganFingerprint(mol,radius) - - fp = tuple(AllChem.GetMorganFingerprintAsBitVect(mol, radius, nBits = 1024)) - - return fp, res.GetNonzeroElements(), res
- -
[docs]def CalculateECFP4Fingerprint(mol,radius=2): - """ - ################################################################# - Calculate ECFP4 - - Usage: - - result=CalculateECFP4Fingerprint(mol) - - Input: mol is a molecule object. - - radius is a radius. - - Output: result is a tuple form. The first is the vector of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - res=AllChem.GetMorganFingerprint(mol,radius) - - fp = tuple(AllChem.GetMorganFingerprintAsBitVect(mol, radius, nBits = 1024)) - - return fp, res.GetNonzeroElements(), res
- -
[docs]def CalculateECFP6Fingerprint(mol,radius=3): - """ - ################################################################# - Calculate ECFP6 - - Usage: - - result=CalculateECFP6Fingerprint(mol) - - Input: mol is a molecule object. - - radius is a radius. - - Output: result is a tuple form. The first is the vector of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - res=AllChem.GetMorganFingerprint(mol,radius) - - fp = tuple(AllChem.GetMorganFingerprintAsBitVect(mol, radius, nBits = 1024)) - - return fp, res.GetNonzeroElements(), res
- -
[docs]def CalculateSimilarityPybel(fp1,fp2): - """ - ################################################################# - Calculate Tanimoto similarity between two molecules. - - Usage: - - result=CalculateSimilarityPybel(fp1,fp2) - - Input: fp1 and fp2 are two DataStructs. - - Output: result is a Tanimoto similarity value. - ################################################################# - """ - intersection = set(fp1[1].keys())& set(fp2[1].keys()) - union = set(fp1[1].keys()) | set(fp2[1].keys()) - tanimoto = len(intersection) / float(len(union)) - return round(tanimoto,3)
- - -
[docs]def CalculateSimilarityRdkit(fp1,fp2,similarity="Tanimoto"): - """ - ################################################################# - Calculate similarity between two molecules. - - Usage: - - result=CalculateSimilarity(fp1,fp2) - Users can choose 11 different types: - Tanimoto, Dice, Cosine, Sokal, Russel, - RogotGoldberg, AllBit, Kulczynski, - McConnaughey, Asymmetric, BraunBlanquet - Input: fp1 and fp2 are two DataStructs. - - Output: result is a similarity value. - ################################################################# - """ - temp=DataStructs.similarityFunctions - for i in temp: - if similarity in i[0]: - similarityfunction=i[1] - else: - similarityfunction=temp[0][1] - - res=similarityfunction(fp1,fp2) - return round(res,3)
- - -
[docs]def CalculateFCFP2Fingerprint(mol, radius=1, nBits = 1024): - """ - ################################################################# - Calculate FCFP2 - - Usage: - - result=CalculateFCFP2Fingerprint(mol) - - Input: mol is a molecule object. - - radius is a radius. - - Output: result is a tuple form. The first is the vector of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - res = AllChem.GetMorganFingerprint(mol, radius, useFeatures = True) - - fp = tuple(AllChem.GetMorganFingerprintAsBitVect(mol, radius, nBits, useFeatures = True)) - - return fp, res.GetNonzeroElements(), res
- - -
[docs]def CalculateFCFP4Fingerprint(mol,radius=2, nBits = 1024): - """ - ################################################################# - Calculate FCFP4 - - Usage: - - result=CalculateFCFP4Fingerprint(mol) - - Input: mol is a molecule object. - - radius is a radius. - - Output: result is a tuple form. The first is the vector of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - res = AllChem.GetMorganFingerprint(mol, radius, useFeatures = True) - - fp = tuple(AllChem.GetMorganFingerprintAsBitVect(mol, radius, nBits, useFeatures = True)) - - return fp, res.GetNonzeroElements(), res
- - -
[docs]def CalculateFCFP6Fingerprint(mol,radius=3, nBits = 1024): - """ - ################################################################# - Calculate FCFP6 - - Usage: - - result=CalculateFCFP4Fingerprint(mol) - - Input: mol is a molecule object. - - radius is a radius. - - Output: result is a tuple form. The first is the vector of - - fingerprints. The second is a dict form whose keys are the - - position which this molecule has some substructure. The third - - is the DataStructs which is used for calculating the similarity. - ################################################################# - """ - res = AllChem.GetMorganFingerprint(mol, radius, useFeatures = True) - - fp = tuple(AllChem.GetMorganFingerprintAsBitVect(mol, radius, nBits, useFeatures = True)) - - return fp, res.GetNonzeroElements(),res
- -################################################################ -fdefstr = ''' -AtomType NDonor [N&!H0&v3,N&!H0&+1&v4,n&H1&+0] -AtomType ChalcDonor [O,S;H1;+0] -DefineFeature SingleAtomDonor [{NDonor},{ChalcDonor},!$([D1]-[C;D3]=[O,S,N])] - Family Donor - Weights 1 -EndFeature - -AtomType NAcceptor [$([N&v3;H1,H2]-[!$(*=[O,N,P,S])])] -Atomtype NAcceptor [$([N;v3;H0])] -AtomType NAcceptor [$([n;+0])] -AtomType ChalcAcceptor [$([O,S;H1;v2]-[!$(*=[O,N,P,S])])] -AtomType ChalcAcceptor [O,S;H0;v2] -Atomtype ChalcAcceptor [O,S;-] -Atomtype ChalcAcceptor [o,s;+0] -AtomType HalogenAcceptor [F] -DefineFeature SingleAtomAcceptor [{NAcceptor},{ChalcAcceptor},{HalogenAcceptor}] - Family Acceptor - Weights 1 -EndFeature - -# this one is delightfully easy: -DefineFeature AcidicGroup [C,S](=[O,S,P])-[O;H1,H0&-1] - Family NegIonizable - Weights 1.0,1.0,1.0 -EndFeature - -AtomType CarbonOrArom_NonCarbonyl [$([C,a]);!$([C,a](=O))] -AtomType BasicNH2 [$([N;H2&+0][{CarbonOrArom_NonCarbonyl}])] -AtomType BasicNH1 [$([N;H1&+0]([{CarbonOrArom_NonCarbonyl}])[{CarbonOrArom_NonCarbonyl}])] -AtomType BasicNH0 [$([N;H0&+0]([{CarbonOrArom_NonCarbonyl}])([{CarbonOrArom_NonCarbonyl}])[{CarbonOrArom_NonCarbonyl}])] -AtomType BasicNakedN [N,n;X2;+0] -DefineFeature BasicGroup [{BasicNH2},{BasicNH1},{BasicNH0},{BasicNakedN}] - Family PosIonizable - Weights 1.0 -EndFeature - -# aromatic rings of various sizes: -DefineFeature Arom5 a1aaaa1 - Family Aromatic - Weights 1.0,1.0,1.0,1.0,1.0 -EndFeature -DefineFeature Arom6 a1aaaaa1 - Family Aromatic - Weights 1.0,1.0,1.0,1.0,1.0,1.0 -EndFeature -DefineFeature Arom7 a1aaaaaa1 - Family Aromatic - Weights 1.0,1.0,1.0,1.0,1.0,1.0,1.0 -EndFeature -DefineFeature Arom8 a1aaaaaaa1 - Family Aromatic - Weights 1.0,1.0,1.0,1.0,1.0,1.0,1.0,1.0 -EndFeature -''' -featFactory = ChemicalFeatures.BuildFeatureFactoryFromString(fdefstr) - - -
[docs]def CalculatePharm2D2pointFingerprint(mol, featFactory = featFactory): - """ - Calculate Pharm2D2point Fingerprints - """ - sigFactory_2point = SigFactory(featFactory,minPointCount=2,maxPointCount=2) - sigFactory_2point.SetBins([(0, 1), (1, 2), (2, 3), (3, 4), (4, 5), (5, 6), (6, 7), (7, 8), (8, 9)]) - sigFactory_2point.Init() - res = Generate.Gen2DFingerprint(mol,sigFactory_2point) - - res_keys = tuple(res.GetOnBits()) - init_list = [0]*135 - for res_key in res_keys: - init_list[res_key] = 1 - - BitVect = tuple(init_list) - - return BitVect, res_keys, res
-################################################################ -
[docs]def CalculatePharm2D3pointFingerprint(mol, featFactory = featFactory): - """ - Calculate Pharm2D3point Fingerprints - """ - sigFactory_3point = SigFactory(featFactory,minPointCount=3,maxPointCount=3) - sigFactory_3point.SetBins([(0, 2), (2,4), (4,6), (6,10)]) - sigFactory_3point.Init() - res = Generate.Gen2DFingerprint(mol,sigFactory_3point) - - res_keys = tuple(res.GetOnBits()) - init_list = [0]*2135 - for res_key in res_keys: - init_list[res_key] = 1 - - BitVect = tuple(init_list) - - return BitVect, res_keys, res
- -################################################################ -
[docs]def CalculateGhoseCrippenFingerprint(mol, count = False): - """ - Calculate GhoseCrippen Fingerprints - """ - res = GhoseCrippenFingerprint(mol, count=count) - return res
- -
[docs]def CalculatePubChemFingerprint(mol): - """ - Calculate PubChem Fingerprints - """ - res = calcPubChemFingerAll(mol) - return res
- - -_FingerprintFuncs={'FP2':CalculateFP2Fingerprint, - 'FP3':CalculateFP3Fingerprint, - 'FP4':CalculateFP4Fingerprint, - 'topological':CalculateDaylightFingerprint, - 'Estate':CalculateEstateFingerprint, - 'atompairs':CalculateAtomPairsFingerprint, - 'torsions':CalculateTopologicalTorsionFingerprint, - 'morgan':CalculateMorganFingerprint, - 'ECFP2':CalculateECFP2Fingerprint, - 'ECFP4':CalculateECFP4Fingerprint, - 'ECFP6':CalculateECFP6Fingerprint, - 'MACCS':CalculateMACCSFingerprint, - 'FCFP2':CalculateFCFP2Fingerprint, - 'FCFP4':CalculateFCFP4Fingerprint, - 'FCFP6':CalculateFCFP6Fingerprint, - 'Pharm2D2point':CalculatePharm2D2pointFingerprint, - 'Pharm2D3point':CalculatePharm2D3pointFingerprint, - 'PubChem': CalculatePubChemFingerprint, - 'GhoseCrippen': CalculateGhoseCrippenFingerprint} -################################################################ - - -if __name__=="__main__": - - print '-'*10+'START'+'-'*10 - - ms = [Chem.MolFromSmiles('CCOC=N'), Chem.MolFromSmiles('NC1=NC(=CC=N1)N1C=CC2=C1C=C(O)C=C2')] - m2 = [pybel.readstring("smi",'CCOC=N'),pybel.readstring("smi",'CCO')] - res1=CalculateECFP4Fingerprint(ms[0]) - print res1 - print '-'*25 - res2=CalculateECFP4Fingerprint(ms[1]) - print res2 - print '-'*25 - mol = pybel.readstring("smi", 'CCOC=N') - res3 = CalculateFP3Fingerprint(mol) - print res3 - print '-'*25 - - mol = Chem.MolFromSmiles('O=C1NC(=O)NC(=O)C1(C(C)C)CC=C') - res4 = CalculatePharm2D2pointFingerprint(mol)[0] - print res4 - print '-'*25 - res5 = CalculatePharm2D3pointFingerprint(mol)[0] - print res5 - print '-'*25 - res6 = CalculateGhoseCrippenFingerprint(mol) - print res6 - print '-'*25 - res7 = CalculatePubChemFingerprint(mol) - print res7 - print '-'*10+'END'+'-'*10 -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/geary.html b/PyBioMed/doc/_build/html/_modules/geary.html deleted file mode 100644 index a315e7b..0000000 --- a/PyBioMed/doc/_build/html/_modules/geary.html +++ /dev/null @@ -1,339 +0,0 @@ - - - - - - - - geary — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for geary

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-The calculation of Geary autocorrelation indices based on its topological
-
-structure. You can get 32 molecular autocorrelation descriptors. You can 
-
-freely use and distribute it. If you hava  any problem, you could contact 
-
-with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-from rdkit import Chem
-from AtomProperty import GetRelativeAtomicProperty
-
-import numpy
-
-Version=1.0
-
-
-################################################################
-def _CalculateGearyAutocorrelation(mol,lag=1,propertylabel='m'):
-    """
-    #################################################################
-    **Internal used only**
-    
-    Calculation of Geary autocorrelation descriptors based on 
-    
-    different property weights.
-    
-    Usage:
-        
-    res=_CalculateGearyAutocorrelation(mol,lag=1,propertylabel='m')
-    
-    Input: mol is a molecule object.
-    
-    lag is the topological distance between atom i and atom j.
-    
-    propertylabel is the weighted property.
-    
-    Output: res is a numeric value.
-    #################################################################
-    """
-
-    Natom=mol.GetNumAtoms()
-    
-    prolist=[]
-    for i in mol.GetAtoms():
-        temp=GetRelativeAtomicProperty(i.GetSymbol(),propertyname=propertylabel)
-        prolist.append(temp)
-        
-    aveweight=sum(prolist)/Natom
-    
-    tempp=[numpy.square(x-aveweight) for x in prolist]   
-    
-    GetDistanceMatrix=Chem.GetDistanceMatrix(mol)
-    res=0.0
-    index=0
-    for i in range(Natom):
-        for j in range(Natom):  
-            if GetDistanceMatrix[i,j]==lag:
-                atom1=mol.GetAtomWithIdx(i)
-                atom2=mol.GetAtomWithIdx(j)
-                temp1=GetRelativeAtomicProperty(element=atom1.GetSymbol(),propertyname=propertylabel)
-                temp2=GetRelativeAtomicProperty(element=atom2.GetSymbol(),propertyname=propertylabel)
-                res=res+numpy.square(temp1-temp2)
-                index=index+1
-            else:
-                res=res+0.0
-                
-                
-    if sum(tempp)==0 or index==0:
-        result=0
-    else:
-        result=(res/index/2)/(sum(tempp)/(Natom-1))
-                
-    return round(result,3)
-
-
-
[docs]def CalculateGearyAutoMass(mol): - """ - ################################################################# - Calculation of Geary autocorrelation descriptors based on - - carbon-scaled atomic mass. - - Usage: - - res=CalculateMoranAutoMass(mol) - - Input: mol is a molecule object. - - Output: res is a dict form containing eight geary autocorrealtion - - descriptors. - ################################################################# - """ - res={} - - for i in range(8): - res['GATSm'+str(i+1)]=_CalculateGearyAutocorrelation(mol,lag=i+1,propertylabel='m') - - - return res
- - -
[docs]def CalculateGearyAutoVolume(mol): - """ - ################################################################# - Calculation of Geary autocorrelation descriptors based on - - carbon-scaled atomic van der Waals volume. - - Usage: - - res=CalculateGearyAutoVolume(mol) - - Input: mol is a molecule object. - - Output: res is a dict form containing eight geary autocorrealtion - - descriptors. - ################################################################# - """ - res={} - - for i in range(8): - res['GATSv'+str(i+1)]=_CalculateGearyAutocorrelation(mol,lag=i+1,propertylabel='V') - - - return res
- -
[docs]def CalculateGearyAutoElectronegativity(mol): - """ - ################################################################# - Calculation of Geary autocorrelation descriptors based on - - carbon-scaled atomic Sanderson electronegativity. - - Usage: - - res=CalculateGearyAutoElectronegativity(mol) - - Input: mol is a molecule object. - - Output: res is a dict form containing eight geary autocorrealtion - - descriptors. - ################################################################# - """ - res={} - - for i in range(8): - res['GATSe'+str(i+1)]=_CalculateGearyAutocorrelation(mol,lag=i+1,propertylabel='En') - - - return res
- -
[docs]def CalculateGearyAutoPolarizability(mol): - """ - ################################################################# - Calculation of Geary autocorrelation descriptors based on - - carbon-scaled atomic polarizability. - - Usage: - - res=CalculateGearyAutoPolarizability(mol) - - Input: mol is a molecule object. - - Output: res is a dict form containing eight geary autocorrealtion - - descriptors. - ################################################################# - """ - res={} - - for i in range(8): - res['GATSp'+str(i+1)]=_CalculateGearyAutocorrelation(mol,lag=i+1,propertylabel='alapha') - - - return res
- - -
[docs]def GetGearyAuto(mol): - """ - ################################################################# - Calcualate all Geary autocorrelation descriptors. - - (carbon-scaled atomic mass, carbon-scaled atomic van der Waals volume, - - carbon-scaled atomic Sanderson electronegativity, - - carbon-scaled atomic polarizability) - - Usage: - - res=GetGearyAuto(mol) - - Input: mol is a molecule object. - - Output: res is a dict form containing all geary autocorrealtion - - descriptors. - ################################################################# - """ - res={} - res.update(CalculateGearyAutoMass(mol)) - res.update(CalculateGearyAutoVolume(mol)) - res.update(CalculateGearyAutoElectronegativity(mol)) - res.update(CalculateGearyAutoPolarizability(mol)) - - return res
-########################################################################### -if __name__=='__main__': - - - smi5=['COCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCOCCN','c1ccccc1N'] - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi -## print '\t',CalculateEstateFingerprint(m) -## print '\t',CalculateEstateValue(m) -## print '\t',CalculateMaxAtomTypeEState(m) -## print '\t', CalculateMinAtomTypeEState(m) - - print GetGearyAuto(m) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/ghosecrippen.html b/PyBioMed/doc/_build/html/_modules/ghosecrippen.html deleted file mode 100644 index 2bd277e..0000000 --- a/PyBioMed/doc/_build/html/_modules/ghosecrippen.html +++ /dev/null @@ -1,196 +0,0 @@ - - - - - - - - ghosecrippen — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for ghosecrippen

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-
-This module is to calculate the ghosecrippen descriptor. If you
-
-have any question please contact me via email.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-"""
-import string
-import os
-from rdkit import Chem
-
-Version = 1.0
-###########################################################################
-def _ReadPatts(fileName):
-    
-  """ 
-  #################################################################
-  *Internal Use Only*
-  
-  parses the pattern list from the data file
-  #################################################################
-  """
-  patts = {}
-  order = []
-  with open(fileName,'r') as f:
-    lines = f.readlines()
-  for line in lines:
-    if line[0] != '#':
-      splitLine = line.split('\t')
-      if len(splitLine) >= 4 and splitLine[0] != '':
-        sma = splitLine[1]
-        if sma != 'SMARTS':
-          sma.replace('"','')
-          p = Chem.MolFromSmarts(sma)
-          if p:
-            cha = string.strip(splitLine[0])
-            if cha not in order:
-              order.append(cha)
-            l = patts.get(cha,[])
-            l.append((sma,p))
-            patts[cha] = l
-        else:
-          print('Problems parsing smarts: %s'%(sma))
-  return order,patts
-
-
-###########################################################################
-
[docs]def GhoseCrippenFingerprint(mol,count = False): - """ - ################################################################# - Ghose-Crippen substructures or counts based on the definitions of - - SMARTS from Ghose-Crippen's paper. (110 dimension) - - The result is a dict format. - ################################################################# - """ - order, patts = _ReadPatts(os.path.dirname(os.path.abspath(__file__))+"/Crippen.txt") - - GCres = dict() - for sma in patts: - match = mol.GetSubstructMatches(patts[sma][0][1],False,False) - temp = len([i[0] for i in match]) - GCres.update({sma:temp}) - - res = {} - if count == False: - for i in GCres: - if GCres[i] > 0: - res.update({i:1}) - else: - res.update({i:0}) - else: - res = GCres - - return res
- - -############################################################################### -if __name__ =='__main__': - smif = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - AllDes = [] - for i in smif: - mol=Chem.MolFromSmiles(i) - order, patts = _ReadPatts(os.path.dirname(os.path.abspath(__file__))+"/Crippen.txt") - temp = GhoseCrippenFingerprint(mol,count = True) - AllDes.append(temp) - print AllDes -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/index.html b/PyBioMed/doc/_build/html/_modules/index.html deleted file mode 100644 index ae03e6d..0000000 --- a/PyBioMed/doc/_build/html/_modules/index.html +++ /dev/null @@ -1,147 +0,0 @@ - - - - - - - - Overview: module code — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - -
-
- -
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/kappa.html b/PyBioMed/doc/_build/html/_modules/kappa.html deleted file mode 100644 index 4dfcf1c..0000000 --- a/PyBioMed/doc/_build/html/_modules/kappa.html +++ /dev/null @@ -1,392 +0,0 @@ - - - - - - - - kappa — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for kappa

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-The calculation of Kier and Hall's kappa indices based on its topological
-
-structure. You can get 7 molecular kappa descriptors. You can 
-
-freely use and distribute it. If you hava  any problem, you could contact 
-
-with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-
-from rdkit import Chem
-from rdkit.Chem import rdchem
-from rdkit.Chem import pyPeriodicTable as PeriodicTable
-
-periodicTable = rdchem.GetPeriodicTable()
-
-
-Version=1.0
-################################################################
-
-
[docs]def CalculateKappa1(mol): - """ - ################################################################# - Calculation of molecular shape index for one bonded fragment - - ---->kappa1 - - Usage: - - result=CalculateKappa1(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - P1=mol.GetNumBonds(onlyHeavy=1) - A=mol.GetNumAtoms(onlyHeavy=1) - denom=P1+0.0 - if denom: - kappa=(A)*(A-1)**2/denom**2 - else: - kappa=0.0 - return round(kappa,3)
- - -
[docs]def CalculateKappa2(mol): - """ - ################################################################# - Calculation of molecular shape index for two bonded fragment - - ---->kappa2 - - Usage: - - result=CalculateKappa2(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - P2=len(Chem.FindAllPathsOfLengthN(mol,2)) - A=mol.GetNumAtoms(onlyHeavy=1) - - denom=P2+0.0 - if denom: - kappa=(A-1)*(A-2)**2/denom**2 - else: - kappa=0.0 - return round(kappa,3)
- - -
[docs]def CalculateKappa3(mol): - """ - ################################################################# - Calculation of molecular shape index for three bonded fragment - - ---->kappa3 - - Usage: - - result=CalculateKappa3(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - P3=len(Chem.FindAllPathsOfLengthN(mol,3)) - A=mol.GetNumAtoms(onlyHeavy=1) - - denom=P3+0.0 - if denom: - if A % 2 == 1: - kappa=(A-1)*(A-3)**2/denom**2 - else: - kappa=(A-3)*(A-2)**2/denom**2 - else: - kappa=0.0 - return round(kappa,3)
- -def _HallKierAlpha(mol): - """ - ################################################################# - *Internal Use Only* - - Calculation of the Hall-Kier alpha value for a molecule - ################################################################# - """ - alphaSum=0.0 - rC=PeriodicTable.nameTable['C'][5] - for atom in mol.GetAtoms(): - atNum=atom.GetAtomicNum() - if not atNum: continue - symb=atom.GetSymbol() - alphaV = PeriodicTable.hallKierAlphas.get(symb,None) - if alphaV is not None: - hyb=atom.GetHybridization()-2 - if hyb<len(alphaV): - alpha=alphaV[hyb] - if alpha is None: - alpha=alphaV[-1] - else: - alpha=alphaV[-1] - else: - rA=PeriodicTable.nameTable[symb][5] - alpha=rA/rC-1 - alphaSum += alpha - return alphaSum - - -
[docs]def CalculateKappaAlapha1(mol): - """ - ################################################################# - Calculation of molecular shape index for one bonded fragment - - with Alapha - - ---->kappam1 - - Usage: - - result=CalculateKappaAlapha1(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - P1=mol.GetNumBonds(onlyHeavy=1) - A=mol.GetNumAtoms(onlyHeavy=1) - alpha=_HallKierAlpha(mol) - denom=P1+alpha - if denom: - kappa=(A+alpha)*(A+alpha-1)**2/denom**2 - else: - kappa=0.0 - return round(kappa,3)
- - -
[docs]def CalculateKappaAlapha2(mol): - """ - ################################################################# - Calculation of molecular shape index for two bonded fragment - - with Alapha - - ---->kappam2 - - Usage: - - result=CalculateKappaAlapha2(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - P2=len(Chem.FindAllPathsOfLengthN(mol,2)) - A=mol.GetNumAtoms(onlyHeavy=1) - alpha=_HallKierAlpha(mol) - denom=P2+alpha - if denom: - kappa=(A+alpha-1)*(A+alpha-2)**2/denom**2 - else: - kappa=0.0 - return round(kappa,3)
- - -
[docs]def CalculateKappaAlapha3(mol): - """ - ################################################################# - Calculation of molecular shape index for three bonded fragment - - with Alapha - - ---->kappam3 - - Usage: - - result=CalculateKappaAlapha3(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - P3=len(Chem.FindAllPathsOfLengthN(mol,3)) - A=mol.GetNumAtoms(onlyHeavy=1) - alpha=_HallKierAlpha(mol) - denom=P3+alpha - if denom: - if A % 2 == 1: - kappa=(A+alpha-1)*(A+alpha-3)**2/denom**2 - else: - kappa=(A+alpha-3)*(A+alpha-2)**2/denom**2 - else: - kappa=0.0 - return round(kappa,3)
- - - -
[docs]def CalculateFlexibility(mol): - """ - ################################################################# - Calculation of Kier molecular flexibility index - - ---->phi - - Usage: - - result=CalculateFlexibility(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - kappa1=CalculateKappaAlapha1(mol) - kappa2=CalculateKappaAlapha2(mol) - A=mol.GetNumAtoms(onlyHeavy=1) - phi=kappa1*kappa2/(A+0.0) - return phi
- - -
[docs]def GetKappa(mol): - """ - ################################################################# - Calculation of all kappa values. - - Usage: - - result=GetKappa(mol) - - Input: mol is a molecule object. - - Output: result is a dcit form containing 6 kappa values. - ################################################################# - """ - res={} - res['kappa1']=CalculateKappa1(mol) - res['kappa2']=CalculateKappa2(mol) - res['kappa3']=CalculateKappa3(mol) - res['kappam1']=CalculateKappaAlapha1(mol) - res['kappam2']=CalculateKappaAlapha2(mol) - res['kappam3']=CalculateKappaAlapha3(mol) - res['phi']=CalculateFlexibility(mol) - return res
-################################################################ -if __name__ =='__main__': - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',GetKappa(m) - print '\t',len(GetKappa(m)) - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/moe.html b/PyBioMed/doc/_build/html/_modules/moe.html deleted file mode 100644 index a89f53f..0000000 --- a/PyBioMed/doc/_build/html/_modules/moe.html +++ /dev/null @@ -1,345 +0,0 @@ - - - - - - - - moe — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for moe

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-This module mainly implements the calculation of MOE-type descriptors, which 
-
-include LabuteASA, TPSA, slogPVSA, MRVSA, PEOEVSA, EstateVSA and VSAEstate, 
-
-respectively (60).
-
-If you have any question about these indices please contact me via email.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-from rdkit import Chem
-from rdkit.Chem import MolSurf as MOE 
-from rdkit.Chem.EState import EState_VSA as EVSA
-
-
-Version=1.0
-################################################################
-
-
[docs]def CalculateLabuteASA(mol): - """ - ################################################################# - Calculation of Labute's Approximate Surface Area (ASA from MOE) - - Usage: - - result=CalculateLabuteASA(mol) - - Input: mol is a molecule object - - Output: result is a dict form - ################################################################# - """ - res={} - temp=MOE.pyLabuteASA(mol,includeHs=1) - res['LabuteASA']=round(temp,3) - return res
- -
[docs]def CalculateTPSA(mol): - """ - ################################################################# - Calculation of topological polar surface area based on fragments. - - Implementation based on the Daylight contrib program tpsa. - - Usage: - - result=CalculateTPSA(mol) - - Input: mol is a molecule object - - Output: result is a dict form - ################################################################# - """ - res={} - temp=MOE.TPSA(mol) - res['MTPSA']=round(temp,3) - return res
- -
[docs]def CalculateSLOGPVSA(mol,bins=None): - """ - ################################################################# - MOE-type descriptors using LogP contributions and surface - - area contributions. - - logpBins=[-0.4,-0.2,0,0.1,0.15,0.2,0.25,0.3,0.4,0.5,0.6] - - You can specify your own bins to compute some descriptors. - - Usage: - - result=CalculateSLOGPVSA(mol) - - Input: mol is a molecule object - - Output: result is a dict form - ################################################################# - """ - temp=MOE.SlogP_VSA_(mol,bins,force=1) - res={} - for i,j in enumerate(temp): - res['slogPVSA'+str(i)]=round(j,3) - return res
- - -
[docs]def CalculateSMRVSA(mol,bins=None): - """ - ################################################################# - MOE-type descriptors using MR contributions and surface - - area contributions. - - mrBins=[1.29, 1.82, 2.24, 2.45, 2.75, 3.05, 3.63,3.8,4.0] - - You can specify your own bins to compute some descriptors. - - Usage: - - result=CalculateSMRVSA(mol) - - Input: mol is a molecule object - - Output: result is a dict form - ################################################################# - """ - temp=MOE.SMR_VSA_(mol,bins,force=1) - res={} - for i,j in enumerate(temp): - res['MRVSA'+str(i)]=round(j,3) - return res
- - -
[docs]def CalculatePEOEVSA(mol,bins=None): - - """ - ################################################################# - MOE-type descriptors using partial charges and surface - - area contributions. - - chgBins=[-.3,-.25,-.20,-.15,-.10,-.05,0,.05,.10,.15,.20,.25,.30] - - You can specify your own bins to compute some descriptors - - Usage: - - result=CalculatePEOEVSA(mol) - - Input: mol is a molecule object - - Output: result is a dict form - ################################################################# - """ - temp=MOE.PEOE_VSA_(mol,bins,force=1) - res={} - for i,j in enumerate(temp): - res['PEOEVSA'+str(i)]=round(j,3) - return res
- - -
[docs]def CalculateEstateVSA(mol,bins=None): - """ - ################################################################# - MOE-type descriptors using Estate indices and surface area - - contributions. - - estateBins=[-0.390,0.290,0.717,1.165,1.540,1.807,2.05,4.69,9.17,15.0] - - You can specify your own bins to compute some descriptors - - Usage: - - result=CalculateEstateVSA(mol) - - Input: mol is a molecule object - - Output: result is a dict form - ################################################################# - """ - temp=EVSA.EState_VSA_(mol,bins,force=1) - res={} - for i,j in enumerate(temp): - res['EstateVSA'+str(i)]=round(j,3) - return res
- - -
[docs]def CalculateVSAEstate(mol,bins=None): - """ - ################################################################# - MOE-type descriptors using Estate indices and surface - - area contributions. - - vsaBins=[4.78,5.00,5.410,5.740,6.00,6.07,6.45,7.00,11.0] - - You can specify your own bins to compute some descriptors - - Usage: - - result=CalculateVSAEstate(mol) - - Input: mol is a molecule object - - Output: result is a dict form - ################################################################# - """ - temp=EVSA.VSA_EState_(mol,bins,force=1) - res={} - for i,j in enumerate(temp): - res['VSAEstate'+str(i)]=round(j,3) - return res
- - - -
[docs]def GetMOE(mol): - """ - ################################################################# - The calculation of MOE-type descriptors (ALL). - - Usage: - - result=GetMOE(mol) - - Input: mol is a molecule object - - Output: result is a dict form - ################################################################# - """ - result={} - result.update(CalculateLabuteASA(mol)) - result.update(CalculateTPSA(mol)) - result.update(CalculateSLOGPVSA(mol,bins=None)) - result.update(CalculateSMRVSA(mol,bins=None)) - result.update(CalculatePEOEVSA(mol,bins=None)) - result.update(CalculateEstateVSA(mol,bins=None)) - result.update(CalculateVSAEstate(mol,bins=None)) - return result
- -######################################################################### - -if __name__=="__main__": - - - smi5=['COCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCOCCN','c1ccccc1N'] - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',GetMOE(m) - print '\t', len(GetMOE(m)) - - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/molproperty.html b/PyBioMed/doc/_build/html/_modules/molproperty.html deleted file mode 100644 index 6e0db42..0000000 --- a/PyBioMed/doc/_build/html/_modules/molproperty.html +++ /dev/null @@ -1,376 +0,0 @@ - - - - - - - - molproperty — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for molproperty

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-Calculation of Molecular physical/chemical properties based on some special 
-
-type of approaches(6), including: LogP; LogP2; MR; TPSA, UI and Hy.You can 
-
-freely use and distribute it. If you hava  any problem, you could contact 
-
-with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-from rdkit import Chem
-from rdkit.Chem import Crippen
-from rdkit.Chem import MolSurf as MS
-
-import math
-
-
-Version=1.0
-##############################################################
-
[docs]def CalculateMolLogP(mol): - """ - ################################################################# - Cacluation of LogP value based on Crippen method - - ---->LogP - - Usage: - - result=CalculateMolLogP(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return round(Crippen._pyMolLogP(mol),3)
- -
[docs]def CalculateMolLogP2(mol): - """ - ################################################################# - Cacluation of LogP^2 value based on Crippen method - - ---->LogP2 - - Usage: - - result=CalculateMolLogP2(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - res=Crippen._pyMolLogP(mol) - - return round(res**2,3)
- -
[docs]def CalculateMolMR(mol): - """ - ################################################################# - Cacluation of molecular refraction value based on Crippen method - - ---->MR - - Usage: - - result=CalculateMolMR(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return round(Crippen._pyMolMR(mol),3)
- -
[docs]def CalculateTPSA(mol): - """ - ################################################################# - calculates the polar surface area of a molecule based upon fragments - - Algorithm in: - - P. Ertl, B. Rohde, P. Selzer - - Fast Calculation of Molecular Polar Surface Area as a Sum of - - Fragment-based Contributions and Its Application to the Prediction - - of Drug Transport Properties, J.Med.Chem. 43, 3714-3717, 2000 - - Implementation based on the Daylight contrib program tpsa. - - ---->TPSA - - Usage: - - result=CalculateTPSA(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - return round(MS.TPSA(mol),3)
- - -def _CalculateBondNumber(mol,bondtype='SINGLE'): - - """ - ################################################################# - **Internal used only* - - Calculation of bond counts in a molecule. it may be - - SINGLE, DOUBLE, TRIPLE and AROMATIC - ################################################################# - """ - i=0; - for bond in mol.GetBonds(): - - if bond.GetBondType().name==bondtype: - i=i+1 - - return i - - -
[docs]def CalculateUnsaturationIndex(mol): - """ - ################################################################# - Calculation of unsaturation index. - - ---->UI - - Usage: - - result=CalculateUnsaturationIndex(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - nd=_CalculateBondNumber(mol,bondtype='DOUBLE') - nt=_CalculateBondNumber(mol,bondtype='TRIPLE') - na=_CalculateBondNumber(mol,bondtype='AROMATIC') - res=math.log((1+nd+nt+na),2) - - return round(res,3)
- - -
[docs]def CalculateHydrophilicityFactor(mol): - """ - ################################################################# - Calculation of hydrophilicity factor. The hydrophilicity - - index is described in more detail on page 225 of the - - Handbook of Molecular Descriptors (Todeschini and Consonni 2000). - - ---->Hy - - Usage: - - result=CalculateHydrophilicityFactor(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - nheavy=mol.GetNumAtoms(onlyHeavy=1) - nc=0 - for atom in mol.GetAtoms(): - if atom.GetAtomicNum()==6: - nc=nc+1 - nhy=0 - for atom in mol.GetAtoms(): - if atom.GetAtomicNum()==7 or atom.GetAtomicNum()==8 or atom.GetAtomicNum()==16: - atomn=atom.GetNeighbors() - for i in atomn: - if i.GetAtomicNum()==1: - nhy=nhy+1 - - res=(1+nhy)*math.log((1+nhy),2)+nc*(1.0/nheavy*math.log(1.0/nheavy,2))+math.sqrt((nhy+0.0)/(nheavy^2)) - return round(res,3)
- - -
[docs]def CalculateXlogP(mol): - """ - ################################################################# - Calculation of Wang octanol water partition coefficient. - - ---->XLogP - - Usage: - - result=CalculateXlogP(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - pass
- - -
[docs]def CalculateXlogP2(mol): - """ - ################################################################# - Calculation of Wang octanol water partition coefficient (XLogP^2). - - ---->XLogP2 - - Usage: - - result=CalculateMolLogP(mol) - - Input: mol is a molecule object. - - Output: result is a numeric value. - ################################################################# - """ - pass
- - -MolecularProperty={'LogP':CalculateMolLogP, - 'LogP2':CalculateMolLogP2, - 'MR':CalculateMolMR, - 'TPSA':CalculateTPSA, - 'Hy':CalculateHydrophilicityFactor, - 'UI':CalculateUnsaturationIndex - } - -
[docs]def GetMolecularProperty(mol): - """ - ################################################################# - Get the dictionary of constitutional descriptors for - - given moelcule mol - - Usage: - - result=GetMolecularProperty(mol) - - Input: mol is a molecule object. - - Output: result is a dict form containing 6 molecular properties. - ################################################################# - """ - result={} - for DesLabel in MolecularProperty.keys(): - result[DesLabel]=MolecularProperty[DesLabel](mol) - return result
- -########################################################## - -if __name__ =='__main__': - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - smi5=['CCCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCCCCN','c1ccccc1N'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',GetMolecularProperty(m) - #f.close() -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/moran.html b/PyBioMed/doc/_build/html/_modules/moran.html deleted file mode 100644 index 94c1072..0000000 --- a/PyBioMed/doc/_build/html/_modules/moran.html +++ /dev/null @@ -1,338 +0,0 @@ - - - - - - - - moran — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for moran

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-
-The calculation of Moran autocorrelation descriptors. You can get 32 molecular
-
-decriptors. You can freely use and distribute it. If you hava  any problem, 
-
-you could contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-from rdkit import Chem
-from AtomProperty import GetRelativeAtomicProperty
-
-import numpy
-
-
-Version=1.0
-################################################################
-
-def _CalculateMoranAutocorrelation(mol,lag=1,propertylabel='m'):
-    """
-    #################################################################
-    **Internal used only**
-    
-    Calculation of Moran autocorrelation descriptors based on 
-    
-    different property weights.
-    
-    Usage:
-        
-    res=_CalculateMoranAutocorrelation(mol,lag=1,propertylabel='m')
-    
-    Input: mol is a molecule object.
-    
-    lag is the topological distance between atom i and atom j.
-    
-    propertylabel is the weighted property.
-    
-    Output: res is a numeric value.
-    #################################################################  
-    """
-
-    Natom=mol.GetNumAtoms()
-    
-    prolist=[]
-    for i in mol.GetAtoms():
-        temp=GetRelativeAtomicProperty(i.GetSymbol(),propertyname=propertylabel)
-        prolist.append(temp)
-        
-    aveweight=sum(prolist)/Natom
-    
-    tempp=[numpy.square(x-aveweight) for x in prolist]   
-    
-    GetDistanceMatrix=Chem.GetDistanceMatrix(mol)
-    res=0.0
-    index=0
-    for i in range(Natom):
-        for j in range(Natom):  
-            if GetDistanceMatrix[i,j]==lag:
-                atom1=mol.GetAtomWithIdx(i)
-                atom2=mol.GetAtomWithIdx(j)
-                temp1=GetRelativeAtomicProperty(element=atom1.GetSymbol(),propertyname=propertylabel)
-                temp2=GetRelativeAtomicProperty(element=atom2.GetSymbol(),propertyname=propertylabel)
-                res=res+(temp1-aveweight)*(temp2-aveweight)
-                index=index+1
-            else:
-                res=res+0.0
-                
-                
-    if sum(tempp)==0 or index==0:
-        result=0
-    else:
-        result=(res/index)/(sum(tempp)/Natom)
-                
-    return round(result,3)
-
-
-
[docs]def CalculateMoranAutoMass(mol): - """ - ################################################################# - Calculation of Moran autocorrelation descriptors based on - - carbon-scaled atomic mass. - - Usage: - - res=CalculateMoranAutoMass(mol) - - Input: mol is a molecule object. - - Output: res is a dict form containing eight moran autocorrealtion - - descriptors. - ################################################################# - """ - res={} - - for i in range(8): - res['MATSm'+str(i+1)]=_CalculateMoranAutocorrelation(mol,lag=i+1,propertylabel='m') - - - return res
- - -
[docs]def CalculateMoranAutoVolume(mol): - """ - ################################################################# - Calculation of Moran autocorrelation descriptors based on - - carbon-scaled atomic van der Waals volume. - - Usage: - - res=CalculateMoranAutoVolume(mol) - - Input: mol is a molecule object. - - Output: res is a dict form containing eight moran autocorrealtion - - descriptors. - ################################################################# - """ - res={} - - for i in range(8): - res['MATSv'+str(i+1)]=_CalculateMoranAutocorrelation(mol,lag=i+1,propertylabel='V') - - - return res
- -
[docs]def CalculateMoranAutoElectronegativity(mol): - """ - ################################################################# - Calculation of Moran autocorrelation descriptors based on - - carbon-scaled atomic Sanderson electronegativity. - - Usage: - - res=CalculateMoranAutoElectronegativity(mol) - - Input: mol is a molecule object. - - Output: res is a dict form containing eight moran autocorrealtion - - descriptors. - ################################################################# - """ - res={} - - for i in range(8): - res['MATSe'+str(i+1)]=_CalculateMoranAutocorrelation(mol,lag=i+1,propertylabel='En') - - - return res
- -
[docs]def CalculateMoranAutoPolarizability(mol): - """ - ################################################################# - Calculation of Moran autocorrelation descriptors based on - - carbon-scaled atomic polarizability. - - Usage: - - res=CalculateMoranAutoPolarizability(mol) - - Input: mol is a molecule object. - - Output: res is a dict form containing eight moran autocorrealtion - - descriptors. - ################################################################# - """ - res={} - - for i in range(8): - res['MATSp'+str(i+1)]=_CalculateMoranAutocorrelation(mol,lag=i+1,propertylabel='alapha') - - - return res
- - -
[docs]def GetMoranAuto(mol): - """ - ################################################################# - Calcualate all Moran autocorrelation descriptors. - - (carbon-scaled atomic mass, carbon-scaled atomic van der Waals volume, - - carbon-scaled atomic Sanderson electronegativity, - - carbon-scaled atomic polarizability) - - Usage: - - res=GetMoranAuto(mol) - - Input: mol is a molecule object. - - Output: res is a dict form containing all moran autocorrealtion - - descriptors. - ################################################################# - """ - res={} - res.update(CalculateMoranAutoMass(mol)) - res.update(CalculateMoranAutoVolume(mol)) - res.update(CalculateMoranAutoElectronegativity(mol)) - res.update(CalculateMoranAutoPolarizability(mol)) - - return res
-########################################################################### -if __name__=='__main__': - - - smi5=['COCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCOCCN','c1ccccc1N'] - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi -## print '\t',CalculateEstateFingerprint(m) -## print '\t',CalculateEstateValue(m) -## print '\t',CalculateMaxAtomTypeEState(m) -## print '\t', CalculateMinAtomTypeEState(m) - - print GetMoranAuto(m) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/moreaubroto.html b/PyBioMed/doc/_build/html/_modules/moreaubroto.html deleted file mode 100644 index 8d1fea8..0000000 --- a/PyBioMed/doc/_build/html/_modules/moreaubroto.html +++ /dev/null @@ -1,320 +0,0 @@ - - - - - - - - moreaubroto — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for moreaubroto

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-
-The calculation of Moreau-Broto autocorrelation descriptors. You can get 32
-
-molecular decriptors. You can freely use and distribute it. If you hava  
-
-any problem, you could contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-
-from rdkit import Chem
-from AtomProperty import GetRelativeAtomicProperty
-
-import numpy
-
-
-Version=1.0
-################################################################
-
-def _CalculateMoreauBrotoAutocorrelation(mol,lag=1,propertylabel='m'):
-    """
-    #################################################################
-    **Internal used only**
-    
-    Calculation of Moreau-Broto autocorrelation descriptors based on 
-    
-    different property weights.
-    
-    Usage:
-    
-    res=_CalculateMoreauBrotoAutocorrelation(mol, lag=1,propertylabel='m')
-    
-    Input: mol is a molecule object.
-    
-    lag is the topological distance between atom i and atom j.
-    
-    propertylabel is the weighted property.
-    
-    Output: res is a numeric value.
-    #################################################################
-    """
-
-    Natom=mol.GetNumAtoms()
-    
-    GetDistanceMatrix=Chem.GetDistanceMatrix(mol)
-    res=0.0
-    for i in range(Natom):
-        for j in range(Natom):  
-            if GetDistanceMatrix[i,j]==lag:
-                atom1=mol.GetAtomWithIdx(i)
-                atom2=mol.GetAtomWithIdx(j)
-                temp1=GetRelativeAtomicProperty(element=atom1.GetSymbol(),propertyname=propertylabel)
-                temp2=GetRelativeAtomicProperty(element=atom2.GetSymbol(),propertyname=propertylabel)
-                res=res+temp1*temp2
-            else:
-                res=res+0.0
-                
-    return round(numpy.log(res/2+1),3)
-
-
-
[docs]def CalculateMoreauBrotoAutoMass(mol): - """ - ################################################################# - Calculation of Moreau-Broto autocorrelation descriptors based on - - carbon-scaled atomic mass. - - Usage: - - res=CalculateMoreauBrotoAutoMass(mol) - - Input: mol is a molecule object. - - Output: res is a dict form containing eight moreau broto autocorrealtion - - descriptors. - ################################################################# - """ - res={} - - for i in range(8): - res['ATSm'+str(i+1)]=_CalculateMoreauBrotoAutocorrelation(mol,lag=i+1,propertylabel='m') - - - return res
- - -
[docs]def CalculateMoreauBrotoAutoVolume(mol): - """ - ################################################################# - Calculation of Moreau-Broto autocorrelation descriptors based on - - carbon-scaled atomic van der Waals volume. - - Usage: - - res=CalculateMoreauBrotoAutoVolume(mol) - - Input: mol is a molcule object. - - Output: res is a dict form containing eight moreau broto autocorrealtion - - descriptors. - ################################################################# - """ - res={} - - for i in range(8): - res['ATSv'+str(i+1)]=_CalculateMoreauBrotoAutocorrelation(mol,lag=i+1,propertylabel='V') - - - return res
- -
[docs]def CalculateMoreauBrotoAutoElectronegativity(mol): - """ - ################################################################# - Calculation of Moreau-Broto autocorrelation descriptors based on - - carbon-scaled atomic Sanderson electronegativity. - - Usage: - - res=CalculateMoreauBrotoAutoElectronegativity(mol) - - Input: mol is a molcule object. - - Output: res is a dict form containing eight moreau broto autocorrealtion - - descriptors. - ################################################################# - """ - res={} - - for i in range(8): - res['ATSe'+str(i+1)]=_CalculateMoreauBrotoAutocorrelation(mol,lag=i+1,propertylabel='En') - - - return res
- -
[docs]def CalculateMoreauBrotoAutoPolarizability(mol): - """ - ################################################################# - Calculation of Moreau-Broto autocorrelation descriptors based on - - carbon-scaled atomic polarizability. - - res=CalculateMoreauBrotoAutoPolarizability(mol) - - Input: mol is a molcule object. - - Output: res is a dict form containing eight moreau broto autocorrealtion - - descriptors. - ################################################################# - """ - res={} - - for i in range(8): - res['ATSp'+str(i+1)]=_CalculateMoreauBrotoAutocorrelation(mol,lag=i+1,propertylabel='alapha') - - - return res
- - -
[docs]def GetMoreauBrotoAuto(mol): - """ - ################################################################# - Calcualate all Moreau-Broto autocorrelation descriptors. - - (carbon-scaled atomic mass, carbon-scaled atomic van der Waals volume, - - carbon-scaled atomic Sanderson electronegativity, - - carbon-scaled atomic polarizability) - - Usage: - - res=GetMoreauBrotoAuto(mol) - - Input: mol is a molecule object. - - Output: res is a dict form containing all moreau broto autocorrelation - - descriptors. - ################################################################# - """ - res={} - res.update(CalculateMoreauBrotoAutoMass(mol)) - res.update(CalculateMoreauBrotoAutoVolume(mol)) - res.update(CalculateMoreauBrotoAutoElectronegativity(mol)) - res.update(CalculateMoreauBrotoAutoPolarizability(mol)) - - return res
-########################################################################### -if __name__=='__main__': - - - smi5=['COCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCOCCN','c1ccccc1N'] - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi -## print '\t',CalculateEstateFingerprint(m) -## print '\t',CalculateEstateValue(m) -## print '\t',CalculateMaxAtomTypeEState(m) -## print '\t', CalculateMinAtomTypeEState(m) - - print len(GetMoreauBrotoAuto(m)) -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/test_PyBioMed.html b/PyBioMed/doc/_build/html/_modules/test_PyBioMed.html deleted file mode 100644 index 0dd30c3..0000000 --- a/PyBioMed/doc/_build/html/_modules/test_PyBioMed.html +++ /dev/null @@ -1,148 +0,0 @@ - - - - - - - - test_PyBioMed — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for test_PyBioMed

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-The script is used for testing.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.14
-
-Email: gadsby@163.com 
-"""
-
-import os
-
-from test_PyDNA import test_pydna
-
-from test_PyInteration import test_pyinteration
-
-from test_PyPretreat import test_pypretreat
-
-from test_PyGetMol import test_pygetmol
-
-from test_PyMolecule import test_pymolecule
-
-from test_PyProtein import test_pyprotein
-
-
[docs]def test_pybiomed(): - - test_pydna() - - test_pyinteration() - - test_pypretreat() - - test_pygetmol() - - test_pymolecule() - - test_pyprotein()
- - -if __name__ == '__main__': - test_pybiomed() - - - - - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/test_PyDNA.html b/PyBioMed/doc/_build/html/_modules/test_PyDNA.html deleted file mode 100644 index 89de256..0000000 --- a/PyBioMed/doc/_build/html/_modules/test_PyDNA.html +++ /dev/null @@ -1,478 +0,0 @@ - - - - - - - - test_PyDNA — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for test_PyDNA

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-The script is used for testing.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.14
-
-Email: gadsby@163.com 
-"""
-import time
-from PyBioMed.PyDNA.PyDNAutil import NormalizeIndex
-
-from PyBioMed.PyDNA.PyDNAac import GetDAC
-from PyBioMed.PyDNA.PyDNAac import GetDCC
-from PyBioMed.PyDNA.PyDNAac import GetDACC
-from PyBioMed.PyDNA.PyDNAac import GetTAC
-from PyBioMed.PyDNA.PyDNAac import GetTCC
-from PyBioMed.PyDNA.PyDNAac import GetTACC
-
-from PyBioMed.PyDNA.PyDNAnac import GetKmer
-from PyBioMed.PyDNA.PyDNAnac import GetRevcKmer
-from PyBioMed.PyDNA.PyDNAnac import GetIdKmer
-
-from PyBioMed.PyDNA.PyDNApsenac import GetPseDNC
-from PyBioMed.PyDNA.PyDNApsenac import GetPseKNC
-from PyBioMed.PyDNA.PyDNApsenac import GetPCPseDNC
-from PyBioMed.PyDNA.PyDNApsenac import GetPCPseTNC
-from PyBioMed.PyDNA.PyDNApsenac import GetSCPseDNC
-from PyBioMed.PyDNA.PyDNApsenac import GetSCPseTNC
-
-
-
[docs]def test_pydna(): - - #os.chdir(os.path.join(os.path.dirname(__file__), os.path.pardir)) - - - #============================================================================== - # PyDNAac - #============================================================================== - - extra_phyche_value = {'AA': [0.06, 0.5, 0.27, 1.59, 0.11, -0.11], - 'AC': [1.50, 0.50, 0.80, 0.13, 1.29, 1.04], - 'AG': [0.78, 0.36, 0.09, 0.68, -0.24, -0.62], - 'AT': [1.07, 0.22, 0.62, -1.02, 2.51, 1.17], - 'CA': [-1.38, -1.36, -0.27, -0.86, -0.62, -1.25], - 'CC': [0.06, 1.08, 0.09, 0.56, -0.82, 0.24], - 'CG': [-1.66, -1.22, -0.44, -0.82, -0.29, -1.39], - 'CT': [0.78, 0.36, 0.09, 0.68, -0.24, -0.62], - 'GA': [-0.08, 0.5, 0.27, 0.13, -0.39, 0.71], - 'GC': [-0.08, 0.22, 1.33, -0.35, 0.65, 1.59], - 'GG': [0.06, 1.08, 0.09, 0.56, -0.82, 0.24], - 'GT': [1.50, 0.50, 0.80, 0.13, 1.29, 1.04], - 'TA': [-1.23, -2.37, -0.44, -2.24, -1.51, -1.39], - 'TC': [-0.08, 0.5, 0.27, 0.13, -0.39, 0.71], - 'TG': [-1.38, -1.36, -0.27, -0.86, -0.62, -1.25], - 'TT': [0.06, 0.5, 0.27, 1.59, 0.11, -0.11]} - phyche_index = \ - [[2.26, 3.03, 2.03, 3.83, 1.78, 1.65, 2.00, 2.03, 1.93, 2.61, 1.65, 3.03, 1.20, 1.93, 1.78, 2.26], - [7.65, 8.93, 7.08, 9.07, 6.38, 8.04, 6.23, 7.08, 8.56, 9.53, 8.04, 8.93, 6.23, 8.56, 6.38, 7.65]] - - - print '...............................................................' - print 'testing the GetDAC module' - - dac = GetDAC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt']) - print(dac) - print(len(dac)) - - dac = GetDAC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', all_property=True) - print(dac) - print(len(dac)) - - dac = GetDAC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(dac) - print(len(dac)) - print('\n') - - print '...............................................................' - print 'testing the GetDCC module' - - dcc = GetDCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt']) - print(dcc) - print(len(dcc)) - - dcc = GetDCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', all_property=True) - print(dcc) - print(len(dcc)) - - dcc = GetDCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(dcc) - print(len(dcc)) - print('\n') - - - print '...............................................................' - print 'testing the DACC module' - - print('DACC') - dacc = GetDACC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt']) - print(dacc) - print(len(dacc)) - - dacc = GetDACC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',all_property=True) - print(dacc) - print(len(dacc)) - - dac = GetDACC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(dac) - print(len(dac)) - print('\n') - - phyche_index = [ - [7.176, 6.272, 4.736, 7.237, 3.810, 4.156, 4.156, 6.033, 3.410, 3.524, 4.445, 6.033, 1.613, 5.087, 2.169, 7.237, - 3.581, 3.239, 1.668, 2.169, 6.813, 3.868, 5.440, 4.445, 3.810, 4.678, 5.440, 4.156, 2.673, 3.353, 1.668, 4.736, - 4.214, 3.925, 3.353, 5.087, 2.842, 2.448, 4.678, 3.524, 3.581, 2.448, 3.868, 4.156, 3.467, 3.925, 3.239, 6.272, - 2.955, 3.467, 2.673, 1.613, 1.447, 3.581, 3.810, 3.410, 1.447, 2.842, 6.813, 3.810, 2.955, 4.214, 3.581, 7.176] - ] - - print '...............................................................' - print 'testing the GetTAC module' - - tac = GetTAC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome']) - print(tac) - print(len(tac)) - - tac = GetTAC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',all_property=True) - print(tac) - print(len(tac)) - - tac = GetTAC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(tac) - print(len(tac)) - print('\n') - - - print '...............................................................' - print 'testing the GetTCC module' - - tcc = GetTCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome']) - print(tcc) - print(len(tcc)) - - tcc = GetTCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', all_property=True) - print(tcc) - print(len(tcc)) - - tcc = GetTCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(tcc) - print(len(tcc)) - print('\n') - - print '...............................................................' - print 'testing the TACC module' - tacc = GetTACC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome']) - print(tacc) - print(len(tacc)) - - tacc = GetTACC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', all_property=True) - print(tacc) - print(len(tacc)) - - - tacc = GetTACC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(tacc) - print(len(tacc)) - print('\n') - #============================================================================== - # PyDNAnac - #============================================================================== - print '...............................................................' - print 'testing the GetKmer module' - - kmer = GetKmer('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',k=2) - print(kmer) - - kmer = GetKmer('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',k=2,normalize=True) - print(kmer) - - kmer = GetKmer('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',k=2,normalize=True,upto=True) - print(kmer) - - - print '...............................................................' - print 'testing the GetRevcKmer module' - revckmer = GetRevcKmer('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',k=2, normalize=False, upto=False) - print(revckmer) - - - revckmer = GetRevcKmer('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',k=2,normalize=True, upto=True) - print(revckmer) - print('\n') - - - - - #============================================================================== - # PyDNApsenac - #============================================================================== - print '...............................................................' - print 'testing the GetPseDNC module' - - psednc = GetPseDNC('ACCCCA',lamada=2, w=0.05) - print(psednc) - - - print '...............................................................' - print 'testing the GetPCPseDNC module' - - PC_psednc = GetPCPseDNC('ACCCCA', phyche_index=["Tilt", 'Twist', 'Rise', 'Roll', 'Shift', 'Slide'],lamada=2, w=0.05) - print(PC_psednc) - - - print '...............................................................' - print 'testing the GetPCPseTNC module' - - pc_psetnc = GetPCPseTNC('ACCCCA', phyche_index=['Dnase I', 'Nucleosome'],lamada=2, w=0.05) - print(pc_psetnc) - - print '...............................................................' - print 'testing the GetSCPseDNC module' - - sc_psednc = GetSCPseDNC('ACCCCCA', phyche_index=['Twist', 'Tilt'],lamada=2, w=0.05) - print(sc_psednc) - - print '...............................................................' - print 'testing the GetSCPseTNC module' - - sc_psetnc = GetSCPseTNC('ACCCCCA', phyche_index=['Dnase I', 'Nucleosome'],lamada=1, w=0.05) - print(sc_psetnc) - - sc_psetnc = GetSCPseTNC('ACCCCA', phyche_index=["Dnase I", 'Nucleosome'], lamada=2, w=0.05) - print(sc_psetnc) - - - phyche_index = [[1.019, -0.918, 0.488, 0.567, 0.567, -0.070, -0.579, 0.488, -0.654, -2.455, -0.070, -0.918, 1.603, - -0.654, 0.567, 1.019]] - - - print '...............................................................' - print 'testing the GetPseDNC module' - - dic = GetPseDNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC') - print(dic) - print(len(dic)) - - print '...............................................................' - print 'testing the GetPseKNC module' - - dic = GetPseKNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC') - print(dic) - print(len(dic)) - - print '...............................................................' - print 'testing the PC-PseDNC module' - - print('PC-PseDNC') - dic = GetPCPseDNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt']) - print(dic) - print(len(dic)) - - print '...............................................................' - print 'testing the GetPCPseTNC module' - - dic = GetPCPseTNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC',lamada=1, w=0.05,k=2,phyche_index=['Twist', 'Tilt']) - print(dic) - print(len(dic)) - - - - - phyche_index = [ - [7.176, 6.272, 4.736, 7.237, 3.810, 4.156, 4.156, 6.033, 3.410, 3.524, 4.445, 6.033, 1.613, 5.087, 2.169, 7.237, - 3.581, 3.239, 1.668, 2.169, 6.813, 3.868, 5.440, 4.445, 3.810, 4.678, 5.440, 4.156, 2.673, 3.353, 1.668, 4.736, - 4.214, 3.925, 3.353, 5.087, 2.842, 2.448, 4.678, 3.524, 3.581, 2.448, 3.868, 4.156, 3.467, 3.925, 3.239, 6.272, - 2.955, 3.467, 2.673, 1.613, 1.447, 3.581, 3.810, 3.410, 1.447, 2.842, 6.813, 3.810, 2.955, 4.214, 3.581, 7.176] - ] - - print '...............................................................' - print 'testing the GetPCPseTNC module' - - dic = GetPCPseTNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(dic) - print(len(dic)) - - - print '...............................................................' - print 'testing the GetSCPseDNC module' - - dic = GetSCPseDNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt']) - print(dic) - print(len(dic)) - - print '...............................................................' - print 'testing the GetSCPseDNC module' - - dic = GetSCPseDNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', all_property=True,lamada=2, w=0.05) - print(dic) - print(len(dic)) - - phyche_index = [[1.019, -0.918, 0.488, 0.567, 0.567, -0.070, -0.579, 0.488, -0.654, -2.455, -0.070, -0.918, 1.603, - -0.654, 0.567, 1.019]] - - print '...............................................................' - print 'testing the GetSCPseDNC module' - - dic = GetSCPseDNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist', 'Tilt'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(dic) - print(len(dic)) - print() - - print '...............................................................' - print 'testing the GetSCPseTNC module' - - dic= GetSCPseTNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome']) - print(dic) - print(len(dic)) - - print '...............................................................' - print 'testing the GetSCPseTNC module' - - dic = GetSCPseTNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', all_property=True,lamada=2, w=0.05) - print(dic) - print(len(dic)) - - phyche_index = [ - [7.176, 6.272, 4.736, 7.237, 3.810, 4.156, 4.156, 6.033, 3.410, 3.524, 4.445, 6.033, 1.613, 5.087, 2.169, 7.237, - 3.581, 3.239, 1.668, 2.169, 6.813, 3.868, 5.440, 4.445, 3.810, 4.678, 5.440, 4.156, 2.673, 3.353, 1.668, 4.736, - 4.214, 3.925, 3.353, 5.087, 2.842, 2.448, 4.678, 3.524, 3.581, 2.448, 3.868, 4.156, 3.467, 3.925, 3.239, 6.272, - 2.955, 3.467, 2.673, 1.613, 1.447, 3.581, 3.810, 3.410, 1.447, 2.842, 6.813, 3.810, 2.955, 4.214, 3.581, 7.176] - ] - - dic = GetSCPseTNC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome'], - extra_phyche_index=NormalizeIndex(phyche_index, is_convert_dict=True)) - print(dic) - print(len(dic)) - - # Normalize PseDNC index Twist, Tilt, Roll, Shift, Slide, Rise. - original_phyche_value = [ - [0.026, 0.036, 0.031, 0.033, 0.016, 0.026, 0.014, 0.031, 0.025, 0.025, 0.026, 0.036, 0.017, 0.025, 0.016, 0.026], - [0.038, 0.038, 0.037, 0.036, 0.025, 0.042, 0.026, 0.037, 0.038, 0.036, 0.042, 0.038, 0.018, 0.038, 0.025, 0.038], - [0.020, 0.023, 0.019, 0.022, 0.017, 0.019, 0.016, 0.019, 0.020, 0.026, 0.019, 0.023, 0.016, 0.020, 0.017, 0.020], - [1.69, 1.32, 1.46, 1.03, 1.07, 1.43, 1.08, 1.46, 1.32, 1.20, 1.43, 1.32, 0.72, 1.32, 1.07, 1.69], - [2.26, 3.03, 2.03, 3.83, 1.78, 1.65, 2.00, 2.03, 1.93, 2.61, 1.65, 3.03, 1.20, 1.93, 1.78, 2.26], - [7.65, 8.93, 7.08, 9.07, 6.38, 8.04, 6.23, 7.08, 8.56, 9.53, 8.04, 8.93, 6.23, 8.56, 6.38, 7.65]] - for e in NormalizeIndex(original_phyche_value, is_convert_dict=True).items(): - print(e)
- - -if __name__ == '__main__': - test_pydna() - - - - - - - - - - - - - - - - - - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/test_PyGetMol.html b/PyBioMed/doc/_build/html/_modules/test_PyGetMol.html deleted file mode 100644 index 9f5c99a..0000000 --- a/PyBioMed/doc/_build/html/_modules/test_PyGetMol.html +++ /dev/null @@ -1,202 +0,0 @@ - - - - - - - - test_PyGetMol — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for test_PyGetMol

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-The script is used for testing.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.14
-
-Email: gadsby@163.com 
-"""
-import os
-
-import string
-
-from PyBioMed.PyGetMol.GetDNA import GetDNAFromUniGene
-
-from PyBioMed.PyGetMol.GetProtein import GetSeqFromPDB
-from PyBioMed.PyGetMol.GetProtein import GetPDB
-
-from PyBioMed.PyGetMol.Getmol import ReadMolFromSDF
-from PyBioMed.PyGetMol.Getmol import ReadMolFromMOL
-from PyBioMed.PyGetMol.Getmol import ReadMolFromSmile
-from PyBioMed.PyGetMol.Getmol import GetMolFromCAS
-from PyBioMed.PyGetMol.Getmol import GetMolFromNCBI
-from PyBioMed.PyGetMol.Getmol import GetMolFromDrugbank
-from PyBioMed.PyGetMol.Getmol import GetMolFromKegg
-from PyBioMed.PyGetMol.GetProtein import timelimited
-
-
-
-
[docs]def test_pygetmol(): - print '-'*10+'START'+'-'*10 - #============================================================================== - # GetDNA - #============================================================================== - @timelimited(30) - def test_GetDNAFromUniGene(): - seqid = 'AA954964' - seqid2 = 'CB216422' - - try: - sequence1 = GetDNAFromUniGene(seqid) - sequence2 = GetDNAFromUniGene(seqid2) - - print sequence1 - print sequence2 - except: - print "Can't visit the internet" - test_GetDNAFromUniGene() - print '-'*25 - #============================================================================== - # Get protein - #============================================================================== - @timelimited(30) - def test_GetPDB(): - try: - GetPDB(['1atp','1efz','1f88']) - - seq = GetSeqFromPDB('1atp.pdb') - print seq - - seq2 = GetSeqFromPDB('1efz.pdb') - print seq2 - - seq3 = GetSeqFromPDB('1f88.pdb') - print seq3 - except: - print "Can't visit the internet" - test_GetPDB() - print '-'*25 - #============================================================================== - # Get molecule - #============================================================================== - @timelimited(30) - def test_GetSmallMol(): - try: - temp=GetMolFromCAS(casid="50-12-4") - print temp - temp=GetMolFromNCBI(cid="2244") - print temp - temp=GetMolFromDrugbank(dbid="DB00133") - print temp - temp=GetMolFromKegg(kid="D02176") - print temp - except: - print "Can't visit the internet" - test_GetSmallMol() - - print '-'*10+'END'+'-'*10
- -if __name__ == '__main__': - test_pygetmol() - - - - - - - - - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/test_PyInteration.html b/PyBioMed/doc/_build/html/_modules/test_PyInteration.html deleted file mode 100644 index 81a2ec6..0000000 --- a/PyBioMed/doc/_build/html/_modules/test_PyInteration.html +++ /dev/null @@ -1,191 +0,0 @@ - - - - - - - - test_PyInteration — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for test_PyInteration

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-The script is used for testing.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.14
-
-Email: gadsby@163.com 
-"""
-
-    
-import os
-
-
[docs]def test_pyinteration(): - - from PyBioMed.PyInteraction.PyInteraction import CalculateInteraction1 - from PyBioMed.PyInteraction.PyInteraction import CalculateInteraction2 - from PyBioMed.PyInteraction.PyInteraction import CalculateInteraction3 - - - - from PyBioMed.PyDNA import PyDNAac - - print '...............................................................' - print 'testing the DNA descriptors' - - - DNA_des = PyDNAac.GetTCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome','MW-kg']) - - print DNA_des - - - - print '...............................................................' - print 'testing the protein descriptors' - - - from PyBioMed.PyProtein import CTD - protein="ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS" - protein_des = CTD.CalculateCTD(protein) - - - print '...............................................................' - print 'testing the molecular descriptors' - - from PyBioMed.PyMolecule import moe - from rdkit import Chem - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - m = Chem.MolFromSmiles(smis[3]) - mol_des = moe.GetMOE(m) - - - print '...............................................................' - print 'testing the Interaction type 1 module' - - mol_mol_interaction1 = CalculateInteraction1(mol_des,mol_des) - print mol_mol_interaction1 - - pro_mol_interaction1 = CalculateInteraction1(mol_des,protein_des) - print pro_mol_interaction1 - - DNA_mol_interaction1 = CalculateInteraction1(DNA_des,mol_des) - print DNA_mol_interaction1 - - print '...............................................................' - print 'testing the Interaction type 2 module' - - mol_mol_interaction2 = CalculateInteraction2(mol_des,mol_des) - print mol_mol_interaction2 - - pro_mol_interaction2 = CalculateInteraction2(mol_des,protein_des) - print pro_mol_interaction2 - - DNA_mol_interaction2 = CalculateInteraction2(DNA_des,mol_des) - print DNA_mol_interaction2 - - print '...............................................................' - print 'testing the Interaction type 3 module' - - mol_mol_interaction3 = CalculateInteraction3(mol_des,mol_des) - print mol_mol_interaction3
- -if __name__ == '__main__': - test_pyinteration() - - - - - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/test_PyMolecule.html b/PyBioMed/doc/_build/html/_modules/test_PyMolecule.html deleted file mode 100644 index cc28242..0000000 --- a/PyBioMed/doc/_build/html/_modules/test_PyMolecule.html +++ /dev/null @@ -1,406 +0,0 @@ - - - - - - - - test_PyMolecule — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for test_PyMolecule

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-The script is used for testing.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.14
-
-Email: gadsby@163.com 
-"""
-import os
-
-
[docs]def test_pymolecule(): - - from rdkit import Chem - import pybel - from PyBioMed.PyMolecule.AtomProperty import AtomProperty, GetAbsoluteAtomicProperty, GetRelativeAtomicProperty - - from PyBioMed.PyMolecule.estate import GetEstate - from PyBioMed.PyMolecule.constitution import GetConstitutional - from PyBioMed.PyMolecule.fingerprint import CalculateECFP4Fingerprint - from PyBioMed.PyMolecule.connectivity import GetConnectivity - from PyBioMed.PyMolecule.charge import GetCharge - from PyBioMed.PyMolecule.bcut import GetBurden - from PyBioMed.PyMolecule.basak import Getbasak - from PyBioMed.PyMolecule.geary import GetGearyAuto - from PyBioMed.PyMolecule.kappa import GetKappa - from PyBioMed.PyMolecule.moe import GetMOE - from PyBioMed.PyMolecule.molproperty import GetMolecularProperty - from PyBioMed.PyMolecule.moran import GetMoranAuto - from PyBioMed.PyMolecule.moreaubroto import GetMoreauBrotoAuto - from PyBioMed.PyMolecule.topology import GetTopology - from PyBioMed.PyMolecule.ghosecrippen import GhoseCrippenFingerprint - from PyBioMed.PyMolecule.cats2d import CATS2D - - print '...............................................................' - print 'testing the AtomProperty module' - - for i,j in AtomProperty.items(): - print j - print GetAbsoluteAtomicProperty(element='S',propertyname='En') - print GetRelativeAtomicProperty(element='S',propertyname='En') - #============================================================================== - # Getbasak - #============================================================================== - print '...............................................................' - print 'testing the Getbasak module' - - smi5=['CCCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCCCCN','c1ccccc1N'] - for index, smi in enumerate(smi5): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',Getbasak(m) - print len(Getbasak(m)) - #============================================================================== - # GetBurden, bcut model - #============================================================================== - print '...............................................................' - print 'testing the bcut module' - - smi5=['CCOCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCCCCN','c1ccccc1N','C'] - for index, smi in enumerate(smi5): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi, '\n' - print GetBurden(m) - print len(GetBurden(m)) - #============================================================================== - # GetCharge - #============================================================================== - print '...............................................................' - print 'testing the GetCharge module' - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - smi5=['CCCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCCCCN','c1ccccc1N'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',GetCharge(m) - print len(GetCharge(m)) - #============================================================================== - # GetConnectivity - #============================================================================== - print '...............................................................' - print 'testing the GetConnectivity module' - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - smi5=['CCCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCCCCN','c1ccccc1N'] - - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',GetConnectivity(m) - print '\t',len(GetConnectivity(m)) - - #============================================================================== - # GetConstitutional - #============================================================================== - print '...............................................................' - print 'testing the GetConstitutional module' - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - smi5=['CCCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCCCCN','c1ccccc1N'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',GetConstitutional(m) - print len(GetConstitutional(m)) - #============================================================================== - # GetEstate - #============================================================================== - print '...............................................................' - print 'testing the GetEstate module' - - smi5=['COCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCOCCN','c1ccccc1N'] - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - # print '\t',CalculateEstateFingerprint(m) - # print '\t',CalculateEstateValue(m) - # print '\t',CalculateMaxAtomTypeEState(m) - # print '\t', CalculateMinAtomTypeEState(m) - - print GetEstate(m) - #============================================================================== - # - #============================================================================== - print '...............................................................' - print "fingerprint......" - - ms = [Chem.MolFromSmiles('CCOC=N'), Chem.MolFromSmiles('NC1=NC(=CC=N1)N1C=CC2=C1C=C(O)C=C2')] - m2 = [pybel.readstring("smi",'CCOC=N'),pybel.readstring("smi",'CCO')] - res1=CalculateECFP4Fingerprint(ms[0]) - print res1 - res2=CalculateECFP4Fingerprint(ms[1]) - print res2 - # print CalculateSimilarityRdkit(res1[2],res2[2]) - # print CalculateSimilarityPybel(res1,res2) - - #============================================================================== - # - #============================================================================== - print '...............................................................' - print 'testing the GetGearyAuto module' - - smi5=['COCCCC','CCC(C)CC','CC(C)CCC','CC(C)C(C)C','CCOCCN','c1ccccc1N'] - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - ## print '\t',CalculateEstateFingerprint(m) - ## print '\t',CalculateEstateValue(m) - ## print '\t',CalculateMaxAtomTypeEState(m) - ## print '\t', CalculateMinAtomTypeEState(m) - - print GetGearyAuto(m) - - #============================================================================== - # - #============================================================================== - print '...............................................................' - print 'testing the GetKappa module' - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',GetKappa(m) - print '\t',len(GetKappa(m)) - - #============================================================================== - # - #============================================================================== - print '...............................................................' - print 'testing the GetMOE module' - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',GetMOE(m) - print '\t', len(GetMOE(m)) - #============================================================================== - # - #============================================================================== - print '...............................................................' - print 'testing the GetMolecularProperty module' - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',GetMolecularProperty(m) - - #============================================================================== - # - #============================================================================== - print '...............................................................' - print 'testing the GetMoranAuto module' - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - ## print '\t',CalculateEstateFingerprint(m) - ## print '\t',CalculateEstateValue(m) - ## print '\t',CalculateMaxAtomTypeEState(m) - ## print '\t', CalculateMinAtomTypeEState(m) - - print GetMoranAuto(m) - - #============================================================================== - # - #============================================================================== - print '...............................................................' - print 'testing the GetMoreauBrotoAuto module' - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - ## print '\t',CalculateEstateFingerprint(m) - ## print '\t',CalculateEstateValue(m) - ## print '\t',CalculateMaxAtomTypeEState(m) - ## print '\t', CalculateMinAtomTypeEState(m) - - print len(GetMoreauBrotoAuto(m)) - #============================================================================== - # - #============================================================================== - print '...............................................................' - print 'testing the GetTopology module' - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',GetTopology(m) - print '\t',len(GetTopology(m)) - - #============================================================================== - # - #============================================================================== - print '...............................................................' - print 'testing the CATS2D module' - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-]'] - - for i in smis: - mol = Chem.MolFromSmiles(i) - cats = CATS2D(mol,PathLength = 10,scale = 3) - print '\t', cats - print '\t', len(cats) - - #============================================================================== - # - #============================================================================== - print '...............................................................' - print 'testing the ghoseFP module' - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-]'] - - for i in smis: - mol = Chem.MolFromSmiles(i) - ghoseFP = GhoseCrippenFingerprint(mol) - print '\t', ghoseFP - print '\t', len(ghoseFP) - - print 'testing the ghose_count module' - - for i in smis: - mol = Chem.MolFromSmiles(i) - ghose_count = GhoseCrippenFingerprint(mol, count = True) - print '\t', ghose_count - print '\t', len(ghose_count)
- - #============================================================================== - # - #============================================================================== - -if __name__ == '__main__': - test_pymolecule() - - - - - - - - - - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/test_PyPretreat.html b/PyBioMed/doc/_build/html/_modules/test_PyPretreat.html deleted file mode 100644 index 89fa0bb..0000000 --- a/PyBioMed/doc/_build/html/_modules/test_PyPretreat.html +++ /dev/null @@ -1,170 +0,0 @@ - - - - - - - - test_PyPretreat — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for test_PyPretreat

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-The script is used for testing.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.14
-
-Email: gadsby@163.com 
-"""
-import os
-
-from PyBioMed.PyPretreat.PyPretreatPro import ProteinCheck
-from PyBioMed.PyPretreat.PyPretreatDNA import *
-from PyBioMed.PyPretreat.PyPretreatMol import *
-from rdkit import Chem
-
-
-
[docs]def test_pypretreat(): - - - #============================================================================== - # PyPretreatDNA - #============================================================================== - print '...............................................................' - print 'testing the PyPretreatDNA module' - - - phyche_index = [[1.019, -0.918, 0.488, 0.567, 0.567, -0.070, -0.579, 0.488, -0.654, -2.455,-0.070, -0.918, 1.603, -0.654, 0.567, 1.019]] - print (NormalizeIndex(phyche_index,is_convert_dict = False)[0]) - - #============================================================================== - # PyPretreatPro - #============================================================================== - print '...............................................................' - print 'testing the PyPretreatPro module' - - protein="ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDASU" - protein="ADGC" - print ProteinCheck(protein) - - #============================================================================== - # PyPretreatMol - #============================================================================== - print '...............................................................' - print 'testing the PyPretreatMol module' - - smiles = ['O=C([O-])c1ccccc1','C[n+]1c([N-](C))cccc1','[2H]C(Cl)(Cl)Cl'] - mol = Chem.MolFromSmiles('[Na]OC(=O)c1ccc(C[S+2]([O-])([O-]))cc1') - sm = StandardizeMol() - mol = sm.addhs(mol) - mol = sm.disconnect_metals(mol) - mol = sm.largest_fragment(mol) - mol = sm.normalize(mol) - mol = sm.uncharge(mol) - mol = sm.canonicalize_tautomer(mol) - mol = sm.reionize(mol) - mol = sm.rmhs(mol) - mol = sm.addhs(mol) - print Chem.MolToSmiles(mol, isomericSmiles=True)
- - #============================================================================== - # - #============================================================================== - -if __name__ == '__main__': - test_pypretreat() - - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/test_PyProtein.html b/PyBioMed/doc/_build/html/_modules/test_PyProtein.html deleted file mode 100644 index 1cc7a6d..0000000 --- a/PyBioMed/doc/_build/html/_modules/test_PyProtein.html +++ /dev/null @@ -1,375 +0,0 @@ - - - - - - - - test_PyProtein — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for test_PyProtein

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-The script is used for testing.
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.14
-
-Email: gadsby@163.com 
-"""
-
-
-import os
-
-from PyBioMed.PyProtein.AAComposition import CalculateAAComposition, CalculateDipeptideComposition, GetSpectrumDict
-
-from PyBioMed.PyProtein.Autocorrelation import CalculateNormalizedMoreauBrotoAutoTotal,CalculateMoranAutoTotal,CalculateGearyAutoTotal
-
-from PyBioMed.PyProtein.Autocorrelation import CalculateEachGearyAuto,CalculateEachMoranAuto,CalculateEachNormalizedMoreauBrotoAuto
-
-from PyBioMed.PyProtein.CTD import CalculateCTD
-
-from PyBioMed.PyProtein.QuasiSequenceOrder import GetSequenceOrderCouplingNumberTotal, GetQuasiSequenceOrder
-
-from PyBioMed.PyProtein.QuasiSequenceOrder import GetSequenceOrderCouplingNumberp,GetQuasiSequenceOrderp
-
-from PyBioMed.PyProtein.PseudoAAC import _GetPseudoAAC, GetAPseudoAAC,GetPseudoAAC
-
-from PyBioMed.PyProtein.GetSubSeq import GetSubSequence
-
-from PyBioMed.PyProtein.AAIndex import GetAAIndex1, GetAAIndex23
-
-from PyBioMed.PyProtein.ConjointTriad import CalculateConjointTriad
-
-from PyBioMed.PyProtein import AAComposition,Autocorrelation,CTD,QuasiSequenceOrder,PseudoAAC,GetProteinFromUniprot,GetSubSeq
-
-
-
-modulelists=['AAComposition','Autocorrelation','CTD','QuasiSequenceOrder','PseudoAAC','GetProteinFromUniprot','GetSubSeq']
-
-
-
[docs]def test_pyprotein(): - - AAC = eval(modulelists[0]) - AC = eval(modulelists[1]) - CTD = eval(modulelists[2]) - QSO = eval(modulelists[3]) - PAAC = eval(modulelists[4]) - GPFU = eval(modulelists[5]) - GSS = eval(modulelists[6]) - - - - - print '...............................................................' - - print "testing the GetSubSeq module" - - ProteinSequence = 'ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS' - - temp=GSS.GetSubSequence(ProteinSequence,ToAA='D', window=5) - - print temp - - print '...............................................................' - - print "testing the AAComposition module" - - temp=AAC.CalculateAAComposition(ProteinSequence) - - print temp - - temp=AAC.CalculateDipeptideComposition(ProteinSequence) - - temp=AAC.GetSpectrumDict(ProteinSequence) - - temp=AAC.CalculateAADipeptideComposition(ProteinSequence) - - print '...............................................................' - - print "testing the Autocorrelation module" - - temp=AC.CalculateNormalizedMoreauBrotoAuto(ProteinSequence,[AC._ResidueASA],['ResidueASA']) - - print temp - - temp=AC.CalculateMoranAuto(ProteinSequence,[AC._ResidueASA],['ResidueASA']) - - print temp - - temp=AC.CalculateGearyAuto(ProteinSequence,[AC._ResidueASA],['ResidueASA']) - - print temp - - temp=AC.CalculateAutoTotal(ProteinSequence) - - print '...............................................................' - - print "testing the CTD module" - - temp = CTD.CalculateC(ProteinSequence) - - print temp - - temp = CTD.CalculateT(ProteinSequence) - - print temp - - temp = CTD.CalculateD(ProteinSequence) - - print temp - - temp = CTD.CalculateCTD(ProteinSequence) - - print temp - - print '...............................................................' - - print "testing the QuasiSequenceOrder module" - - temp=QSO.GetSequenceOrderCouplingNumberTotal(ProteinSequence,maxlag=30) - - print temp - - temp=QSO.GetQuasiSequenceOrder(ProteinSequence,maxlag=30,weight=0.1) - - print temp - - print '...............................................................' - - print "testing the PseudoAAC module" - - temp= PAAC.GetAPseudoAAC(ProteinSequence,lamda=10,weight=0.5) - - print temp - - - temp= PAAC._GetPseudoAAC(ProteinSequence,lamda=10,weight=0.05) - - print temp - - print '...............................................................' - - print "Tested successfully!"
- - -if __name__ == '__main__': - test_pyprotein() - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_modules/topology.html b/PyBioMed/doc/_build/html/_modules/topology.html deleted file mode 100644 index cb6fdbc..0000000 --- a/PyBioMed/doc/_build/html/_modules/topology.html +++ /dev/null @@ -1,880 +0,0 @@ - - - - - - - - topology — PyBioMed 1 documentation - - - - - - - - - - - - - - - - - - -
-
-
-
- -

Source code for topology

-# -*- coding: utf-8 -*-
-#  Copyright (c) 2016-2017, Zhijiang Yao, Jie Dong and Dongsheng Cao
-#  All rights reserved.
-#  This file is part of the PyBioMed.
-#  The contents are covered by the terms of the BSD license
-#  which is included in the file license.txt, found at the root
-#  of the PyBioMed source tree.
-"""
-##############################################################################
-The calculation of molecular topological indices based on its topological
-
-structure. You can get 25 molecular topological descriptors. You can freely
-
-use and distribute it. If you hava  any problem, you could contact with us timely!
-
-Authors: Zhijiang Yao and Dongsheng Cao.
-
-Date: 2016.06.04
-
-Email: gadsby@163.com and oriental-cds@163.com
-
-##############################################################################
-"""
-
-from rdkit import Chem
-from rdkit.Chem import rdchem
-#from rdkit.Chem import pyPeriodicTable as PeriodicTable
-from rdkit.Chem import GraphDescriptors as GD
-import numpy
-import scipy
-
-
-periodicTable = rdchem.GetPeriodicTable()
-
-Version=1.0
-################################################################
-
-def _GetPrincipleQuantumNumber(atNum):
-    """
-    #################################################################
-    *Internal Use Only*
-    
-    Get the principle quantum number of atom with atomic
-    
-    number equal to atNum 
-    #################################################################
-    """
-    if atNum<=2:
-        return 1
-    elif atNum<=10:
-        return 2
-    elif atNum<=18:
-        return 3
-    elif atNum<=36:
-        return 4
-    elif atNum<=54:
-        return 5
-    elif atNum<=86:
-        return 6
-    else:
-        return 7
-
-
-
[docs]def CalculateWeiner(mol): - """ - ################################################################# - Calculation of Weiner number in a molecule - - ---->W - - Usage: - - result=CalculateWeiner(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - return 1.0/2*sum(sum(Chem.GetDistanceMatrix(mol)))
- - -
[docs]def CalculateMeanWeiner(mol): - - """ - ################################################################# - Calculation of Mean Weiner number in a molecule - - ---->AW - - Usage: - - result=CalculateWeiner(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - N=mol.GetNumAtoms() - WeinerNumber=CalculateWeiner(mol) - return 2.0*WeinerNumber/(N*(N-1))
- - -
[docs]def CalculateBalaban(mol): - - - """ - ################################################################# - Calculation of Balaban index in a molecule - - ---->J - - Usage: - - result=CalculateBalaban(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - adjMat=Chem.GetAdjacencyMatrix(mol) - Distance= Chem.GetDistanceMatrix(mol) - Nbond=mol.GetNumBonds() - Natom=mol.GetNumAtoms() - S=numpy.sum(Distance,axis=1) - mu=Nbond-Natom+1 - sumk=0. - for i in range(len(Distance)): - si=S[i] - for j in range(i,len(Distance)): - if adjMat[i,j]==1: - sumk += 1./numpy.sqrt(si*S[j]) - if mu+1 !=0: - J=float(Nbond)/float(mu+1)*sumk - else: - J=0 - return J
- -
[docs]def CalculateGraphDistance(mol): - """ - ################################################################# - Calculation of graph distance index - - ---->Tigdi(log value) - - Usage: - - result=CalculateGraphDistance(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - Distance= Chem.GetDistanceMatrix(mol) - n=int(Distance.max()) - res=0.0 - for i in range(n): - # print Distance==i+1 - temp=1./2*sum(sum(Distance==i+1)) - #print temp - res = res+temp**2 - - return numpy.log10(res)
- - -
[docs]def CalculateDiameter(mol): - """ - ################################################################# - Calculation of diameter, which is Largest value - - in the distance matrix [Petitjean 1992]. - - ---->diametert - - Usage: - - result=CalculateDiameter(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - Distance=Chem.GetDistanceMatrix(mol) - - return Distance.max()
- -
[docs]def CalculateRadius(mol): - """ - ################################################################# - Calculation of radius based on topology. - - It is :If ri is the largest matrix entry in row i of the distance - - matrix D,then the radius is defined as the smallest of the ri - - [Petitjean 1992]. - - ---->radiust - - Usage: - - result=CalculateRadius(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - Distance=Chem.GetDistanceMatrix(mol) - temp=[] - for i in Distance: - temp.append(max(i)) - return min(temp)
- -
[docs]def CalculatePetitjean(mol): - """ - ################################################################# - Calculation of Petitjean based on topology. - - Value of (diameter - radius) / diameter as defined in [Petitjean 1992]. - - ---->petitjeant - - Usage: - - result=CalculatePetitjean(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - diameter=CalculateDiameter(mol) - radius=CalculateRadius(mol) - return 1-radius/float(diameter)
- - - -
[docs]def CalculateXuIndex(mol): - """ - ################################################################# - Calculation of Xu index - - ---->Xu - - Usage: - - result=CalculateXuIndex(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - nAT=mol.GetNumAtoms() - deltas=[x.GetDegree() for x in mol.GetAtoms()] - Distance= Chem.GetDistanceMatrix(mol) - sigma=scipy.sum(Distance,axis=1) - temp1=0.0 - temp2=0.0 - for i in range(nAT): - temp1=temp1+deltas[i]*((sigma[i])**2) - temp2=temp2+deltas[i]*(sigma[i]) - Xu=numpy.sqrt(nAT)*numpy.log(temp1/temp2) - - return Xu
- -
[docs]def CalculateGutmanTopo(mol): - """ - ################################################################# - Calculation of Gutman molecular topological index based on - - simple vertex degree - - ---->GMTI(log value) - - Usage: - - result=CalculateGutmanTopo(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - nAT=mol.GetNumAtoms() - deltas=[x.GetDegree() for x in mol.GetAtoms()] - Distance= Chem.GetDistanceMatrix(mol) - res=0.0 - for i in range(nAT): - for j in range(i+1,nAT): - res=res+deltas[i]*deltas[j]*Distance[i,j] - - return numpy.log10(res)
- - - -
[docs]def CalculatePolarityNumber(mol): - """ - ################################################################# - Calculation of Polarity number. - - It is the number of pairs of vertexes at - - distance matrix equal to 3 - - ---->Pol - - Usage: - - result=CalculatePolarityNumber(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - Distance= Chem.GetDistanceMatrix(mol) - res=1./2*sum(sum(Distance==3)) - - return res
- - -
[docs]def CalculatePoglianiIndex(mol): - """ - ################################################################# - Calculation of Poglicani index - - The Pogliani index (Dz) is the sum over all non-hydrogen atoms - - of a modified vertex degree calculated as the ratio - - of the number of valence electrons over the principal - - quantum number of an atom [L. Pogliani, J.Phys.Chem. - - 1996, 100, 18065-18077]. - - ---->DZ - - Usage: - - result=CalculatePoglianiIndex(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - res=0.0 - for atom in mol.GetAtoms(): - n=atom.GetAtomicNum() - nV=periodicTable.GetNOuterElecs(n) - mP=_GetPrincipleQuantumNumber(n) - res=res+(nV+0.0)/mP - return res
- -
[docs]def CalculateIpc(mol): - - """ - ################################################################# - This returns the information content of the coefficients of the - - characteristic polynomial of the adjacency matrix of a - - hydrogen-suppressed graph of a molecule. - - 'avg = 1' returns the information content divided by the total - - population. - - From D. Bonchev & N. Trinajstic, J. Chem. Phys. vol 67, - - 4517-4533 (1977) - - ---->Ipc(log value) - - Usage: - - result=CalculateIpc(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - temp=GD.Ipc(mol) - if temp>0: - return numpy.log10(temp) - else: - return "NaN"
- - -
[docs]def CalculateBertzCT(mol): - """ - ################################################################# - A topological index meant to quantify "complexity" of molecules. - - Consists of a sum of two terms, one representing the complexity - - of the bonding, the other representing the complexity of the - - distribution of heteroatoms. - - From S. H. Bertz, J. Am. Chem. Soc., vol 103, 3599-3601 (1981) - - ---->BertzCT(log value) - - Usage: - - result=CalculateBertzCT(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - temp=GD.BertzCT(mol) - if temp>0: - return numpy.log10(temp) - else: - return "NaN"
- -
[docs]def CalculateHarary(mol): - """ - ################################################################# - Calculation of Harary number - - ---->Thara - - Usage: - - result=CalculateHarary(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - - Distance=numpy.array(Chem.GetDistanceMatrix(mol),'d') - - return 1.0/2*(sum(1.0/Distance[Distance!=0]))
- - -
[docs]def CalculateSchiultz(mol): - """ - ################################################################# - Calculation of Schiultz number - - ---->Tsch(log value) - - Usage: - - result=CalculateSchiultz(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - Distance=numpy.array(Chem.GetDistanceMatrix(mol),'d') - Adjacent=numpy.array(Chem.GetAdjacencyMatrix(mol),'d') - VertexDegree=sum(Adjacent) - - return sum(scipy.dot((Distance+Adjacent),VertexDegree))
- - - -
[docs]def CalculateZagreb1(mol): - """ - ################################################################# - Calculation of Zagreb index with order 1 in a molecule - - ---->ZM1 - - Usage: - - result=CalculateZagreb1(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - - deltas=[x.GetDegree() for x in mol.GetAtoms()] - return sum(numpy.array(deltas)**2)
- - -
[docs]def CalculateZagreb2(mol): - - """ - ################################################################# - Calculation of Zagreb index with order 2 in a molecule - - ---->ZM2 - - Usage: - - result=CalculateZagreb2(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - ke = [x.GetBeginAtom().GetDegree()*x.GetEndAtom().GetDegree() for x in mol.GetBonds()] - - return sum(ke)
- -
[docs]def CalculateMZagreb1(mol): - """ - ################################################################# - Calculation of Modified Zagreb index with order 1 in a molecule - - ---->MZM1 - - Usage: - - result=CalculateMZagreb1(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - deltas=[x.GetDegree() for x in mol.GetAtoms()] - while 0 in deltas: - deltas.remove(0) - deltas=numpy.array(deltas,'d') - res=sum((1./deltas)**2) - return res
- - -
[docs]def CalculateMZagreb2(mol): - """ - ################################################################# - Calculation of Modified Zagreb index with order 2 in a molecule - - ---->MZM2 - - Usage: - - result=CalculateMZagreb2(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - cc = [x.GetBeginAtom().GetDegree()*x.GetEndAtom().GetDegree() for x in mol.GetBonds()] - while 0 in cc: - cc.remove(0) - cc = numpy.array(cc,'d') - res = sum((1./cc)**2) - return res
- -
[docs]def CalculateQuadratic(mol): - """ - ################################################################# - Calculation of Quadratic index in a molecule - - ---->Qindex - - Usage: - - result=CalculateQuadratic(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - M=CalculateZagreb1(mol) - N=mol.GetNumAtoms() - return 3-2*N+M/2.0
- -
[docs]def CalculatePlatt(mol): - """ - ################################################################# - Calculation of Platt number in a molecule - - ---->Platt - - Usage: - - result=CalculatePlatt(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - cc = [x.GetBeginAtom().GetDegree()+x.GetEndAtom().GetDegree()-2 for x in mol.GetBonds()] - return sum(cc)
- - - -
[docs]def CalculateSimpleTopoIndex(mol): - """ - ################################################################# - Calculation of the logarithm of the simple topological index by Narumi, - - which is defined as the product of the vertex degree. - - ---->Sito - - Usage: - - result=CalculateSimpleTopoIndex(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - deltas=[x.GetDegree() for x in mol.GetAtoms()] - while 0 in deltas: - deltas.remove(0) - deltas=numpy.array(deltas,'d') - - res=numpy.prod(deltas) - if res>0: - return numpy.log10(res) - else: - return "NaN"
- -
[docs]def CalculateHarmonicTopoIndex(mol): - """ - ################################################################# - Calculation of harmonic topological index proposed by Narnumi. - - ---->Hato - - Usage: - - result=CalculateHarmonicTopoIndex(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - deltas=[x.GetDegree() for x in mol.GetAtoms()] - while 0 in deltas: - deltas.remove(0) - deltas=numpy.array(deltas,'d') - nAtoms=mol.GetNumAtoms() - - res=nAtoms/sum(1./deltas) - - return res
- - -
[docs]def CalculateGeometricTopoIndex(mol): - """ - ################################################################# - Geometric topological index by Narumi - - ---->Geto - - Usage: - - result=CalculateGeometricTopoIndex(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - nAtoms=mol.GetNumAtoms() - deltas=[x.GetDegree() for x in mol.GetAtoms()] - while 0 in deltas: - deltas.remove(0) - deltas=numpy.array(deltas,'d') - - temp=numpy.prod(deltas) - res=numpy.power(temp,1./nAtoms) - - return res
- -
[docs]def CalculateArithmeticTopoIndex(mol): - """ - ################################################################# - Arithmetic topological index by Narumi - - ---->Arto - - Usage: - - result=CalculateArithmeticTopoIndex(mol) - - Input: mol is a molecule object - - Output: result is a numeric value - ################################################################# - """ - nAtoms=mol.GetNumAtoms() - nBonds=mol.GetNumBonds() - - res=2.*nBonds/nAtoms - return res
- - - -_Topology={'W':CalculateWeiner, - 'AW':CalculateMeanWeiner, - 'J':CalculateBalaban, - 'Tigdi':CalculateGraphDistance, - 'Xu':CalculateXuIndex, - 'GMTI':CalculateGutmanTopo, - 'Pol':CalculatePolarityNumber, - 'DZ':CalculatePoglianiIndex, - 'Ipc':CalculateIpc, - 'BertzCT':CalculateBertzCT, - 'Thara':CalculateHarary, - 'Tsch':CalculateSchiultz, - 'ZM1':CalculateZagreb1, - 'ZM2':CalculateZagreb2, - 'MZM1':CalculateMZagreb1, - 'MZM2':CalculateMZagreb2, - 'Qindex':CalculateQuadratic, - 'Platt':CalculatePlatt, - 'diametert':CalculateDiameter, - 'radiust':CalculateRadius, - 'petitjeant':CalculatePetitjean, - 'Sito':CalculateSimpleTopoIndex, - 'Hato':CalculateHarmonicTopoIndex, - 'Geto':CalculateGeometricTopoIndex, - 'Arto':CalculateArithmeticTopoIndex - } - - - - -
[docs]def GetTopology(mol): - """ - ################################################################# - Get the dictionary of constitutional descriptors for given - - moelcule mol - - Usage: - - result=CalculateWeiner(mol) - - Input: mol is a molecule object - - Output: result is a dict form containing all topological indices. - ################################################################# - """ - result={} - for DesLabel in _Topology.keys(): - result[DesLabel]=round(_Topology[DesLabel](mol),3) - return result
- - - -def _GetHTMLDoc(): - """ - ################################################################# - Write HTML documentation for this module. - ################################################################# - """ - import pydoc - pydoc.writedoc('topology') -################################################################################ -##################################################################### - -if __name__ =='__main__': - - - smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-]'] - for index, smi in enumerate(smis): - m = Chem.MolFromSmiles(smi) - print index+1 - print smi - print '\t',GetTopology(m) - print '\t',len(GetTopology(m)) - -
- -
-
-
-
-
- - - - \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_sources/User_guide.txt b/PyBioMed/doc/_build/html/_sources/User_guide.txt deleted file mode 100644 index b70b324..0000000 --- a/PyBioMed/doc/_build/html/_sources/User_guide.txt +++ /dev/null @@ -1,531 +0,0 @@ -.. -*- coding: utf-8 -*- - -Getting Started with PyBioMed -============================= - -This document is intended to provide an overview of how one can use the PyBioMed functionality from Python. If you find mistakes, or have suggestions for improvements, please either fix them yourselves in the source document (the .py file) or send them to the mailing list: oriental-cds@163.com and gadsby@163.com. - - -Installing the PyBioMed package -------------------------------- -PyBioMed has been successfully tested on Linux and Windows systems. The user could download the -PyBioMed package via: https://raw.githubusercontent.com/gadsbyfly/PyBioMed/master/PyBioMed/download/PyBioMed-1.0.zip. The installation process of PyBioMed is very easy: - -.. note:: - You first need to install RDKit and pybel successfully. - -On Windows: - -(1): download the PyBioMed-1.0.zip - -(2): extract the PyBioMed-1.0.zip file - -(3): open cmd.exe and change dictionary to PyBioMed-1.0 (write the command "cd PyBioMed-1.0" in cmd shell) - -(4): write the command "python setup.py install" in cmd shell - -On Linux: - -(1): download the PyBioMed package (.zip) - -(2): extract PyBioMed-1.0.zip - -(3): open shell and change dictionary to PyBioMed-1.0 (write the command "cd PyBioMed-1.0" in shell) - -(4): write the command "python setup.py install" in shell - -Getting molecules ------------------ -The :mod:`PyGetMol` provide different formats to get molecular structures, protein sequence and DNA sequence. - -Getting molecular structure -~~~~~~~~~~~~~~~~~~~~~~~~~~~ -In order to be convenient to users, the :mod:`Getmol` module provides the tool to get molecular structures by the molecular ID from website including NCBI, EBI, CAS, Kegg and Drugbank. - ->>> from PyBioMed.PyGetMol import Getmol ->>> DrugBankID = 'DB01014' ->>> smi = Getmol.GetMolFromDrugbank(DrugBankID) ->>> print smi -N[C@@H](CO)C(=O)O ->>> smi=Getmol.GetMolFromCAS(casid="50-12-4") ->>> print smi -CCC1(c2ccccc2)C(=O)N(C)C(=N1)O ->>> smi=Getmol.GetMolFromNCBI(cid="2244") ->>> print smi -CC(=O)Oc1ccccc1C(=O)O ->>> smi=Getmol.GetMolFromKegg(kid="D02176") ->>> print smi -C[N+](C)(C)C[C@H](O)CC(=O)[O-] - -Reading molecules -~~~~~~~~~~~~~~~~~ -The :mod:`Getmol` module also provides the tool to read molecules in different formats including SDF, Mol, InChi and Smiles. - -Users can read a molecule from string. - ->>> from PyBioMed.PyGetMol.Getmol import ReadMolFromSmile ->>> mol = ReadMolFromSmile('N[C@@H](CO)C(=O)O') ->>> print mol - - -Users can also read a molecule from a file. - ->>> from PyBioMed.PyGetMol.Getmol import ReadMolFromSDF ->>> mol = ReadMolFromSDF('./PyBioMed/test/test_data/test.sdf') #You should change the path to your own real path ->>> print mol - - -Getting protein sequence -~~~~~~~~~~~~~~~~~~~~~~~~ -The :mod:`GetProtein` module provides the tool to get protein sequence by the pdb ID and uniprot ID from website. - ->>> from PyBioMed.PyGetMol import GetProtein ->>> GetProtein.GetPDB(['1atp']) ->>> seq = GetProtein.GetSeqFromPDB('1atp.pdb') ->>> print seq -GNAAAAKKGSEQESVKEFLAKAKEDFLKKWETPSQNTAQLDQFDRIKTLGTGSFGRVMLVKHKESGNHYAMKILDKQKVVKLKQ -IEHTLNEKRILQAVNFPFLVKLEFSFKDNSNLYMVMEYVAGGEMFSHLRRIGRFSEPHARFYAAQIVLTFEYLHSLDLIYRDLK -PENLLIDQQGYIQVTDFGFAKRVKGRTWXLCGTPEYLAPEIILSKGYNKAVDWWALGVLIYEMAAGYPPFFADQPIQIYEKIVS -GKVRFPSHFSSDLKDLLRNLLQVDLTKRFGNLKNGVNDIKNHKWFATTDWIAIYQRKVEAPFIPKFKGPGDTSNFDDYEEEEIR -VXINEKCGKEFTEFTTYADFIASGRTGRRNAIHD ->>> seq = GetProtein.GetProteinSequence('O00560') ->>> print seq -MSLYPSLEDLKVDKVIQAQTAFSANPANPAILSEASAPIPHDGNLYPRLYPELSQYMGLSLNEEEIRANVAVVSGAPLQGQLVA -RPSSINYMVAPVTGNDVGIRRAEIKQGIREVILCKDQDGKIGLRLKSIDNGIFVQLVQANSPASLVGLRFGDQVLQINGENCAG -WSSDKAHKVLKQAFGEKITMTIRDRPFERTITMHKDSTGHVGFIFKNGKITSIVKDSSAARNGLLTEHNICEINGQNVIGLKDS -QIADILSTSGTVVTITIMPAFIFEHIIKRMAPSIMKSLMDHTIPEV - -Reading protein sequence -~~~~~~~~~~~~~~~~~~~~~~~~ ->>> from PyBioMed.PyGetMol.GetProtein import ReadFasta ->>> f = open('./PyBioMed/test/test_data/protein.fasta') #You should change the path to your own real path ->>> protein_seq = ReadFasta(f) ->>> print protein -['MLIHQYDHATAQYIASHLADPDPLNDGRWLIPAFATATPLPERPARTWPFFLDGAWVLRPDHRGQRLYRTDTGEAAEIVAAG -IAPEAAGLTPTPRPSDEHRWIDGAWQIDPQIVAQRARDAAMREFDLRMASARQANAGRADAYAAGLLSDAEIAVFKAWAIYQMD -LVRVVSAASFPDDVQWPAEPDEAAVIEQADGKASAGDAAAA', -'MLIHQYDHATAQYIASHLADPDPLNDGRWLIPAFATATPLPERPARTWPFFLDGAWVLRPDHRGQRLYRTDTGEAAEIVAAGI -APEAAGLTPTPRPSDEHRWIDGAWQIDPQIVAQRARDAAMREFDLRMASARQANAGRADAYAAGLLSDAEIAVFKAWAIYQMDL -VRVVSAASFPDDVQWPAEPDEAAVIEQADGKASAGDAAAA'] - -Getting DNA sequence -~~~~~~~~~~~~~~~~~~~~ -The :mod:`GetDNA` module provides the tool to get DNA sequence by the Gene ID from website. - ->>> from PyBioMed.PyGetMol import GetDNA ->>> seq = GetDNA.GetDNAFromUniGene('AA954964') ->>> print seq ->ENA|AA954964|AA954964.1 op24b10.s1 Soares_NFL_T_GBC_S1 Homo sapiens cDNA clone IMAGE:1577755 3', mRNA sequence. -TTTTAAAATATAAAAGGATAACTTTATTGAATATACAAATTCAAGAGCATTCAATTTTTT -TTTAAGATTATGGCATAAGACAGATCAATGGTAATGGTTTATATATCCTATACTTACCAA -ACAGATTAGGTAGATATACTGACCTATCAATGCTCAAAATAACAAAATGAATACATGTCC -CTAAACTATTTCTGTATTCTATGACTACTAAATGGGAAATCTGTCAGCTGACCACCCACC -AGACTTTTTCCCATAGGAAGTTTGATATGCTGTCATTGATATATACCATTTCTGAATATA -AACCTCTATCTTGGGTCCTTTTCTCTTTGCCTACTTCATTATCTGTCTTCCCAACCCACC -TAAGACTTAGTCAAAACAGGATACAGAGATCTGGATGGCTCTACGCAGAG - -Reading DNA sequence -~~~~~~~~~~~~~~~~~~~~ ->>> from PyBioMed.PyGetMol.GetDNA import ReadFasta ->>> f = open('./PyBioMed/test/test_data/example.fasta') #You should change the path to your own real path ->>> dna_seq = ReadFasta(f) ->>> print dna -['GACTGAACTGCACTTTGGTTTCATATTATTTGCTC'] - -Pretreating structure ---------------------- -The :mod:`PyPretreat` can pretreat the molecular structure, the protein sequence and the DNA sequence. - -Pretreating molecules -~~~~~~~~~~~~~~~~~~~~~ -The :mod:`PyPretreatMol` can pretreat the molecular structure. The :mod:`PyPretreatMol` proivdes the following functions: - -- Normalization of functional groups to a consistent format. -- Recombination of separated charges. -- Breaking of bonds to metal atoms. -- Competitive reionization to ensure strongest acids ionize first in partially ionize molecules. -- Tautomer enumeration and canonicalization. -- Neutralization of charges. -- Standardization or removal of stereochemistry information. -- Filtering of salt and solvent fragments. -- Generation of fragment, isotope, charge, tautomer or stereochemistry insensitive parent structures. -- Validations to identify molecules with unusual and potentially troublesome characteristics. - -The user can diconnect metal ion. - ->>> from PyBioMed.PyPretreat.PyPretreatMol import StandardizeMol ->>> from rdkit import Chem ->>> mol = Chem.MolFromSmiles('[Na]OC(=O)c1ccc(C[S+2]([O-])([O-]))cc1') ->>> sdm = StandardizeMol() ->>> mol = sdm.disconnect_metals(mol) ->>> print Chem.MolToSmiles(mol, isomericSmiles=True) -O=C([O-])c1ccc(C[S+2]([O-])[O-])cc1.[Na+] - -Pretreat the molecular structure using all functions. - ->>> from PyBioMed.PyPretreat import PyPretreatMol ->>> stdsmi = PyPretreatMol.StandardSmi('[Na]OC(=O)c1ccc(C[S+2]([O-])([O-]))cc1') ->>> print stdsmi -O=C([O-])c1ccc(C[S](=O)=O)cc1 - - -Pretreating protein sequence -~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The user can check the protein sequence using the :mod:`PyPretreatPro`. If the sequence is right, the result is the number of amino acids. If the sequence is wrong, the result is 0. - ->>> from PyBioMed.PyPretreat import PyPretreatPro ->>> protein="ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDASU" ->>> print PyPretreatPro.ProteinCheck(protein) -0 ->>> from PyBioMed.PyPretreat import PyPretreatPro ->>> protein="ADGCRN" ->>> print PyPretreatPro.ProteinCheck(protein) -6 - -Pretreating DNA sequence -~~~~~~~~~~~~~~~~~~~~~~~~ -The user can check the DNA sequence using the :mod:`PyPretreatDNA`. If the sequence is right, the result is True. If the sequence is wrong, the result is the wrong word. - ->>> from PyBioMed.PyPretreat import PyPretreatDNA ->>> DNA="ATTTAC" ->>> print PyPretreatDNA.DNAChecks(DNA) -True ->>> DNA= "ATCGUA" ->>> print PyPretreatDNA.DNAChecks(DNA) -U - - -Calculating molecular descriptors ---------------------------------- -The PyBioMed package could calculate a large number of molecular descriptors. These descriptors capture and magnify distinct aspects of chemical structures. Generally speaking, all descriptors could be divided into two classes: descriptors and fingerprints. Descriptors only used the property of molecular topology, including constitutional descriptors, topological descriptors, connectivity indices, E-state indices, Basak information indices, Burden descriptors, autocorrelation descriptors, charge descriptors, molecular properties, kappa shape indices, MOE-type descriptors. Molecular fingerprints contain FP2, FP3, FP4,topological fingerprints, Estate, atompairs, torsions, morgan and MACCS. - -.. figure:: /image/single_features.png - :width: 400px - :align: center - - The descriptors could be calculated through PyBioMed package - -Calculating descriptors -~~~~~~~~~~~~~~~~~~~~~~~ -We could import the corresponding module to calculate the molecular descriptors as need. There is 14 modules to compute descriptors. Moreover, a easier way to compute these descriptors is construct a PyMolecule object, which encapsulates all methods for the calculation of descriptors. - -Calculating molecular descriptors via functions -+++++++++++++++++++++++++++++++++++++++++++++++ - -The :func:`GetConnectivity` function in the :mod:`connectivity` module can calculate the connectivity descriptors. The result is given in the form of dictionary. - ->>> from PyBioMed.PyMolecule import connectivity ->>> from rdkit import Chem ->>> smi = 'CCC1(c2ccccc2)C(=O)N(C)C(=N1)O' ->>> mol = Chem.MolFromSmiles(smi) ->>> molecular_descriptor = connectivity.GetConnectivity(mol) ->>> print molecular_descriptor -{'Chi3ch': 0.0, 'knotp': 2.708, 'dchi3': 3.359, 'dchi2': 2.895, 'dchi1': 2.374, 'dchi0': 2.415, 'Chi5ch': 0.068, 'Chiv4': 1.998, 'Chiv7': 0.259, 'Chiv6': 0.591, 'Chiv1': 5.241, 'Chiv0': 9.344, 'Chiv3': 3.012, 'Chiv2': 3.856, 'Chi4c': 0.083, 'dchi4': 2.96, 'Chiv4pc': 1.472, 'Chiv3c': 0.588, 'Chiv8': 0.118, 'Chi3c': 1.264, 'Chi8': 0.636, 'Chi9': 0.322, 'Chi2': 6.751, 'Chi3': 6.372, 'Chi0': 11.759, 'Chi1': 7.615, 'Chi6': 2.118, 'Chi7': 1.122, 'Chi4': 4.959, 'Chi5': 3.649, 'Chiv5': 1.244, 'Chiv4c': 0.04, 'Chiv9': 0.046, 'Chi4pc': 3.971, 'knotpv': 0.884, 'Chiv5ch': 0.025, 'Chiv3ch': 0.0, 'Chiv10': 0.015, 'Chiv6ch': 0.032, 'Chi10': 0.135, 'Chi4ch': 0.0, 'Chiv4ch': 0.0, 'mChi1': 0.448, 'Chi6ch': 0.102} - -The function :func:`GetTopology` in the :mod:`topology` module can calculate all topological descriptors. - ->>> from PyBioMed.PyMolecule import topology ->>> from rdkit import Chem ->>> smi = 'CCC1(c2ccccc2)C(=O)N(C)C(=N1)O' ->>> mol = Chem.MolFromSmiles(smi) ->>> molecular_descriptor = topology.GetTopology(mol) ->>> print len(molecular_descriptor) -25 - -The function :func:`CATS2D` in the :mod:`cats2d` module can calculate all CATS2D descriptors. - ->>> from PyBioMed.PyMolecule.cats2d import CATS2D ->>> smi = 'CC(N)C(=O)[O-]' ->>> mol = Chem.MolFromSmiles(smi) ->>> cats = CATS2D(mol,PathLength = 10,scale = 3) ->>> print cats -{'CATS_AP4': 0.0, 'CATS_AP3': 1.0, 'CATS_AP6': 0.0, 'CATS_AA8': 0.0, 'CATS_AA9': 0.0, 'CATS_AP1': 0.0, ......, 'CATS_AP5': 0.0} ->>> print len(cats) -150 - -Calculating molecular descriptors via PyMolecule object -+++++++++++++++++++++++++++++++++++++++++++++++++++++++ -The :class:`PyMolecule` class can read molecules in different format including MOL, SMI, InChi and CAS. For example, the user can read a molecule in the format of SMI and calculate the E-state descriptors (316). - ->>> from PyBioMed import Pymolecule ->>> smi = 'CCC1(c2ccccc2)C(=O)N(C)C(=N1)O' ->>> mol = Pymolecule.PyMolecule() ->>> mol.ReadMolFromSmile(smi) ->>> molecular_descriptor = mol.GetEstate() ->>> print len(molecular_descriptor) -237 - -The object can also read molecules in the format of MOL file and calculate charge descriptors (25). - ->>> from PyBioMed import Pymolecule ->>> mol = Pymolecule.PyMolecule() ->>> mol.ReadMolFromMol('test/test_data/test.mol') #change path to the real path in your own computer ->>> molecular_descriptor = mol.GetCharge() ->>> print molecular_descriptor -{'QNmin': 0, 'QOss': 0.534, 'Mpc': 0.122, 'QHss': 0.108, 'SPP': 0.817, 'LDI': 0.322, 'QCmin': -0.061, 'Mac': 0.151, 'Qass': 0.893, 'QNss': 0, 'QCmax': 0.339, 'QOmax': -0.246, 'Tpc': 1.584, 'Qmax': 0.339, 'QOmin': -0.478, 'Tnc': -1.584, 'QHmin': 0.035, 'QCss': 0.252, 'QHmax': 0.297, 'QNmax': 0, 'Rnc': 0.302, 'Rpc': 0.214, 'Qmin': -0.478, 'Tac': 3.167, 'Mnc': -0.198} - -In order to be convenient to users, the object also provides the tool to get molecular structures by the molecular ID from website including NCBI, EBI, CAS, Kegg and Drugbank. - ->>> from PyBioMed import Pymolecule ->>> DrugBankID = 'DB01014' ->>> mol = Pymolecule.PyMolecule() ->>> smi = mol.GetMolFromDrugbank(DrugBankID) ->>> mol.ReadMolFromSmile(smi) ->>> molecular_descriptor = mol.GetKappa() ->>> print molecular_descriptor -{'phi': 5.989303307692309, 'kappa1': 22.291, 'kappa3': 7.51, 'kappa2': 11.111, 'kappam1': 18.587, 'kappam3': 5.395, 'kappam2': 8.378} - - -The code below can calculate all molecular descriptors except fingerprints. - ->>> from PyBioMed import Pymolecule ->>> smi = 'CCOC=N' ->>> mol = Pymolecule.PyMolecule() ->>> mol.ReadMolFromSmile(smi) ->>> alldes = mol.GetAllDescriptor() ->>> print len(alldes) -765 - -Calculating molecular fingerprints -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -In the :mod:`fingerprint` module, there are eighteen types of molecular fingerprints which are defined by abstracting and magnifying different aspects of molecular topology. - -Calculating fingerprint via functions -+++++++++++++++++++++++++++++++++++++ - -The :func:`CalculateFP2Fingerprint` function calculates the FP2 fingerprint. - ->>> from PyBioMed.PyMolecule.fingerprint import CalculateFP2Fingerprint ->>> import pybel ->>> smi = 'CCC1(c2ccccc2)C(=O)N(C)C(=N1)O' ->>> mol = pybel.readstring("smi", smi) ->>> mol_fingerprint = CalculateFP2Fingerprint(mol) ->>> print len(mol_fingerprint[1]) -103 - -The :func:`CalculateEstateFingerprint` function calculates the Estate fingerprint. - ->>> from PyBioMed.PyMolecule.fingerprint import CalculateEstateFingerprint ->>> smi = 'CCC1(c2ccccc2)C(=O)N(C)C(=N1)O' ->>> mol = Chem.MolFromSmiles(smi) ->>> mol_fingerprint = CalculateEstateFingerprint(mol) ->>> print len(mol_fingerprint[2]) -79 - -The function :func:`GhoseCrippenFingerprint` in the :mod:`ghosecrippen` module can calculate all ghosecrippen descriptors. - ->>> from PyBioMed.PyMolecule.ghosecrippen import GhoseCrippenFingerprint ->>> smi = 'CC(N)C(=O)O' ->>> mol = Chem.MolFromSmiles(smi) ->>> ghoseFP = GhoseCrippenFingerprint(mol) ->>> print ghoseFP -{'S3': 0, 'S2': 0, 'S1': 0, 'S4': 0, ......, 'N9': 0, 'Hal2': 0} ->>> print len(ghoseFP) -110 - -Calculating fingerprint via object -++++++++++++++++++++++++++++++++++ -The :class:`PyMolecule` class can calculate eleven kinds of fingerprints. For example, the user can read a molecule in the format of SMI and calculate the ECFP4 fingerprint (1024). - ->>> from PyBioMed import Pymolecule ->>> smi = 'CCOC=N' ->>> mol = Pymolecule.PyMolecule() ->>> mol.ReadMolFromSmile(smi) ->>> res = mol.GetFingerprint(FPName='ECFP4') ->>> print res -(4294967295L, {3994088662L: 1, 2246728737L: 1, 3542456614L: 1, 2072128742: 1, 2222711142L: 1, 2669064385L: 1, 3540009223L: 1, 849275503: 1, 2245384272L: 1, 2246703798L: 1, 864674487: 1, 4212523324L: 1, 3340482365L: 1}, ) - -Calculating protein descriptors -------------------------------- -PyProtein is a tool used for protein feature calculation. PyProtein calculates structural and physicochemical features of proteins and peptides from amino acid sequence. These sequence-derived structural and physicochemical features have been widely used in the development of machine learning models for predicting protein structural and functional classes, post-translational modification, subcellular locations and peptides of specific properties. There are two ways to calculate protein descriptors in the PyProtein module. One is to directly use the corresponding methods, the other one is firstly to construct a :class:`PyProtein` class and then run their methods to obtain the protein descriptors. It should be noted that the output is a dictionary form, whose keys and values represent the descriptor name and the descriptor value, respectively. The user could clearly understand the meaning of each descriptor. - -Calculating protein descriptors via functions -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The user can input the protein sequence and calculate the protein descriptors using function. - ->>> from PyBioMed.PyProtein import AAComposition ->>> protein="ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS" ->>> AAC=AAComposition.CalculateAAComposition(protein) ->>> print AAC -{'A': 11.94, 'C': 7.463, 'E': 8.955, 'D': 14.925, 'G': 8.955, 'F': 5.97, 'I': 0.0, 'H': 0.0, 'K': 1.493, 'M': 4.478, 'L': 2.985, 'N': 2.985, 'Q': 2.985, 'P': 2.985, 'S': 11.94, 'R': 1.493, 'T': 1.493, 'W': 2.985, 'V': 4.478, 'Y': 1.493} - -PyBioMed also provides :mod:`getpdb` to get sequence from `PDB`_ website to calculate protein descriptors. - -.. _`PDB`: http://www.rcsb.org/pdb/home/home.do - ->>> from PyBioMed.PyGetMol import GetProtein ->>> GetProtein.GetPDB(['1atp','1efz','1f88']) ->>> seq = GetProtein.GetSeqFromPDB('1atp.pdb') ->>> print seq -GNAAAAKKGSEQESVKEFLAKAKEDFLKKWETPSQNTAQLDQFDRIKTLGTGSFGRVMLVKHKESGNHYAMKILDKQKVVKLKQ -IEHTLNEKRILQAVNFPFLVKLEFSFKDNSNLYMVMEYVAGGEMFSHLRRIGRFSEPHARFYAAQIVLTFEYLHSLDLIYRDLK -PENLLIDQQGYIQVTDFGFAKRVKGRTWXLCGTPEYLAPEIILSKGYNKAVDWWALGVLIYEMAAGYPPFFADQPIQIYEKIVS -GKVRFPSHFSSDLKDLLRNLLQVDLTKRFGNLKNGVNDIKNHKWFATTDWIAIYQRKVEAPFIPKFKGPGDTSNFDDYEEEEIR -VXINEKCGKEFTEFTTYADFIASGRTGRRNAIHD ->>> from PyBioMed.PyProtein import CTD ->>> protein_descriptor = CTD.CalculateC(protein) ->>> print protein_descriptor -{'_NormalizedVDWVC2': 0.224, '_PolarizabilityC2': 0.328, '_PolarizabilityC3': 0.179, '_ChargeC1': 0.03, '_PolarizabilityC1': 0.493, '_SecondaryStrC2': 0.239, '_SecondaryStrC3': 0.418, '_NormalizedVDWVC3': 0.179, '_SecondaryStrC1': 0.343, '_SolventAccessibilityC1': 0.448, '_SolventAccessibilityC2': 0.328, '_SolventAccessibilityC3': 0.224, '_NormalizedVDWVC1': 0.522, '_HydrophobicityC3': 0.284, '_HydrophobicityC1': 0.328, '_ChargeC3': 0.239, '_PolarityC2': 0.179, '_PolarityC1': 0.299, '_HydrophobicityC2': 0.388, '_PolarityC3': 0.03, '_ChargeC2': 0.731} - -Calculate protein descriptors via object -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The :mod:`PyProtein` can calculate all kinds of protein descriptors in the PyBioMed. -For example, the :class:`PyProtein` can calculate DPC. - ->>> from PyBioMed import Pyprotein ->>> protein="ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS" ->>> protein_class = Pyprotein.PyProtein(protein) ->>> print len(protein_class.GetDPComp()) -400 - -The :mod:`PyProtein` also provide the tool to get sequence from `Uniprot`_ through the Uniprot ID. - -.. _`Uniprot`: http://www.uniprot.org/ - ->>> from PyBioMed import Pyprotein ->>> from PyBioMed.PyProtein.GetProteinFromUniprot import GetProteinSequence ->>> uniprotID = 'P48039' ->>> protein_sequence = GetProteinSequence(uniprotID) ->>> print protein_sequence -MEDINFASLAPRHGSRPFMGTWNEIGTSQLNGGAFSWSSLWSGIKNFGSSIKSFGNKAWNSNTGQMLRDKLKDQNFQQKVVDGL -ASGINGVVDIANQALQNQINQRLENSRQPPVALQQRPPPKVEEVEVEEKLPPLEVAPPLPSKGEKRPRPDLEETLVVESREPPS -YEQALKEGASPYPMTKPIGSMARPVYGKESKPVTLELPPPVPTVPPMPAPTLGTAVSRPTAPTVAVATPARRPRGANWQSTLNS -IVGLGVKSLKRRRCY ->>> protein_class = Pyprotein.PyProtein(protein_sequence) ->>> CTD = protein_class.GetCTD() ->>> print len(CTD) -147 - -The :class:`PyProtein` can calculate all protein descriptors except the tri-peptide composition descriptors. - ->>> from PyBioMed import Pyprotein ->>> protein="ADGCGVGEGTGQGPMCNCMCMKWVYADEDAADLESDSFADEDASLESDSFPWSNQRVFCSFADEDAS" ->>> protein_class = Pyprotein.PyProtein(protein) ->>> print len(protein_class.GetALL()) -10049 - - -Calculating DNA descriptors ---------------------------- -The PyDNA module can generate various feature vectors for DNA sequences, this module could: - -- Calculating three nucleic acid composition features describing the local sequence information by means of kmers (subsequences of DNA sequences); - -- Calculating six autocorrelation features describing the level of correlation between two oligonucleotides along a DNA sequence in terms of their specific physicochemical properties; - -- Calculating six pseudo nucleotide composition features, which can be used to represent a DNA sequence with a discrete model or vector yet still keep considerable sequence order information, particularly the global or long-range sequence order information, via the physicochemical properties of its constituent oligonucleotides. - -Calculating DNA descriptors via functions -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The user can input a DNA sequence and calculate the DNA descriptors using functions. - ->>> from PyBioMed.PyDNA.PyDNAac import GetDAC ->>> dac = GetDAC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Twist','Tilt']) ->>> print(dac) -{'DAC_4': -0.004, 'DAC_1': -0.175, 'DAC_2': -0.185, 'DAC_3': -0.173} - -The user can check the parameters and calculate the descriptors. - ->>> from PyBioMed.PyDNA import PyDNApsenac ->>> from PyBioMed.PyDNA.PyDNApsenac import GetPseDNC ->>> dnaseq = 'GACTGAACTGCACTTTGGTTTCATATTATTTGCTC' ->>> PyDNApsenac.CheckPsenac(lamada = 2, w = 0.05, k = 2) ->>> psednc = GetPseDNC('ACCCCA',lamada=2, w=0.05) ->>> print(psednc) -{'PseDNC_18': 0.0521, 'PseDNC_16': 0.0, 'PseDNC_17': 0.0391, 'PseDNC_14': 0.0, 'PseDNC_15': 0.0, 'PseDNC_12': 0.0, 'PseDNC_13': 0.0, 'PseDNC_10': 0.0, 'PseDNC_11': 0.0, 'PseDNC_4': 0.0, 'PseDNC_5': 0.182, 'PseDNC_6': 0.545, 'PseDNC_7': 0.0, 'PseDNC_1': 0.0, 'PseDNC_2': 0.182, 'PseDNC_3': 0.0, 'PseDNC_8': 0.0, 'PseDNC_9': 0.0} - -Calculating DNA descriptors via object -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -The :mod:`PyDNA` can calculate all kinds of protein descriptors in the PyBioMed. -For example, the :class:`PyDNA` can calculate SCPseDNC. - ->>> from PyBioMed import Pydna ->>> dna = Pydna.PyDNA('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC') ->>> scpsednc = dna.GetSCPseDNC() ->>> print len(scpsednc) -16 - -Calculating Interaction descriptors ------------------------------------ -The PyInteraction module can generate six types of interaction descriptors indcluding chemical-chemical interaction features, chemical-protein interaction features, chemical-DNA interaction features, protein-protein interaction features, protein-DNA interaction features, and DNA-DNA interaction features by integrating two groups of features. - -The user can choose three different types of methods to calculate interaction descriptors. The function :func:`CalculateInteraction1` can calculate two interaction features by combining two features. - -.. math:: - F_{ab} = \bigl(F_a, F_b\bigr) - -The function :func:`CalculateInteraction2` can calculate two interaction features by two multiplied features. - -.. math:: F = \{F(k)= F_a(i) ×F_b(j), i = 1, 2, …, p, j = 1, 2 ,… , p, k = (i-1) ×p+j\} - -The function :func:`CalculateInteraction3` can calculate two interaction features by - -.. math:: F=[F_a(i)+F_b(i)),F_a(i)*F_b(i)] - -The function :func:`CalculateInteraction3` is only used in the same type of descriptors including chemical-chemical interaction, protein-protein interaction and DNA-DNA interaction. - -The user can calculate chemical-chemical features using three methods . - -.. figure:: /image/CCI.png - :width: 400px - :align: center - - The calculation process for chemical-chemical interaction descriptors. - ->>> from PyBioMed.PyInteraction import PyInteraction ->>> from PyBioMed.PyMolecule import moe ->>> from rdkit import Chem ->>> smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] ->>> m = Chem.MolFromSmiles(smis[3]) ->>> mol_des = moe.GetMOE(m) ->>> mol_mol_interaction1 = PyInteraction.CalculateInteraction1(mol_des,mol_des) ->>> print mol_mol_interaction1 -{'slogPVSA6ex': 0.0, 'PEOEVSA10ex': 0.0,......, 'EstateVSA9ex': 4.795, 'slogPVSA2': 4.795, 'slogPVSA3': 0.0, 'slogPVSA0': 5.734, 'slogPVSA1': 17.118, 'slogPVSA6': 0.0, 'slogPVSA7': 0.0, 'slogPVSA4': 6.924, 'slogPVSA5': 0.0, 'slogPVSA8': 0.0, 'slogPVSA9': 0.0} ->>> print len(mol_mol_interaction1) -120 ->>> mol_mol_interaction2 = PyInteraction.CalculateInteraction2(mol_des,mol_des) ->>> print len(mol_mol_interaction2) -3600 ->>> mol_mol_interaction3 = PyInteraction.CalculateInteraction3(mol_des,mol_des) -{'EstateVSA9*EstateVSA9': 22.992, 'EstateVSA9+EstateVSA9': 9.59, 'PEOEVSA1+PEOEVSA1': 9.59, 'VSAEstate10*VSAEstate10': 0.0, 'PEOEVSA3*PEOEVSA3': 0.0, 'PEOEVSA11*PEOEVSA11': 0.0, 'PEOEVSA4*PEOEVSA4': 0.0, 'VSAEstate2+VSAEstate2': 0.0, 'MRVSA0+MRVSA0': 19.802, 'MRVSA6+MRVSA6': 0.0......} ->>> print len(mol_mol_interaction3) -120 - -The user can calculate chemical-protein feature using two methods. - -.. figure:: /image/CPI.png - :width: 400px - :align: center - - The calculation process for chemical-protein interaction descriptors. - - ->>> from rdkit import Chem ->>> from PyBioMed.PyMolecule import moe ->>> from PyBioMed.PyInteraction.PyInteraction import CalculateInteraction2 ->>> smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] ->>> m = Chem.MolFromSmiles(smis[3]) ->>> mol_des = moe.GetMOE(m) ->>> from PyBioMed.PyDNA.PyDNApsenac import GetPseDNC ->>> protein_des = GetPseDNC('ACCCCA',lamada=2, w=0.05) ->>> pro_mol_interaction1 = PyInteraction.CalculateInteraction1(mol_des,protein_des) ->>> print len(pro_mol_interaction1) -78 ->>> pro_mol_interaction2 = CalculateInteraction2(mol_des,protein_des) ->>> print len(pro_mol_interaction2) -1080 - -The user can calculate chemical-DNA feature using two methods. - ->>> from PyBioMed.PyDNA import PyDNAac ->>> DNA_des = PyDNAac.GetTCC('GACTGAACTGCACTTTGGTTTCATATTATTTGCTC', phyche_index=['Dnase I', 'Nucleosome','MW-kg']) ->>> from rdkit import Chem ->>> smis = ['CCCC','CCCCC','CCCCCC','CC(N)C(=O)O','CC(N)C(=O)[O-].[Na+]'] ->>> m = Chem.MolFromSmiles(smis[3]) ->>> mol_des = moe.GetMOE(m) ->>> mol_DNA_interaction1 = PyInteraction.CalculateInteraction1(mol_des,DNA_des) ->>> print len(mol_DNA_interaction1) -72 ->>> mol_DNA_interaction2 = PyInteraction.CalculateInteraction2(mol_des,DNA_des) ->>> print len(mol_DNA_interaction2) -720 diff --git a/PyBioMed/doc/_build/html/_sources/application.txt b/PyBioMed/doc/_build/html/_sources/application.txt deleted file mode 100644 index 7f3f4ad..0000000 --- a/PyBioMed/doc/_build/html/_sources/application.txt +++ /dev/null @@ -1,446 +0,0 @@ -Application -=========== -The PyBioMed Python package can generate various feature vectors for molecular structure, protein sequences and DNA sequences. The PyBioMed package would be applied to solve many tasks in the field of cheminformatics, bioinformatics and systems biology. We will introduce five examples of its applications including Caco-2 cell permeability, aqueous solubility, drug–target interaction data, protein subcellular location, and nucleosome positioning in genomes. All datasets and Python scripts used in the next five examples can be download on https://github.com/gadsbyfly/PyBioMed/tree/master/PyBioMed/example. - -.. figure:: /image/brief.png - :width: 400px - :align: center - - The overview of PyBioMed python package. PyBioMed could calculate various molecular descriptors from chemicals, proteins, DNAs/RNAs and their interactions. PyBioMed can also pretreat molecules, protein sequences and DNA sequences. - - -Application 1 Prediction of Caco-2 Cell Permeability ----------------------------------------------------- -Caco-2 cell monolayer model is a popular surrogate in predicting the in vitro human intestinal permeability of a drug due to its morphological and functional similarity with human enterocytes. Oral administration of drugs is the preferred route and a major goal in the development of new drugs because of its ease and patient compliance. Before an oral drug reaches the systemic circulation, it must pass through intestinal cell membranes via passive diffusion, carrier-mediated uptake or active transport processes. Bioavailability, reflecting the drug proportion in the circulatory system, is a significant index of drug efficacy. Screening for absorption ability is one of the most important parts of assessing oral bioavailability. Caco-2 cell line is a popular surrogate for the human intestinal epithelium to estimate in vivo drug permeability due to their morphological and functional similarities with human enterocytes. To build a Caco-2 cell permeability prediction model, we use the PyBioMed package to calculate molecular features and then the Random Forest (RF) method was applied to build Caco-2 cell permeability classification model. The benchmark data set for building the Caco-2 cell permeability predictor was taken from (NN Wang et al. 2016). The dataset contains 1272 compounds. - - -.. figure:: /image/caco2.png - :width: 400px - :align: center - - The receiver operating characteristic curve of Caco-2 classification. - - -.. code-block:: python - :linenos: - - from PyBioMed import Pymolecule - import pandas as pd - from sklearn.ensemble import RandomForestClassifier - from sklearn import metrics - from matplotlib import pyplot as plt - #============================================================================== - # load the data - #============================================================================== - train_set = pd.read_excel('./example/caco2/caco2.xlsx',sheetname=0) #change the path to your own path - test_set = pd.read_excel('./example/caco2/caco2.xlsx',sheetname=1) #change the path to your own path - - train_set_smi = train_set['smi'] - test_set_smi = test_set['smi'] - - train_set_label = train_set[['label']] - test_set_label = test_set[['label']] - #============================================================================== - # calculating molecular descriptors to a descriptors dataframe - #============================================================================== - def calculate_des(smi): - des = {} - drugclass=Pymolecule.PyMolecule() - drugclass.ReadMolFromSmile(smi) - des.update(drugclass.GetMoran()) - des.update(drugclass.GetMOE()) - return pd.DataFrame({smi:(des)}).T - - train_set_des = pd.concat(map(calculate_des,list(train_set_smi))) - test_set_des = pd.concat(map(calculate_des,list(test_set_smi))) - #============================================================================== - # building the model and predicting the test set - #============================================================================== - clf = RandomForestClassifier(n_estimators=500,max_features='sqrt', n_jobs=-1, max_depth=None,random_state=0) - clf.fit(train_set_des,train_set_label) - - proba = clf.predict_proba(test_set_des)[:,1] - predict_label = clf.predict(test_set_des) - #============================================================================== - # Calculating auc score - #============================================================================== - AUC_score = round(metrics.roc_auc_score(test_set_label, proba),2) - TPR = round(metrics.recall_score(test_set_label, predict_label),2) - ACC = round(metrics.accuracy_score(test_set_label, predict_label),2) - P = float(test_set_label.sum()) - N = test_set_label.shape[0] - P - SPE = round((P/N+1.0)*ACC-TPR*P/N,2) - matthews_corrcoef = round(metrics.matthews_corrcoef(test_set_label, predict_label),2) - f1_score = round(metrics.f1_score(test_set_label, predict_label), 2) - fpr_cv, tpr_cv, thresholds_cv = metrics.roc_curve(test_set_label, proba) - #============================================================================== - # plotting the auc plot - #============================================================================== - plt.figure(figsize = (10,7)) - plt.plot(fpr_cv, tpr_cv, 'r', label='auc = %0.2f'% AUC_score, lw=2) - plt.xlabel('False positive rate',{'fontsize':20}); - plt.ylabel('True positive rate',{'fontsize':20}); - plt.title('ROC of Caco-2 Classification',{'fontsize':25}) - plt.legend(loc="lower right",numpoints=15) - plt.show() - ->>> print 'sensitivity:',TPR, 'specificity:', SPE, 'accuracy:', ACC, 'AUC:', AUC_score, 'MACCS:', matthews_corrcoef, 'F1:', f1_score -sensitivity: 0.91 specificity: 0.8 accuracy: 0.86 AUC: 0.93 MACCS: 0.72 F1: 0.88 - - - -Application 2 Prediction of aqueous solubility ----------------------------------------------- -Aqueous solubility is one of the major drug properties to be optimized in drug discovery. Aqueous solubility and membrane permeability are the two key factors that affect a drug’s oral bioavailability. Generally, a drug with high solubility and membrane permeability is considered to have bioavailability problems. Otherwise, it is a problematic candidate or needs careful formulation work. To build an aqueous solubility prediction model, we use the PyBioMed package to calculate molecular features and then the random forest (RF) method was applied to build aqueous solubility regression model. The benchmark data set for building the aqueous solubility regression model was taken from (Junmei Wang et al.). The dataset contains 3637 compounds. - -.. figure:: /image/solubility.png - :width: 400px - :align: center - - The aqueous solubility prediction. The X-axis represents experimental values and the Y-axis represents predicted values. - - -.. code-block:: python - :linenos: - - from PyBioMed import Pymolecule - import pandas as pd - import numpy as np - from sklearn import cross_validation - from sklearn.ensemble import RandomForestRegressor - from matplotlib import pyplot as plt - from sklearn.cross_validation import train_test_split - from sklearn import metrics - #============================================================================== - # loading the data - #============================================================================== - #change the path to your own path - solubility_set = pd.read_excel('./example/solubility/Solubility-total.xlsx',sheetname = 0) - - - smis = solubility_set['SMI'] - logS = solubility_set['logS'] - #============================================================================== - # #calculating molecular descriptors - #============================================================================== - def calculate_des(smi): - des = {} - drugclass=Pymolecule.PyMolecule() - drugclass.ReadMolFromSmile(smi) - des.update(drugclass.GetEstate()) - des.update(drugclass.GetMOE()) - return pd.DataFrame({smi:(des)}).T - solubility_set_des = pd.concat(map(calculate_des,list(smis))) - solubility_set_des = np.array(solubility_set_des) - logS = np.array(logS) - #============================================================================== - # building the model and predict - #============================================================================== - train_set_des, test_set_des, train_logS, test_logS = train_test_split(solubility_set_des, - logS, test_size = 0.33, random_state = 42) - - kf = cross_validation.KFold(train_set_des.shape[0], n_folds=10, random_state=0) - clf = RandomForestRegressor(n_estimators=500, max_features='auto', n_jobs = -1) - CV_pred_logS = [] - VALIDATION_index = [] - for train_index, validation_index in kf: - VALIDATION_index = VALIDATION_index + list(validation_index) - clf.fit(train_set_des[train_index ,:],train_logS[train_index]) - pred_logS = clf.predict(train_set_des[validation_index,:]) - CV_pred_logS = CV_pred_logS + list(pred_logS) - CV_true_logS = train_logS[VALIDATION_index] - r2_CV = metrics.r2_score(CV_true_logS, CV_pred_logS) - - clf.fit(train_set_des,train_logS) - pred_logS_test = clf.predict(test_set_des) - r2_test = metrics.r2_score(test_logS, pred_logS_test) - #============================================================================== - # plotting the figure - #============================================================================== - plt.figure(figsize = (10,10)) - plt.plot(range(-15,5),range(-15,5),'black') - plt.plot(CV_true_logS,CV_pred_logS,'b.',label = 'cross validation', alpha = 0.5 ) - plt.plot(test_logS,pred_logS_test,'r.',label = 'test set',alpha = 0.5) - plt.title('Aqueous Solubility Prediction',{'fontsize':25}) - plt.legend(loc="lower right",numpoints=1) - plt.plot() - ->>> print 'CV_R^2:',r2_cv,'Test_R^2:',r2_test -CV_R^2: 0.86 Test_R^2: 0.84 - -Application 3 Prediction of drug–target interaction from the integration of chemical and protein spaces -------------------------------------------------------------------------------------------------------- -Drug-target interactions (DTIs) are central to current drug discovery processes and public health fields. The rapidly increasing amount of publicly available data in biology and chemistry enables researchers to revisit drug-target interaction problems by systematic integration and analysis of heterogeneous data. To identify the interactions between drugs and targets is of important in drug discovery today. Interaction with ligands can modulate the function of many targets in the processes of signal transport, catalytic reaction and so on. With the enrichment of data repository, automatically prediction of target-protein interactions is an alternative method to facilitate drug discovery. Our previous work (Cao et al, 2014) proved that the calculated features perform well in the prediction of chemical-protein interaction. The benchmark data set for building the drug-target interaction predictor was taken from (Yamanishi, Araki et al. 2008). The dataset contains 6888 samples, among them 2922 drug-protein pairs have interactions which are defined as positive dataset and 3966 drug-protein pairs do not have interactions which are defined as negative dataset. To represent each drug-protein pairs, 150 CATS molecular fingerprints and 147 CTD composition, transition and distribution features of protein, a total number of 297 features were used. The random forest (RF) classifier was employed to build model. - -.. figure:: /image/DPI.png - :width: 400px - :align: center - - The receiver operating characteristic curve of drug-target interaction classification. - -.. code-block:: python - :linenos: - - from PyBioMed import Pymolecule - from PyBioMed import Pyprotein - import pandas as pd - import numpy as np - from sklearn.ensemble import RandomForestClassifier as RF - from sklearn import cross_validation - from sklearn import metrics - from matplotlib import pyplot as plt - #============================================================================== - # loading the data - #============================================================================== - path = 'input PyBioMed path in your computer' #input the real path in your own path - smis = pd.read_excel(path + 'example/dpi/DPI_SMIs.xlsx') - smis.index = smis['Drug'] - protein_seq = pd.read_table(path + 'example/dpi/hsa_seqs_all.tsv', sep = '\t') - protein_seq.index = protein_seq['Protein'] - - positive_pairs = pd.read_excel(path + 'example/dpi/Enzyme.xls') - positive_pairs = zip(list(positive_pairs['Protein']), list(positive_pairs['Drug'])) - - negative_pairs = pd.read_excel(path + 'example/dpi/Enzymedecoy.xls') - negative_pairs = zip(list(negative_pairs['Protein']), list(negative_pairs['Drug'])) - #============================================================================== - # calculating descriptors - #============================================================================== - def calculate_pair_des(smi, seq): - pair_des = {} - drugclass = Pymolecule.PyMolecule() - drugclass.ReadMolFromSmile(smi) - pair_des.update(drugclass.GetCATS2D()) - proclass = Pyprotein.PyProtein(seq) - pair_des.update(proclass.GetCTD()) - return pair_des - positive_pairs_des = {} - for n, positive_pair in enumerate(positive_pairs): - try: - pair_des = calculate_pair_des(smis.ix[positive_pair[1]][1],protein_seq.ix[positive_pair[0]][1]) - positive_pairs_des[n] = pair_des - except: - continue - - negative_pairs_des = {} - for n, negative_pair in enumerate(negative_pairs): - try: - pair_des = calculate_pair_des(smis.ix[negative_pair[1]][1],protein_seq.ix[negative_pair[0]][1]) - negative_pairs_des[n] = pair_des - except: - continue - #============================================================================== - # cross-validation - #============================================================================== - x = np.array(pd.concat([pd.DataFrame(positive_pairs_des).T, pd.DataFrame(negative_pairs_des).T], - join_axes=[pd.DataFrame(positive_pairs_des).T.columns],axis = 0, ignore_index=True)) - - positive_count, negative_count = len(positive_pairs_des), len(negative_pairs_des) - y = np.array([1]*positive_count+ [0]*negative_count) - - # ROC curve of CV - kf = cross_validation.KFold(x.shape[0], n_folds=10, shuffle=True,random_state=5) - clf = RF(n_estimators=500, max_features='sqrt', n_jobs=-1, oob_score=True) - CV_pred_prob = [] - CV_pred_label=[] - VALIDATION_index = [] - for train_index, validation_index in kf: - VALIDATION_index = VALIDATION_index + list(validation_index) - clf.fit(x[train_index ,:],y[train_index]) - pred_prob = clf.predict_proba(x[validation_index,:]) - pred_label = clf.predict(x[validation_index,:]) - CV_pred_prob = CV_pred_prob + list(pred_prob[:,1]) - CV_pred_label = CV_pred_label + list(pred_label) - fpr_cv, tpr_cv, thresholds_cv = metrics.roc_curve(y[VALIDATION_index], CV_pred_prob) - y_true = y[VALIDATION_index] - AUC_score = metrics.roc_auc_score(y[VALIDATION_index], CV_pred_prob) - TPR = metrics.recall_score(y_true, CV_pred_label) - ACC = metrics.accuracy_score(y_true, CV_pred_label) - SPE = (float(positive_count)/float(negative_count)+1.0)*ACC-TPR*float(positive_count)/float(negative_count) - matthews_corrcoef = metrics.matthews_corrcoef(y_true, CV_pred_label) - f1_score = metrics.f1_score(y_true, CV_pred_label) - #============================================================================== - # plotting the figure - #============================================================================== - plt.figure(figsize = (10,7)) - plt.plot(fpr_cv, tpr_cv, 'r', label='auc = %0.2f'% AUC_score, lw=2) - plt.xlabel('False positive rate',{'fontsize':20}); - plt.ylabel('True positive rate',{'fontsize':20}); - plt.title('ROC of Drug-target Interaction Classification',{'fontsize':25}) - plt.legend(loc="lower right",numpoints=15) - plt.show() - ->>> print 'sensitivity:',TPR, 'specificity:', SPE, 'accuracy:', ACC, 'AUC:', AUC_score, 'MCC:', matthews_corrcoef, 'F1:', f1_score -sensitivity: 0.84 specificity: 0.93 accuracy: 0.89 AUC: 0.95 MCC: 0.78 F1: 0.87 - - - -Application 4 Prediction of protein subcellular location --------------------------------------------------------- -To identify the functions of proteins in organism is one of the fundamental goals in cell biology and proteomics. The function of a protein in organism is closely linked to its location in a cell. Determination of protein subcellular location (PSL) by experimental methods is expensive and time-consuming. With the enrichment of data repository, automatically prediction of PSL is an alternative method to facilitate the determination of PSL. To build a PSL prediction model, we use PyProtein in PyBioMed to calculate protein features and then the random forest (RF) method was applied to build PSL classification model. The benchmark data set for building the protein subcellular location predictor was taken from (Jia, Qian et al. 2007). The dataset contains 2568 samples, among them 849 proteins were located at Cytoplasm which is defined as positive dataset and 1619 proteins were located at Nucleus which is defined as negative dataset. For each protein, 20 amino acid composition (AAC), 147 CTD composition, transition and distribution and 30 pseudo amino acid composition (PAAC), a total number of 197 features were calculate through the PyBioMed tool. - -To build the classification model, the CSV file containing the calculated descriptors was then converted to sample matrix (x_train) and a sample label vector (y_train) is also provided. Then, the python script randomforests.py based on sklearn package was employed to build the classification model (the number of trees is 500, the maximum number of features in each tree is square root of the number of features). The performance of this model was evaluated by using 10-fold cross-validation. The AUC score, accuracy, sensitivity and specificity are 0.90, 0.85, 0.94 and 0.69 respectively - - -.. figure:: /image/subcell.png - :width: 400px - :align: center - - The receiver operating characteristic curve of protein subcellular location classification. - -.. code-block:: python - :linenos: - - import pandas as pd - from PyBioMed.PyProtein.CTD import CalculateCTD - import numpy as np - from sklearn.ensemble import RandomForestClassifier as RF - from sklearn import cross_validation - from sklearn import metrics - from matplotlib import pyplot as plt - #============================================================================== - # loading the data - #============================================================================== - path = 'input PyBioMed path in your computer' #input the PyBioMed path in your own computer - f = open(path + 'example/subcell/Cytoplasm_seq.txt','r') - cytoplasm = [line.replace('\n','') for line in f.readlines() if line != '\n'] - f.close() - f = open(path + 'example/subcell/Nuclear_seq.txt','r') - nuclear = [line.replace('\n','') for line in f.readlines() if line != '\n'] - f.close() - #============================================================================== - # calculating the descriptors - #============================================================================== - cytoplasm_des = dict(zip(range(len(cytoplasm)),map(CalculateCTD,cytoplasm))) - nuclear_des = dict(zip(range(len(nuclear)),map(CalculateCTD,nuclear))) - cytoplasm_des_df = pd.DataFrame(cytoplasm_des).T - nuclear_des_df = pd.DataFrame(nuclear_des).T - #============================================================================== - # cross-validation - #============================================================================== - x = np.array(pd.concat([cytoplasm_des_df, nuclear_des_df])) - positive_count, negative_count = len(cytoplasm_des), len(nuclear_des) - y = np.array([1]*positive_count+ [0]*negative_count) - kf = cross_validation.KFold(x.shape[0], n_folds=10, shuffle = True, random_state=5) - clf = RF(n_estimators=500, max_features='sqrt', n_jobs=-1, oob_score=True) - CV_pred_prob = [] - CV_pred_label=[] - VALIDATION_index = [] - kf = cross_validation.KFold(x.shape[0], n_folds=10, shuffle=True,random_state=5) - clf = RF(n_estimators=500, max_features='sqrt', n_jobs=-1, oob_score=True) - CV_pred_prob = [] - CV_pred_label=[] - VALIDATION_index = [] - for train_index, validation_index in kf: - VALIDATION_index = VALIDATION_index + list(validation_index) - clf.fit(x[train_index ,:],y[train_index]) - pred_prob = clf.predict_proba(x[validation_index,:]) - pred_label = clf.predict(x[validation_index,:]) - CV_pred_prob = CV_pred_prob + list(pred_prob[:,1]) - CV_pred_label = CV_pred_label + list(pred_label) - fpr_cv, tpr_cv, thresholds_cv = metrics.roc_curve(y[VALIDATION_index], CV_pred_prob) - y_true = y[VALIDATION_index] - AUC_score = metrics.roc_auc_score(y[VALIDATION_index], CV_pred_prob) - TPR = metrics.recall_score(y_true, CV_pred_label) - ACC = metrics.accuracy_score(y_true, CV_pred_label) - SPE = (float(positive_count)/float(negative_count)+1.0)*ACC-TPR*float(positive_count)/float(negative_count) - matthews_corrcoef = metrics.matthews_corrcoef(y_true, CV_pred_label) - f1_score = metrics.f1_score(y_true, CV_pred_label) - #============================================================================== - # plotting the figure - #============================================================================== - plt.figure(figsize = (10,7)) - plt.plot(fpr_cv, tpr_cv, 'r', label='auc = %0.2f'% AUC_score, lw=2) - plt.xlabel('False positive rate',{'fontsize':20}); - plt.ylabel('True positive rate',{'fontsize':20}); - plt.title('ROC of protein subcellular location Classification',{'fontsize':25}) - plt.legend(loc="lower right",numpoints=15) - plt.show() - ->>> print 'sensitivity:',TPR, 'specificity:', SPE, 'accuracy:', ACC, 'AUC:', AUC_score, 'MACCS:', matthews_corrcoef, 'F1:', f1_score -sensitivity: 0.67 specificity: 0.92 accuracy: 0.84 AUC: 0.89 MACCS: 0.62 F1: 0.74 - -Application 5 Predicting nucleosome positioning in genomes with dinucleotide-based auto covariance --------------------------------------------------------------------------------------------------- -Nucleosome positioning participates in many cellular activities and plays significant roles in regulating cellular processes (Guo, et al., 2014). Computational methods that can predict nucleosome positioning based on the DNA sequences is highly desired. Here, a computational predictor was constructed by using dinucleotide-based auto covariance and SVMs, and its performance was evaluated by 10-fold cross-validation. The benchmark data set for the H. sapiens was taken from (Schones, et al., 2008). Since the H. sapiens genome and its nucleosome map contain a huge amount of data, according to Liu’s strategy (Liu, et al., 2011) the nucleosome-forming sequence samples (positive data) and the linkers or nucleosome-inhibiting sequence samples (negative data) were extracted from chromosome (Guo, et al., 2014). A file named "H_sapiens_pos.fasta" containing 2,273 nucleosome-forming DNA segments is used as the positive dataset, and a file named "H_sapiens_neg.fasta" containing 2,300 nucleosome-inhibiting DNA segments is used as the negative dataset. - -.. figure:: /image/DNA.png - :width: 400px - :align: center - - The receiver operating characteristic curve of nucleosome positioning in genomes classification. - -.. code-block:: python - :linenos: - - import pandas as pd - from PyBioMed import Pydna - from PyBioMed.PyGetMol import GetDNA - import numpy as np - from sklearn.ensemble import RandomForestClassifier as RF - from sklearn import cross_validation - from sklearn import metrics - from matplotlib import pyplot as plt - #============================================================================== - # loading data - #============================================================================== - path = 'PyBioMed package real path in your computer' # input the real path in your own computer - seqs_pos = GetDNA.ReadFasta(open(path + '/example/dna/H_sapiens_pos.fasta')) - seqs_neg = GetDNA.ReadFasta(open(path + '/example/dna/H_sapiens_neg.fasta')) - #============================================================================== - # calculating descriptors - #============================================================================== - def calculate_des(seq): - des = [] - dnaclass = Pydna.PyDNA(seq) - des.extend(dnaclass.GetDAC(all_property=True).values()) - des.extend(dnaclass.GetPseDNC(all_property=True,lamada=2, w=0.05).values()) - des.extend(dnaclass.GetPseKNC(all_property=True,lamada=2, w=0.05).values()) - des.extend(dnaclass.GetSCPseDNC(all_property=True).values()) - return des - pos_des = [] - for seq_pos in seqs_pos: - pos_des.append(calculate_des(seq_pos)) - neg_des = [] - for seq_neg in seqs_neg: - neg_des.append(calculate_des(seq_neg)) - #============================================================================== - # cross validation - #============================================================================== - x = np.array(pos_des+neg_des) - positive_count, negative_count = len(pos_des), len(neg_des) - y = np.array([1]*positive_count+ [0]*negative_count) - kf = cross_validation.KFold(x.shape[0], n_folds=10, random_state=0) - clf = RF(n_estimators=500, max_features='sqrt', n_jobs=-1, oob_score=True) - CV_pred_prob = [] - CV_pred_label=[] - VALIDATION_index = [] - for train_index, validation_index in kf: - VALIDATION_index = VALIDATION_index + list(validation_index) - clf.fit(x[train_index ,:],y[train_index]) - pred_prob = clf.predict_proba(x[validation_index,:]) - pred_label = clf.predict(x[validation_index,:]) - CV_pred_prob = CV_pred_prob + list(pred_prob[:,1]) - CV_pred_label = CV_pred_label + list(pred_label) - fpr_cv, tpr_cv, thresholds_cv = metrics.roc_curve(y[VALIDATION_index], CV_pred_prob) - # Calculate auc score of cv - y_true = y[VALIDATION_index] - AUC_score = metrics.roc_auc_score(y[VALIDATION_index], CV_pred_prob) - TPR = metrics.recall_score(y_true, CV_pred_label) - ACC = metrics.accuracy_score(y_true, CV_pred_label) - SPE = (float(positive_count)/float(negative_count)+1.0)*ACC-TPR*float(positive_count)/float(negative_count) - matthews_corrcoef = metrics.matthews_corrcoef(y_true, CV_pred_label) - f1_score = metrics.f1_score(y_true, CV_pred_label) - #============================================================================== - # plotting the figure - #============================================================================== - plt.figure(figsize = (10,7)) - plt.plot(fpr_cv, tpr_cv, 'r', label='auc = %0.2f'% AUC_score, lw=2) - plt.xlabel('False positive rate',{'fontsize':20}); - plt.ylabel('True positive rate',{'fontsize':20}); - plt.title('ROC of Nucleosome Positioning in Genomes Classification',{'fontsize':25}) - plt.legend(loc="lower right",numpoints=15) - plt.show() - ->>> print 'sensitivity:',TPR, 'specificity:', SPE, 'accuracy:', ACC, 'AUC:', AUC_score, 'MACCS:', matthews_corrcoef, 'F1:', f1_score -sensitivity: 0.82 specificity: 0.80 accuracy: 0.81 AUC: 0.88 MACCS: 0.62 F1: 0.81 diff --git a/PyBioMed/doc/_build/html/_sources/download.txt b/PyBioMed/doc/_build/html/_sources/download.txt deleted file mode 100644 index a7f3454..0000000 --- a/PyBioMed/doc/_build/html/_sources/download.txt +++ /dev/null @@ -1,40 +0,0 @@ --------- -Download --------- - -Python Package -~~~~~~~~~~~~~~ - -Github (latest development): https://github.com/gadsbyfly/PyBioMed/ - - -Documentation -~~~~~~~~~~~~~ -*PDF* - -https://github.com/gadsbyfly/PyBioMed/tree/master/PyBioMed/download/PyBioMed%20Documentation.pdf - -The introduction of descriptors -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -*PDF* - -Molecular descriptors introduction -++++++++++++++++++++++++++++++++++ -https://github.com/gadsbyfly/PyBioMed/tree/master/PyBioMed/download/PyBioMed%20Chem.pdf - -Protein descriptors introduction -++++++++++++++++++++++++++++++++ -https://github.com/gadsbyfly/PyBioMed/tree/master/PyBioMed/download/PyBioMed%20Protein.pdf - -DNA descriptors introduction -++++++++++++++++++++++++++++ -https://github.com/gadsbyfly/PyBioMed/tree/master/PyBioMed/download/PyBioMed%20DNA.pdf - -Interaction descriptors introduction -++++++++++++++++++++++++++++++++++++ -https://github.com/gadsbyfly/PyBioMed/tree/master/PyBioMed/download/PyBioMed%20Interaction.pdf - - -*HTML in zip file* - -https://github.com/gadsbyfly/PyBioMed/tree/master/PyBioMed/download/PyBioMedDocumentationHTML.zip diff --git a/PyBioMed/doc/_build/html/_sources/index.txt b/PyBioMed/doc/_build/html/_sources/index.txt deleted file mode 100644 index 251e4dd..0000000 --- a/PyBioMed/doc/_build/html/_sources/index.txt +++ /dev/null @@ -1,40 +0,0 @@ -.. PyBioMed documentation master file, created by - sphinx-quickstart on Fri Jun 03 01:54:29 2016. - You can adapt this file completely to your liking, but it should at least - contain the root `toctree` directive. - -The PyBioMed Documentation -========================== -The python package PyBioMed is designed by `CBDD Group`_ (Computational Biology & Drug Design Group), Xiangya School of Pharmaceutical Sciences, Central South University. To develop a powerful model for prediction tasks by machine learning algorithms such as sckit-learn, one of the most important things to consider is how to effectively represent the molecules under investigation such as small molecules, proteins, DNA and even complex interactions, by a descriptor. PyBioMed is a feature-rich package used for the characterization of various complex biological molecules and interaction samples, such as chemicals, proteins, DNA, and their interactions. PyBioMed calculates nine types of features including chemical descriptors or molecular fingerprints, structural and physicochemical features of proteins and peptides from amino acid sequence, composition and physicochemical features of DNA from their primary sequences, chemical-chemical interaction features, chemical-protein interaction features, chemical-DNA interaction features, protein-protein interaction features, protein-DNA interaction features, and DNA-DNA interaction features. We hope that the package can be used for exploring questions concerning structures, functions and interactions of various molecular data in the context of chemoinformatics, bioinformatics, and systems biology. - -.. _`CBDD Group`: http://home.scbdd.com/index.php?s=/Home/Index.html&t=english - -.. toctree:: - :maxdepth: 3 - - overview - User_guide - application - -.. toctree:: - :maxdepth: 2 - - modules - test - download - - - - - -Indices and tables -================== - -* :ref:`genindex` -* :ref:`modindex` -* :ref:`search` - - -.. figure:: /image/logocbdd.png - :width: 500px - :align: center diff --git a/PyBioMed/doc/_build/html/_sources/modules.txt b/PyBioMed/doc/_build/html/_sources/modules.txt deleted file mode 100644 index ed7c8af..0000000 --- a/PyBioMed/doc/_build/html/_sources/modules.txt +++ /dev/null @@ -1,13 +0,0 @@ -PyBioMed API -============ - -.. toctree:: - :maxdepth: 4 - - /reference/PyDNA - /reference/PyMolecule - /reference/PyProtein - /reference/PyPretreat - /reference/PyInteraction - /reference/PyGetMol - /reference/test diff --git a/PyBioMed/doc/_build/html/_sources/overview.txt b/PyBioMed/doc/_build/html/_sources/overview.txt deleted file mode 100644 index 32379ce..0000000 --- a/PyBioMed/doc/_build/html/_sources/overview.txt +++ /dev/null @@ -1,126 +0,0 @@ -.. -*- coding: utf-8 -*- - -Overview -======== - -To develop a powerful model for prediction tasks by machine learning algorithms such as sckit-learn, one of the most important things to consider is how to effectively represent the molecules under investigation such as small molecules, proteins, DNA and even complex interactions, by a descriptor. PyBioMed is a feature-rich package used for the characterization of various complex biological molecules and interaction samples, such as chemicals, proteins, DNA, and their interactions. PyBioMed calculates nine types of features including chemical descriptors or molecular fingerprints, structural and physicochemical features of proteins and peptides from amino acid sequence, composition and physicochemical features of DNA from their primary sequences, chemical-chemical interaction features, chemical-protein interaction features, chemical-DNA interaction features, protein-protein interaction features, protein-DNA interaction features, and DNA-DNA interaction features. We hope that the package can be used for exploring questions concerning structures, functions and interactions of various molecular data in the context of chemoinformatics, bioinformatics, and systems biology. The python package PyBioMed is designed by CBDD Group (Computational Biology & Drug Design Group), Xiangya School of Pharmaceutical Sciences, Central South University. - -Who uses PyBioMed? -~~~~~~~~~~~~~~~~~ - -For those researchers from different biomedical fields, the PyBioMed package can be used to analyze and represent various complex molecular data under investigation. PyBioMed will be helpful when exploring questions concerning structures, functions and interactions of various molecular data in the context of chemoinformatics, bioinformatics, and systems biology. - - -Motivation -~~~~~~~~~~ -PyBioMed is intended to provide - -- Tools for pretreating molecules, proteins sequence and DNA sequence - -- Calculating chemical descriptors or molecular fingerprints from - molecules' structures - -- Calculating structural and physicochemical features of proteins and peptides - from amino acid sequence - -- Calculating composition and physicochemical features of DNA - from their primary sequences - -- Calculating interaction features including chemical-chemical interaction features, - chemical-protein interaction features, chemical-DNA interaction features, - protein-protein interaction features, protein-DNA interaction features - and DNA-DNA interaction features. - -- Getting molecular structures, protein sequence and DNA sequence from Internet through - the molecular ID, protein ID and DNA ID. - -Feature overview -~~~~~~~~~~~~~~~~ - -The table below shows the descriptors and the number of the descriptor that PyBioMed can calculate in four modules including PyMolecule, PyProtein, PyDNA and PyInteraction. PyMolecule module can calculate 14 different types of molecular descriptors and 18 different types of molecular fingerprints. PyProtein module can calculate 14 types of protein descriptors. PyDNA module can calculate 14 types of DNA descriptors and the number in the table appears when parameters are 'all_property = True, lamada=2, w=0.05'. PyInteraction module can calculate three types of descriptors. - -+------------------+-------------------------------------------------------+--------------+ -|Types |Features |Description | -+==================+=======================================================+==============+ -|PyMolecule | - Constitution (30) | | -| | - Connectivity descriptors (44) | | -| | - Topology descriptors (35) | | -| | - Basak descriptors (21) | | -| | - Burden descriptors (64) | | -| | - Kappa descriptors (7) | | -| | - E-state descriptors (237) | | -| | - Moran autocorrelation descriptors (32) | | -| | - Geary autocorrelation descriptors (32) | | -| | - Molecular property descriptors (6) | | -| | - Moreau-Broto autocorrelation descriptors (32) | | -| | - Charge descriptors (25) |`PyMolecule`_ | -| | - MOE-type descriptors (60) | | -| | - CATS2D descriptors (150) | | -+ +-------------------------------------------------------+ + -| | - Daylight-type fingerprints (2048) | | -| | - MACCS fingerprints (166) | | -| | - Atom pairs fingerprints (1024) | | -| | - TopologicalTorsion fingerprints (1024) | | -| | - E-state fingerprints (79) | | -| | - FP2 fingerprints (1024) | | -| | - FP3 fingerprints (210) | | -| | - FP4 fingerprints (307) | | -| | - ECFP2 fingerprints (1024) | | -| | - ECFP4 fingerprints (1024) | | -| | - ECFP6 fingerprints (1024) | | -| | - Morgan fingerprints (1024) | | -| | - Ghosecrippen fingerprints (110) | | -| | - FCFP2 fingerprints (1024) | | -| | - FCFP4 fingerprints (1024) | | -| | - FCFP6 fingerprints (1024) | | -| | - Pharm2D2point fingerprints (135) | | -| | - Pharm2D3point fingerprints (2135) | | -+------------------+-------------------------------------------------------+--------------+ -|PyProtein | - Amino acid composition (20) | | -| | - Dipeptide composition (400) | | -| | - Tripeptide composition (8000) | | -| | - CTD composition (21) | | -| | - CTD transition (21) | | -| | - CTD distribution (105) | | -| | - M-B autocorrelation (240) |`PyProtein`_ | -| | - Moran autocorrelation (240) | | -| | - Geary autocorrelation (240) | | -| | - Conjoint triad features (343) | | -| | - Quasi-sequence order descriptors (100) | | -| | - Sequence order coupling number (60) | | -| | - Pseudo amino acid composition 1 (50) | | -| | - Pseudo amino acid composition 2 (50) | | -+------------------+-------------------------------------------------------+--------------+ -|PyDNA | - Basic kmer (16) (k=2) | | -| | - Reverse compliment kmer (10) (k=2) | | -| | - DAC (76) (all_property=True) | | -| | - DCC (2812) (all_property=True) | | -| | - DACC (2888) (all_property=True) | | -| | - TAC (24) (all_property=True) | | -| | - TCC (264) (all_property=True) | | -| | - TACC (288) (all_property=True) |`PyDNA`_ | -| | - PseDNC (18) (all_property=True,lamada=2,w=0.05) | | -| | - PseKNC (66) (all_property=True,lamada=2,w=0.05) | | -| | - PC-PseDNC (18) (all_property=True,lamada=2,w=0.05) | | -| | - PC-PseTNC (66) (all_property=True,lamada=2,w=0.05) | | -| | - SC-PseDNC (92) (all_property=True,lamada=2,w=0.05) | | -| | - SC-PseTNC (88) (all_property=True,lamada=2,w=0.05) | | -+------------------+-------------------------------------------------------+--------------+ -|PyInteraction | - Feature type 1 | | -| | - Feature type 2 |`PyInter`_ | -| | - Feature type 3 | | -+------------------+-------------------------------------------------------+--------------+ - - - - -The Python programming language -~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ - -Python is a powerful programming language that allows simple and flexible representations of biochemical molecules, and clear and concise expressions of bioinformatics algorithms. Python has a vibrant and growing ecosystem of packages that PyBioMed uses to provide more features such as RDkit and Pybel. In addition, Python is also an excellent “glue” language for putting together pieces of software from other languages which allows reuse of legacy code and engineering of high-performance algorithms. Equally important, Python is free, well-supported, and a joy to use. In order to make full use of PyBioMed, you will want to know how to write basic programs in Python. Among the many guides to Python, we recommend the documentation at http://www.python.org. - - -.. _`PyMolecule`: https://raw.githubusercontent.com/gadsbyfly/PyBioMed/master/PyBioMed/download/PyBioMed%20Chem.pdf -.. _`PyProtein`: https://github.com/gadsbyfly/PyBioMed/blob/master/PyBioMed/download/PyBioMed%20Protein.pdf -.. _`PyDNA`: https://github.com/gadsbyfly/PyBioMed/blob/master/PyBioMed/download/PyBioMed%20DNA.pdf -.. _`PyInter`: https://github.com/gadsbyfly/PyBioMed/blob/master/PyBioMed/download/PyBioMed%20Interaction.pdf diff --git a/PyBioMed/doc/_build/html/_sources/reference/AAComposition.txt b/PyBioMed/doc/_build/html/_sources/reference/AAComposition.txt deleted file mode 100644 index 0c73141..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/AAComposition.txt +++ /dev/null @@ -1,7 +0,0 @@ -AAComposition module -==================== - -.. automodule:: AAComposition - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/AAIndex.txt b/PyBioMed/doc/_build/html/_sources/reference/AAIndex.txt deleted file mode 100644 index d34712b..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/AAIndex.txt +++ /dev/null @@ -1,7 +0,0 @@ -AAIndex module -============== - -.. automodule:: AAIndex - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/AtomProperty.txt b/PyBioMed/doc/_build/html/_sources/reference/AtomProperty.txt deleted file mode 100644 index 36c33f1..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/AtomProperty.txt +++ /dev/null @@ -1,7 +0,0 @@ -AtomProperty module -=================== - -.. automodule:: AtomProperty - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/AtomTypes.txt b/PyBioMed/doc/_build/html/_sources/reference/AtomTypes.txt deleted file mode 100644 index ebd5ccb..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/AtomTypes.txt +++ /dev/null @@ -1,7 +0,0 @@ -AtomTypes module -================ - -.. automodule:: AtomTypes - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/Autocorrelation.txt b/PyBioMed/doc/_build/html/_sources/reference/Autocorrelation.txt deleted file mode 100644 index 16ccded..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/Autocorrelation.txt +++ /dev/null @@ -1,7 +0,0 @@ -Autocorrelation module -====================== - -.. automodule:: Autocorrelation - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/CTD.txt b/PyBioMed/doc/_build/html/_sources/reference/CTD.txt deleted file mode 100644 index 2ffc706..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/CTD.txt +++ /dev/null @@ -1,7 +0,0 @@ -CTD module -========== - -.. automodule:: CTD - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/ConjointTriad.txt b/PyBioMed/doc/_build/html/_sources/reference/ConjointTriad.txt deleted file mode 100644 index 725c3c9..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/ConjointTriad.txt +++ /dev/null @@ -1,7 +0,0 @@ -ConjointTriad module -==================== - -.. automodule:: ConjointTriad - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/GetDNA.txt b/PyBioMed/doc/_build/html/_sources/reference/GetDNA.txt deleted file mode 100644 index c607c52..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/GetDNA.txt +++ /dev/null @@ -1,7 +0,0 @@ -GetDNA module -============= - -.. automodule:: GetDNA - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/GetProtein.txt b/PyBioMed/doc/_build/html/_sources/reference/GetProtein.txt deleted file mode 100644 index 324a985..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/GetProtein.txt +++ /dev/null @@ -1,7 +0,0 @@ -GetProtein module -============= - -.. automodule:: GetProtein - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/GetProteinFromUniprot.txt b/PyBioMed/doc/_build/html/_sources/reference/GetProteinFromUniprot.txt deleted file mode 100644 index 69a08a2..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/GetProteinFromUniprot.txt +++ /dev/null @@ -1,7 +0,0 @@ -GetProteinFromUniprot module -============================ - -.. automodule:: GetProteinFromUniprot - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/GetSubSeq.txt b/PyBioMed/doc/_build/html/_sources/reference/GetSubSeq.txt deleted file mode 100644 index a01303b..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/GetSubSeq.txt +++ /dev/null @@ -1,7 +0,0 @@ -GetSubSeq module -================ - -.. automodule:: GetSubSeq - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/Getmol.txt b/PyBioMed/doc/_build/html/_sources/reference/Getmol.txt deleted file mode 100644 index e6d77a6..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/Getmol.txt +++ /dev/null @@ -1,7 +0,0 @@ -Getmol module -============= - -.. automodule:: Getmol - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/ProCheck.txt b/PyBioMed/doc/_build/html/_sources/reference/ProCheck.txt deleted file mode 100644 index fcfbf82..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/ProCheck.txt +++ /dev/null @@ -1,7 +0,0 @@ -ProCheck module -=============== - -.. automodule:: ProCheck - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PseudoAAC.txt b/PyBioMed/doc/_build/html/_sources/reference/PseudoAAC.txt deleted file mode 100644 index f1aacbf..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PseudoAAC.txt +++ /dev/null @@ -1,7 +0,0 @@ -PseudoAAC module -================ - -.. automodule:: PseudoAAC - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PubChemFingerprints.txt b/PyBioMed/doc/_build/html/_sources/reference/PubChemFingerprints.txt deleted file mode 100644 index 339d671..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PubChemFingerprints.txt +++ /dev/null @@ -1,7 +0,0 @@ -PubChemFingerprints module -========================== - -.. automodule:: PubChemFingerprints - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyDNA.txt b/PyBioMed/doc/_build/html/_sources/reference/PyDNA.txt deleted file mode 100644 index 13fa0bc..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyDNA.txt +++ /dev/null @@ -1,13 +0,0 @@ -PyDNA -===== - -.. toctree:: - :maxdepth: 4 - - PyDNAac - PyDNAacutil - PyDNAnac - PyDNAnacutil - PyDNApsenac - PyDNApsenacutil - PyDNAutil diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyDNAac.txt b/PyBioMed/doc/_build/html/_sources/reference/PyDNAac.txt deleted file mode 100644 index 3f8618f..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyDNAac.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyDNAac module -============== -.. highlight:: python -.. automodule:: PyDNAac - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyDNAacutil.txt b/PyBioMed/doc/_build/html/_sources/reference/PyDNAacutil.txt deleted file mode 100644 index 574b430..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyDNAacutil.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyDNAacutil module -================== - -.. automodule:: PyDNAacutil - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyDNAnac.txt b/PyBioMed/doc/_build/html/_sources/reference/PyDNAnac.txt deleted file mode 100644 index 94722e7..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyDNAnac.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyDNAnac module -=============== - -.. automodule:: PyDNAnac - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyDNAnacutil.txt b/PyBioMed/doc/_build/html/_sources/reference/PyDNAnacutil.txt deleted file mode 100644 index 4da154d..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyDNAnacutil.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyDNAnacutil module -=================== - -.. automodule:: PyDNAnacutil - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyDNApsenac.txt b/PyBioMed/doc/_build/html/_sources/reference/PyDNApsenac.txt deleted file mode 100644 index 5c01f48..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyDNApsenac.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyDNApsenac module -================== - -.. automodule:: PyDNApsenac - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyDNApsenacutil.txt b/PyBioMed/doc/_build/html/_sources/reference/PyDNApsenacutil.txt deleted file mode 100644 index 0a78b31..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyDNApsenacutil.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyDNApsenacutil module -====================== - -.. automodule:: PyDNApsenacutil - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyDNAutil.txt b/PyBioMed/doc/_build/html/_sources/reference/PyDNAutil.txt deleted file mode 100644 index 8343b01..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyDNAutil.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyDNAutil module -================ - -.. automodule:: PyDNAutil - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyGetMol.txt b/PyBioMed/doc/_build/html/_sources/reference/PyGetMol.txt deleted file mode 100644 index 1bb2f9d..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyGetMol.txt +++ /dev/null @@ -1,9 +0,0 @@ -PyGetMol -======== - -.. toctree:: - :maxdepth: 4 - - GetProtein - GetDNA - Getmol diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyInteraction.txt b/PyBioMed/doc/_build/html/_sources/reference/PyInteraction.txt deleted file mode 100644 index 5c0cc05..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyInteraction.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyInteraction -========= - -.. toctree:: - :maxdepth: 4 - - PyInteraction_module diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyInteraction_module.txt b/PyBioMed/doc/_build/html/_sources/reference/PyInteraction_module.txt deleted file mode 100644 index 32def7b..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyInteraction_module.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyInteraction module -==================== - -.. automodule:: PyInteraction - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyMolecule.txt b/PyBioMed/doc/_build/html/_sources/reference/PyMolecule.txt deleted file mode 100644 index bbe743b..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyMolecule.txt +++ /dev/null @@ -1,26 +0,0 @@ -PyMolecule -========== - -.. toctree:: - :maxdepth: 4 - - AtomProperty - AtomTypes - basak - bcut - cats2d - charge - connectivity - constitution - estate - fingerprint - geary - ghosecrippen - kappa - moe - molproperty - moran - moreaubroto - topology - Scaffolds - PubChemFingerprints diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyPreTools.txt b/PyBioMed/doc/_build/html/_sources/reference/PyPreTools.txt deleted file mode 100644 index 3d59a48..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyPreTools.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyPreTools module -================= - -.. automodule:: PyPreTools - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyPretreat.txt b/PyBioMed/doc/_build/html/_sources/reference/PyPretreat.txt deleted file mode 100644 index 2dcdc54..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyPretreat.txt +++ /dev/null @@ -1,10 +0,0 @@ -PyPretreat -========== - -.. toctree:: - :maxdepth: 4 - - PyPreTools - PyPretreatDNA - PyPretreatMol - PyPretreatPro diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyPretreatDNA.txt b/PyBioMed/doc/_build/html/_sources/reference/PyPretreatDNA.txt deleted file mode 100644 index 296900f..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyPretreatDNA.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyPretreatDNA module -==================== - -.. automodule:: PyPretreatDNA - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyPretreatMol.txt b/PyBioMed/doc/_build/html/_sources/reference/PyPretreatMol.txt deleted file mode 100644 index 435c2fd..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyPretreatMol.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyPretreatMol module -==================== - -.. automodule:: PyPretreatMol - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyPretreatMolutil.txt b/PyBioMed/doc/_build/html/_sources/reference/PyPretreatMolutil.txt deleted file mode 100644 index 7cf63df..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyPretreatMolutil.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyPretreatMolutil module -======================== - -.. automodule:: PyPretreatMolutil - :members: - .. autoclass:: PyPretreatMolutil.Standardizer(normalizations=NORMALIZATIONS, acid_base_pairs=ACID_BASE_PAIRS, tautomer_transforms=TAUTOMER_TRANSFORMS, tautomer_scores=TAUTOMER_SCORES, max_restarts=MAX_RESTARTS, max_tautomers=MAX_TAUTOMERS, prefer_organic=PREFER_ORGANIC) - :special-members: __call__ diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyPretreatPro.txt b/PyBioMed/doc/_build/html/_sources/reference/PyPretreatPro.txt deleted file mode 100644 index 8b5550c..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyPretreatPro.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyPretreatPro module -==================== - -.. automodule:: PyPretreatPro - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyProtein.txt b/PyBioMed/doc/_build/html/_sources/reference/PyProtein.txt deleted file mode 100644 index 65d830d..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyProtein.txt +++ /dev/null @@ -1,19 +0,0 @@ -PyProtein -========= - -.. toctree:: - :maxdepth: 4 - - PyProteinclass - AAComposition - AAIndex - Autocorrelation - CTD - ConjointTriad - GetProteinFromUniprot - GetSubSeq - ProCheck - PseudoAAC - PyProteinAAComposition - PyProteinAAIndex - QuasiSequenceOrder diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyProteinAAComposition.txt b/PyBioMed/doc/_build/html/_sources/reference/PyProteinAAComposition.txt deleted file mode 100644 index 7a068db..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyProteinAAComposition.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyProteinAAComposition module -============================= - -.. automodule:: PyProteinAAComposition - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyProteinAAIndex.txt b/PyBioMed/doc/_build/html/_sources/reference/PyProteinAAIndex.txt deleted file mode 100644 index 7ce7d8d..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyProteinAAIndex.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyProteinAAIndex module -======================= - -.. automodule:: PyProteinAAIndex - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/PyProteinclass.txt b/PyBioMed/doc/_build/html/_sources/reference/PyProteinclass.txt deleted file mode 100644 index 83dcdee..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/PyProteinclass.txt +++ /dev/null @@ -1,7 +0,0 @@ -PyProtein module -==================== - -.. automodule:: PyProtein - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/QuasiSequenceOrder.txt b/PyBioMed/doc/_build/html/_sources/reference/QuasiSequenceOrder.txt deleted file mode 100644 index 884d741..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/QuasiSequenceOrder.txt +++ /dev/null @@ -1,7 +0,0 @@ -QuasiSequenceOrder module -========================= - -.. automodule:: QuasiSequenceOrder - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/Scaffolds.txt b/PyBioMed/doc/_build/html/_sources/reference/Scaffolds.txt deleted file mode 100644 index fb8cc87..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/Scaffolds.txt +++ /dev/null @@ -1,7 +0,0 @@ -Scaffolds module -================ - -.. automodule:: Scaffolds - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/basak.txt b/PyBioMed/doc/_build/html/_sources/reference/basak.txt deleted file mode 100644 index 04dad81..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/basak.txt +++ /dev/null @@ -1,7 +0,0 @@ -basak module -============ - -.. automodule:: basak - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/bcut.txt b/PyBioMed/doc/_build/html/_sources/reference/bcut.txt deleted file mode 100644 index c82dc5d..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/bcut.txt +++ /dev/null @@ -1,7 +0,0 @@ -bcut module -=========== - -.. automodule:: bcut - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/cats2d.txt b/PyBioMed/doc/_build/html/_sources/reference/cats2d.txt deleted file mode 100644 index e2908ae..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/cats2d.txt +++ /dev/null @@ -1,7 +0,0 @@ -cats2d module -============= - -.. automodule:: cats2d - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/charge.txt b/PyBioMed/doc/_build/html/_sources/reference/charge.txt deleted file mode 100644 index 964d62e..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/charge.txt +++ /dev/null @@ -1,7 +0,0 @@ -charge module -============= - -.. automodule:: charge - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/connectivity.txt b/PyBioMed/doc/_build/html/_sources/reference/connectivity.txt deleted file mode 100644 index 18ad9aa..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/connectivity.txt +++ /dev/null @@ -1,7 +0,0 @@ -connectivity module -=================== - -.. automodule:: connectivity - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/constitution.txt b/PyBioMed/doc/_build/html/_sources/reference/constitution.txt deleted file mode 100644 index 497b90d..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/constitution.txt +++ /dev/null @@ -1,7 +0,0 @@ -constitution module -=================== - -.. automodule:: constitution - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/estate.txt b/PyBioMed/doc/_build/html/_sources/reference/estate.txt deleted file mode 100644 index ce6b862..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/estate.txt +++ /dev/null @@ -1,7 +0,0 @@ -estate module -============= - -.. automodule:: estate - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/fingerprint.txt b/PyBioMed/doc/_build/html/_sources/reference/fingerprint.txt deleted file mode 100644 index d3a9455..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/fingerprint.txt +++ /dev/null @@ -1,7 +0,0 @@ -fingerprint module -================== - -.. automodule:: fingerprint - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/geary.txt b/PyBioMed/doc/_build/html/_sources/reference/geary.txt deleted file mode 100644 index a718377..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/geary.txt +++ /dev/null @@ -1,7 +0,0 @@ -geary module -============ - -.. automodule:: geary - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/ghosecrippen.txt b/PyBioMed/doc/_build/html/_sources/reference/ghosecrippen.txt deleted file mode 100644 index 622edc3..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/ghosecrippen.txt +++ /dev/null @@ -1,7 +0,0 @@ -ghosecrippen module -=================== - -.. automodule:: ghosecrippen - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/kappa.txt b/PyBioMed/doc/_build/html/_sources/reference/kappa.txt deleted file mode 100644 index cb7ad09..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/kappa.txt +++ /dev/null @@ -1,7 +0,0 @@ -kappa module -============ - -.. automodule:: kappa - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/moe.txt b/PyBioMed/doc/_build/html/_sources/reference/moe.txt deleted file mode 100644 index 25986f2..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/moe.txt +++ /dev/null @@ -1,7 +0,0 @@ -moe module -========== - -.. automodule:: moe - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/molproperty.txt b/PyBioMed/doc/_build/html/_sources/reference/molproperty.txt deleted file mode 100644 index 89073ab..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/molproperty.txt +++ /dev/null @@ -1,7 +0,0 @@ -molproperty module -================== - -.. automodule:: molproperty - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/moran.txt b/PyBioMed/doc/_build/html/_sources/reference/moran.txt deleted file mode 100644 index 9125d71..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/moran.txt +++ /dev/null @@ -1,7 +0,0 @@ -moran module -============ - -.. automodule:: moran - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/moreaubroto.txt b/PyBioMed/doc/_build/html/_sources/reference/moreaubroto.txt deleted file mode 100644 index c18a93f..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/moreaubroto.txt +++ /dev/null @@ -1,7 +0,0 @@ -moreaubroto module -================== - -.. automodule:: moreaubroto - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/test.txt b/PyBioMed/doc/_build/html/_sources/reference/test.txt deleted file mode 100644 index 082ee76..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/test.txt +++ /dev/null @@ -1,17 +0,0 @@ -test module -============ - -.. toctree:: - :maxdepth: 6 - - - - - test2 - test_PyDNA - test_PyInteration - test_PyBioMed - test_PyGetMol - test_PyMolecule - test_PyPretreat - test_PyProtein diff --git a/PyBioMed/doc/_build/html/_sources/reference/test2.txt b/PyBioMed/doc/_build/html/_sources/reference/test2.txt deleted file mode 100644 index 4d7ea9f..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/test2.txt +++ /dev/null @@ -1,7 +0,0 @@ -test module -=========== -.. highlight:: python -.. automodule:: test - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/test_PyBioMed.txt b/PyBioMed/doc/_build/html/_sources/reference/test_PyBioMed.txt deleted file mode 100644 index a54f664..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/test_PyBioMed.txt +++ /dev/null @@ -1,7 +0,0 @@ -test_PyBioMed module -==================== -.. highlight:: python -.. automodule:: test_PyBioMed - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/test_PyDNA.txt b/PyBioMed/doc/_build/html/_sources/reference/test_PyDNA.txt deleted file mode 100644 index 0f27911..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/test_PyDNA.txt +++ /dev/null @@ -1,7 +0,0 @@ -test_PyDNA module -================= -.. highlight:: python -.. automodule:: test_PyDNA - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/test_PyGetMol.txt b/PyBioMed/doc/_build/html/_sources/reference/test_PyGetMol.txt deleted file mode 100644 index a6569a2..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/test_PyGetMol.txt +++ /dev/null @@ -1,7 +0,0 @@ -test_PyGetMol module -==================== -.. highlight:: python -.. automodule:: test_PyGetMol - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/test_PyInteration.txt b/PyBioMed/doc/_build/html/_sources/reference/test_PyInteration.txt deleted file mode 100644 index e96eb7a..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/test_PyInteration.txt +++ /dev/null @@ -1,7 +0,0 @@ -test_PyInteration module -======================== -.. highlight:: python -.. automodule:: test_PyInteration - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/test_PyMolecule.txt b/PyBioMed/doc/_build/html/_sources/reference/test_PyMolecule.txt deleted file mode 100644 index 1d183b6..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/test_PyMolecule.txt +++ /dev/null @@ -1,7 +0,0 @@ -test_PyMolecule module -====================== -.. highlight:: python -.. automodule:: test_PyMolecule - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/test_PyPretreat.txt b/PyBioMed/doc/_build/html/_sources/reference/test_PyPretreat.txt deleted file mode 100644 index 52c0df3..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/test_PyPretreat.txt +++ /dev/null @@ -1,7 +0,0 @@ -test_PyPretreat module -====================== -.. highlight:: python -.. automodule:: test_PyPretreat - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/test_PyProtein.txt b/PyBioMed/doc/_build/html/_sources/reference/test_PyProtein.txt deleted file mode 100644 index 6ce4a0e..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/test_PyProtein.txt +++ /dev/null @@ -1,7 +0,0 @@ -test_PyProtein module -===================== -.. highlight:: python -.. automodule:: test_PyProtein - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/reference/topology.txt b/PyBioMed/doc/_build/html/_sources/reference/topology.txt deleted file mode 100644 index c0a862e..0000000 --- a/PyBioMed/doc/_build/html/_sources/reference/topology.txt +++ /dev/null @@ -1,7 +0,0 @@ -topology module -=============== - -.. automodule:: topology - :members: - :undoc-members: - :show-inheritance: diff --git a/PyBioMed/doc/_build/html/_sources/test.txt b/PyBioMed/doc/_build/html/_sources/test.txt deleted file mode 100644 index a02dee8..0000000 --- a/PyBioMed/doc/_build/html/_sources/test.txt +++ /dev/null @@ -1,21 +0,0 @@ -******* -Testing -******* - -Requirements for testing -======================== -PyBioMed requires RDKit and pybel packages. -If you don't already have the packages installed, follow -the directions here -https://openbabel.org/docs/dev/UseTheLibrary/Python_Pybel.html - -http://www.rdkit.org/ - -Testing an installed package -============================ - -If you have a file-based (not a Python egg) installation you can -test the installed package with - ->>> from PyBioMed.test import test_PyBioMed ->>> test_PyBioMed.test_pybiomed() diff --git a/PyBioMed/doc/_build/html/_static/ajax-loader.gif b/PyBioMed/doc/_build/html/_static/ajax-loader.gif deleted file mode 100644 index 61faf8c..0000000 Binary files a/PyBioMed/doc/_build/html/_static/ajax-loader.gif and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_static/basic.css b/PyBioMed/doc/_build/html/_static/basic.css deleted file mode 100644 index 0b79414..0000000 --- a/PyBioMed/doc/_build/html/_static/basic.css +++ /dev/null @@ -1,611 +0,0 @@ -/* - * basic.css - * ~~~~~~~~~ - * - * Sphinx stylesheet -- basic theme. - * - * :copyright: Copyright 2007-2016 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * - */ - -/* -- main layout ----------------------------------------------------------- */ - -div.clearer { - clear: both; -} - -/* -- relbar ---------------------------------------------------------------- */ - -div.related { - width: 100%; - font-size: 90%; -} - -div.related h3 { - display: none; -} - -div.related ul { - margin: 0; - padding: 0 0 0 10px; - list-style: none; -} - -div.related li { - display: inline; -} - -div.related li.right { - float: right; - margin-right: 5px; -} - -/* -- sidebar --------------------------------------------------------------- */ - -div.sphinxsidebarwrapper { - padding: 10px 5px 0 10px; -} - -div.sphinxsidebar { - float: left; - width: 230px; - margin-left: -100%; - font-size: 90%; - word-wrap: break-word; - overflow-wrap : break-word; -} - -div.sphinxsidebar ul { - list-style: none; -} - -div.sphinxsidebar ul ul, -div.sphinxsidebar ul.want-points { - margin-left: 20px; - list-style: square; -} - -div.sphinxsidebar ul ul { - margin-top: 0; - margin-bottom: 0; -} - -div.sphinxsidebar form { - margin-top: 10px; -} - -div.sphinxsidebar input { - border: 1px solid #98dbcc; - font-family: sans-serif; - font-size: 1em; -} - -div.sphinxsidebar #searchbox input[type="text"] { - width: 170px; -} - -img { - border: 0; - max-width: 100%; -} - -/* -- search page ----------------------------------------------------------- */ - -ul.search { - margin: 10px 0 0 20px; - padding: 0; -} - -ul.search li { - padding: 5px 0 5px 20px; - background-image: url(file.png); - background-repeat: no-repeat; - background-position: 0 7px; -} - -ul.search li a { - font-weight: bold; -} - -ul.search li div.context { - color: #888; - margin: 2px 0 0 30px; - text-align: left; -} - -ul.keywordmatches li.goodmatch a { - font-weight: bold; -} - -/* -- index page ------------------------------------------------------------ */ - -table.contentstable { - width: 90%; -} - -table.contentstable p.biglink { - line-height: 150%; -} - -a.biglink { - font-size: 1.3em; -} - -span.linkdescr { - font-style: italic; - padding-top: 5px; - font-size: 90%; -} - -/* -- general index --------------------------------------------------------- */ - -table.indextable { - width: 100%; -} - -table.indextable td { - text-align: left; - vertical-align: top; -} - -table.indextable dl, table.indextable dd { - margin-top: 0; - margin-bottom: 0; -} - -table.indextable tr.pcap { - height: 10px; -} - -table.indextable tr.cap { - margin-top: 10px; - background-color: #f2f2f2; -} - -img.toggler { - margin-right: 3px; - margin-top: 3px; - cursor: pointer; -} - -div.modindex-jumpbox { - border-top: 1px solid #ddd; - border-bottom: 1px solid #ddd; - margin: 1em 0 1em 0; - padding: 0.4em; -} - -div.genindex-jumpbox { - border-top: 1px solid #ddd; - border-bottom: 1px solid #ddd; - margin: 1em 0 1em 0; - padding: 0.4em; -} - -/* -- general body styles --------------------------------------------------- */ - -div.body p, div.body dd, div.body li, div.body blockquote { - -moz-hyphens: auto; - -ms-hyphens: auto; - -webkit-hyphens: auto; - hyphens: auto; -} - -a.headerlink { - visibility: hidden; -} - -h1:hover > a.headerlink, -h2:hover > a.headerlink, -h3:hover > a.headerlink, -h4:hover > a.headerlink, -h5:hover > a.headerlink, -h6:hover > a.headerlink, -dt:hover > a.headerlink, -caption:hover > a.headerlink, -p.caption:hover > a.headerlink, -div.code-block-caption:hover > a.headerlink { - visibility: visible; -} - -div.body p.caption { - text-align: inherit; -} - -div.body td { - text-align: left; -} - -.field-list ul { - padding-left: 1em; -} - -.first { - margin-top: 0 !important; -} - -p.rubric { - margin-top: 30px; - font-weight: bold; -} - -img.align-left, .figure.align-left, object.align-left { - clear: left; - float: left; - margin-right: 1em; -} - -img.align-right, .figure.align-right, object.align-right { - clear: right; - float: right; - margin-left: 1em; -} - -img.align-center, .figure.align-center, object.align-center { - display: block; - margin-left: auto; - margin-right: auto; -} - -.align-left { - text-align: left; -} - -.align-center { - text-align: center; -} - -.align-right { - text-align: right; -} - -/* -- sidebars -------------------------------------------------------------- */ - -div.sidebar { - margin: 0 0 0.5em 1em; - border: 1px solid #ddb; - padding: 7px 7px 0 7px; - background-color: #ffe; - width: 40%; - float: right; -} - -p.sidebar-title { - font-weight: bold; -} - -/* -- topics ---------------------------------------------------------------- */ - -div.topic { - border: 1px solid #ccc; - padding: 7px 7px 0 7px; - margin: 10px 0 10px 0; -} - -p.topic-title { - font-size: 1.1em; - font-weight: bold; - margin-top: 10px; -} - -/* -- admonitions ----------------------------------------------------------- */ - -div.admonition { - margin-top: 10px; - margin-bottom: 10px; - padding: 7px; -} - -div.admonition dt { - font-weight: bold; -} - -div.admonition dl { - margin-bottom: 0; -} - -p.admonition-title { - margin: 0px 10px 5px 0px; - font-weight: bold; -} - -div.body p.centered { - text-align: center; - margin-top: 25px; -} - -/* -- tables ---------------------------------------------------------------- */ - -table.docutils { - border: 0; - border-collapse: collapse; -} - -table caption span.caption-number { - font-style: italic; -} - -table caption span.caption-text { -} - -table.docutils td, table.docutils th { - padding: 1px 8px 1px 5px; - border-top: 0; - border-left: 0; - border-right: 0; - border-bottom: 1px solid #aaa; -} - -table.field-list td, table.field-list th { - border: 0 !important; -} - -table.footnote td, table.footnote th { - border: 0 !important; -} - -th { - text-align: left; - padding-right: 5px; -} - -table.citation { - border-left: solid 1px gray; - margin-left: 1px; -} - -table.citation td { - border-bottom: none; -} - -/* -- figures --------------------------------------------------------------- */ - -div.figure { - margin: 0.5em; - padding: 0.5em; -} - -div.figure p.caption { - padding: 0.3em; -} - -div.figure p.caption span.caption-number { - font-style: italic; -} - -div.figure p.caption span.caption-text { -} - - -/* -- other body styles ----------------------------------------------------- */ - -ol.arabic { - list-style: decimal; -} - -ol.loweralpha { - list-style: lower-alpha; -} - -ol.upperalpha { - list-style: upper-alpha; -} - -ol.lowerroman { - list-style: lower-roman; -} - -ol.upperroman { - list-style: upper-roman; -} - -dl { - margin-bottom: 15px; -} - -dd p { - margin-top: 0px; -} - -dd ul, dd table { - margin-bottom: 10px; -} - -dd { - margin-top: 3px; - margin-bottom: 10px; - margin-left: 30px; -} - -dt:target, .highlighted { - background-color: #fbe54e; -} - -dl.glossary dt { - font-weight: bold; - font-size: 1.1em; -} - -.field-list ul { - margin: 0; - padding-left: 1em; -} - -.field-list p { - margin: 0; -} - -.optional { - font-size: 1.3em; -} - -.sig-paren { - font-size: larger; -} - -.versionmodified { - font-style: italic; -} - -.system-message { - background-color: #fda; - padding: 5px; - border: 3px solid red; -} - -.footnote:target { - background-color: #ffa; -} - -.line-block { - display: block; - margin-top: 1em; - margin-bottom: 1em; -} - -.line-block .line-block { - margin-top: 0; - margin-bottom: 0; - margin-left: 1.5em; -} - -.guilabel, .menuselection { - font-family: sans-serif; -} - -.accelerator { - text-decoration: underline; -} - -.classifier { - font-style: oblique; -} - -abbr, acronym { - border-bottom: dotted 1px; - cursor: help; -} - -/* -- code displays --------------------------------------------------------- */ - -pre { - overflow: auto; - overflow-y: hidden; /* fixes display issues on Chrome browsers */ -} - -span.pre { - -moz-hyphens: none; - -ms-hyphens: none; - -webkit-hyphens: none; - hyphens: none; -} - -td.linenos pre { - padding: 5px 0px; - border: 0; - background-color: transparent; - color: #aaa; -} - -table.highlighttable { - margin-left: 0.5em; -} - -table.highlighttable td { - padding: 0 0.5em 0 0.5em; -} - -div.code-block-caption { - padding: 2px 5px; - font-size: small; -} - -div.code-block-caption code { - background-color: transparent; -} - -div.code-block-caption + div > div.highlight > pre { - margin-top: 0; -} - -div.code-block-caption span.caption-number { - padding: 0.1em 0.3em; - font-style: italic; -} - -div.code-block-caption span.caption-text { -} - -div.literal-block-wrapper { - padding: 1em 1em 0; -} - -div.literal-block-wrapper div.highlight { - margin: 0; -} - -code.descname { - background-color: transparent; - font-weight: bold; - font-size: 1.2em; -} - -code.descclassname { - background-color: transparent; -} - -code.xref, a code { - background-color: transparent; - font-weight: bold; -} - -h1 code, h2 code, h3 code, h4 code, h5 code, h6 code { - background-color: transparent; -} - -.viewcode-link { - float: right; -} - -.viewcode-back { - float: right; - font-family: sans-serif; -} - -div.viewcode-block:target { - margin: -1px -10px; - padding: 0 10px; -} - -/* -- math display ---------------------------------------------------------- */ - -img.math { - vertical-align: middle; -} - -div.body div.math p { - text-align: center; -} - -span.eqno { - float: right; -} - -/* -- printout stylesheet --------------------------------------------------- */ - -@media print { - div.document, - div.documentwrapper, - div.bodywrapper { - margin: 0 !important; - width: 100%; - } - - div.sphinxsidebar, - div.related, - div.footer, - #top-link { - display: none; - } -} \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_static/comment-bright.png b/PyBioMed/doc/_build/html/_static/comment-bright.png deleted file mode 100644 index 551517b..0000000 Binary files a/PyBioMed/doc/_build/html/_static/comment-bright.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_static/comment-close.png b/PyBioMed/doc/_build/html/_static/comment-close.png deleted file mode 100644 index 09b54be..0000000 Binary files a/PyBioMed/doc/_build/html/_static/comment-close.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_static/comment.png b/PyBioMed/doc/_build/html/_static/comment.png deleted file mode 100644 index 92feb52..0000000 Binary files a/PyBioMed/doc/_build/html/_static/comment.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_static/contents.png b/PyBioMed/doc/_build/html/_static/contents.png deleted file mode 100644 index 7fb8215..0000000 Binary files a/PyBioMed/doc/_build/html/_static/contents.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_static/doctools.js b/PyBioMed/doc/_build/html/_static/doctools.js deleted file mode 100644 index 8163495..0000000 --- a/PyBioMed/doc/_build/html/_static/doctools.js +++ /dev/null @@ -1,287 +0,0 @@ -/* - * doctools.js - * ~~~~~~~~~~~ - * - * Sphinx JavaScript utilities for all documentation. - * - * :copyright: Copyright 2007-2016 by the Sphinx team, see AUTHORS. - * :license: BSD, see LICENSE for details. - * - */ - -/** - * select a different prefix for underscore - */ -$u = _.noConflict(); - -/** - * make the code below compatible with browsers without - * an installed firebug like debugger -if (!window.console || !console.firebug) { - var names = ["log", "debug", "info", "warn", "error", "assert", "dir", - "dirxml", "group", "groupEnd", "time", "timeEnd", "count", "trace", - "profile", "profileEnd"]; - window.console = {}; - for (var i = 0; i < names.length; ++i) - window.console[names[i]] = function() {}; -} - */ - -/** - * small helper function to urldecode strings - */ -jQuery.urldecode = function(x) { - return decodeURIComponent(x).replace(/\+/g, ' '); -}; - -/** - * small helper function to urlencode strings - */ -jQuery.urlencode = encodeURIComponent; - -/** - * This function returns the parsed url parameters of the - * current request. Multiple values per key are supported, - * it will always return arrays of strings for the value parts. - */ -jQuery.getQueryParameters = function(s) { - if (typeof s == 'undefined') - s = document.location.search; - var parts = s.substr(s.indexOf('?') + 1).split('&'); - var result = {}; - for (var i = 0; i < parts.length; i++) { - var tmp = parts[i].split('=', 2); - var key = jQuery.urldecode(tmp[0]); - var value = jQuery.urldecode(tmp[1]); - if (key in result) - result[key].push(value); - else - result[key] = [value]; - } - return result; -}; - -/** - * highlight a given string on a jquery object by wrapping it in - * span elements with the given class name. - */ -jQuery.fn.highlightText = function(text, className) { - function highlight(node) { - if (node.nodeType == 3) { - var val = node.nodeValue; - var pos = val.toLowerCase().indexOf(text); - if (pos >= 0 && !jQuery(node.parentNode).hasClass(className)) { - var span = document.createElement("span"); - span.className = className; - span.appendChild(document.createTextNode(val.substr(pos, text.length))); - node.parentNode.insertBefore(span, node.parentNode.insertBefore( - document.createTextNode(val.substr(pos + text.length)), - node.nextSibling)); - node.nodeValue = val.substr(0, pos); - } - } - else if (!jQuery(node).is("button, select, textarea")) { - jQuery.each(node.childNodes, function() { - highlight(this); - }); - } - } - return this.each(function() { - highlight(this); - }); -}; - -/* - * backward compatibility for jQuery.browser - * This will be supported until firefox bug is fixed. - */ -if (!jQuery.browser) { - jQuery.uaMatch = function(ua) { - ua = ua.toLowerCase(); - - var match = /(chrome)[ \/]([\w.]+)/.exec(ua) || - /(webkit)[ \/]([\w.]+)/.exec(ua) || - /(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) || - /(msie) ([\w.]+)/.exec(ua) || - ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || - []; - - return { - browser: match[ 1 ] || "", - version: match[ 2 ] || "0" - }; - }; - jQuery.browser = {}; - jQuery.browser[jQuery.uaMatch(navigator.userAgent).browser] = true; -} - -/** - * Small JavaScript module for the documentation. - */ -var Documentation = { - - init : function() { - this.fixFirefoxAnchorBug(); - this.highlightSearchWords(); - this.initIndexTable(); - - }, - - /** - * i18n support - */ - TRANSLATIONS : {}, - PLURAL_EXPR : function(n) { return n == 1 ? 0 : 1; }, - LOCALE : 'unknown', - - // gettext and ngettext don't access this so that the functions - // can safely bound to a different name (_ = Documentation.gettext) - gettext : function(string) { - var translated = Documentation.TRANSLATIONS[string]; - if (typeof translated == 'undefined') - return string; - return (typeof translated == 'string') ? translated : translated[0]; - }, - - ngettext : function(singular, plural, n) { - var translated = Documentation.TRANSLATIONS[singular]; - if (typeof translated == 'undefined') - return (n == 1) ? singular : plural; - return translated[Documentation.PLURALEXPR(n)]; - }, - - addTranslations : function(catalog) { - for (var key in catalog.messages) - this.TRANSLATIONS[key] = catalog.messages[key]; - this.PLURAL_EXPR = new Function('n', 'return +(' + catalog.plural_expr + ')'); - this.LOCALE = catalog.locale; - }, - - /** - * add context elements like header anchor links - */ - addContextElements : function() { - $('div[id] > :header:first').each(function() { - $('\u00B6'). - attr('href', '#' + this.id). - attr('title', _('Permalink to this headline')). - appendTo(this); - }); - $('dt[id]').each(function() { - $('\u00B6'). - attr('href', '#' + this.id). - attr('title', _('Permalink to this definition')). - appendTo(this); - }); - }, - - /** - * workaround a firefox stupidity - * see: https://bugzilla.mozilla.org/show_bug.cgi?id=645075 - */ - fixFirefoxAnchorBug : function() { - if (document.location.hash) - window.setTimeout(function() { - document.location.href += ''; - }, 10); - }, - - /** - * highlight the search words provided in the url in the text - */ - highlightSearchWords : function() { - var params = $.getQueryParameters(); - var terms = (params.highlight) ? params.highlight[0].split(/\s+/) : []; - if (terms.length) { - var body = $('div.body'); - if (!body.length) { - body = $('body'); - } - window.setTimeout(function() { - $.each(terms, function() { - body.highlightText(this.toLowerCase(), 'highlighted'); - }); - }, 10); - $('') - .appendTo($('#searchbox')); - } - }, - - /** - * init the domain index toggle buttons - */ - initIndexTable : function() { - var togglers = $('img.toggler').click(function() { - var src = $(this).attr('src'); - var idnum = $(this).attr('id').substr(7); - $('tr.cg-' + idnum).toggle(); - if (src.substr(-9) == 'minus.png') - $(this).attr('src', src.substr(0, src.length-9) + 'plus.png'); - else - $(this).attr('src', src.substr(0, src.length-8) + 'minus.png'); - }).css('display', ''); - if (DOCUMENTATION_OPTIONS.COLLAPSE_INDEX) { - togglers.click(); - } - }, - - /** - * helper function to hide the search marks again - */ - hideSearchWords : function() { - $('#searchbox .highlight-link').fadeOut(300); - $('span.highlighted').removeClass('highlighted'); - }, - - /** - * make the url absolute - */ - makeURL : function(relativeURL) { - return DOCUMENTATION_OPTIONS.URL_ROOT + '/' + relativeURL; - }, - - /** - * get the current relative url - */ - getCurrentURL : function() { - var path = document.location.pathname; - var parts = path.split(/\//); - $.each(DOCUMENTATION_OPTIONS.URL_ROOT.split(/\//), function() { - if (this == '..') - parts.pop(); - }); - var url = parts.join('/'); - return path.substring(url.lastIndexOf('/') + 1, path.length - 1); - }, - - initOnKeyListeners: function() { - $(document).keyup(function(event) { - var activeElementType = document.activeElement.tagName; - // don't navigate when in search box or textarea - if (activeElementType !== 'TEXTAREA' && activeElementType !== 'INPUT' && activeElementType !== 'SELECT') { - switch (event.keyCode) { - case 37: // left - var prevHref = $('link[rel="prev"]').prop('href'); - if (prevHref) { - window.location.href = prevHref; - return false; - } - case 39: // right - var nextHref = $('link[rel="next"]').prop('href'); - if (nextHref) { - window.location.href = nextHref; - return false; - } - } - } - }); - } -}; - -// quick alias for translations -_ = Documentation.gettext; - -$(document).ready(function() { - Documentation.init(); -}); \ No newline at end of file diff --git a/PyBioMed/doc/_build/html/_static/down-pressed.png b/PyBioMed/doc/_build/html/_static/down-pressed.png deleted file mode 100644 index 7c30d00..0000000 Binary files a/PyBioMed/doc/_build/html/_static/down-pressed.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_static/down.png b/PyBioMed/doc/_build/html/_static/down.png deleted file mode 100644 index f48098a..0000000 Binary files a/PyBioMed/doc/_build/html/_static/down.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_static/file.png b/PyBioMed/doc/_build/html/_static/file.png deleted file mode 100644 index 254c60b..0000000 Binary files a/PyBioMed/doc/_build/html/_static/file.png and /dev/null differ diff --git a/PyBioMed/doc/_build/html/_static/jquery-1.11.1.js b/PyBioMed/doc/_build/html/_static/jquery-1.11.1.js deleted file mode 100644 index d4b67f7..0000000 --- a/PyBioMed/doc/_build/html/_static/jquery-1.11.1.js +++ /dev/null @@ -1,10308 +0,0 @@ -/*! - * jQuery JavaScript Library v1.11.1 - * http://jquery.com/ - * - * Includes Sizzle.js - * http://sizzlejs.com/ - * - * Copyright 2005, 2014 jQuery Foundation, Inc. and other contributors - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2014-05-01T17:42Z - */ - -(function( global, factory ) { - - if ( typeof module === "object" && typeof module.exports === "object" ) { - // For CommonJS and CommonJS-like environments where a proper window is present, - // execute the factory and get jQuery - // For environments that do not inherently posses a window with a document - // (such as Node.js), expose a jQuery-making factory as module.exports - // This accentuates the need for the creation of a real window - // e.g. var jQuery = require("jquery")(window); - // See ticket #14549 for more info - module.exports = global.document ? - factory( global, true ) : - function( w ) { - if ( !w.document ) { - throw new Error( "jQuery requires a window with a document" ); - } - return factory( w ); - }; - } else { - factory( global ); - } - -// Pass this if window is not defined yet -}(typeof window !== "undefined" ? window : this, function( window, noGlobal ) { - -// Can't do this because several apps including ASP.NET trace -// the stack via arguments.caller.callee and Firefox dies if -// you try to trace through "use strict" call chains. (#13335) -// Support: Firefox 18+ -// - -var deletedIds = []; - -var slice = deletedIds.slice; - -var concat = deletedIds.concat; - -var push = deletedIds.push; - -var indexOf = deletedIds.indexOf; - -var class2type = {}; - -var toString = class2type.toString; - -var hasOwn = class2type.hasOwnProperty; - -var support = {}; - - - -var - version = "1.11.1", - - // Define a local copy of jQuery - jQuery = function( selector, context ) { - // The jQuery object is actually just the init constructor 'enhanced' - // Need init if jQuery is called (just allow error to be thrown if not included) - return new jQuery.fn.init( selector, context ); - }, - - // Support: Android<4.1, IE<9 - // Make sure we trim BOM and NBSP - rtrim = /^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g, - - // Matches dashed string for camelizing - rmsPrefix = /^-ms-/, - rdashAlpha = /-([\da-z])/gi, - - // Used by jQuery.camelCase as callback to replace() - fcamelCase = function( all, letter ) { - return letter.toUpperCase(); - }; - -jQuery.fn = jQuery.prototype = { - // The current version of jQuery being used - jquery: version, - - constructor: jQuery, - - // Start with an empty selector - selector: "", - - // The default length of a jQuery object is 0 - length: 0, - - toArray: function() { - return slice.call( this ); - }, - - // Get the Nth element in the matched element set OR - // Get the whole matched element set as a clean array - get: function( num ) { - return num != null ? - - // Return just the one element from the set - ( num < 0 ? this[ num + this.length ] : this[ num ] ) : - - // Return all the elements in a clean array - slice.call( this ); - }, - - // Take an array of elements and push it onto the stack - // (returning the new matched element set) - pushStack: function( elems ) { - - // Build a new jQuery matched element set - var ret = jQuery.merge( this.constructor(), elems ); - - // Add the old object onto the stack (as a reference) - ret.prevObject = this; - ret.context = this.context; - - // Return the newly-formed element set - return ret; - }, - - // Execute a callback for every element in the matched set. - // (You can seed the arguments with an array of args, but this is - // only used internally.) - each: function( callback, args ) { - return jQuery.each( this, callback, args ); - }, - - map: function( callback ) { - return this.pushStack( jQuery.map(this, function( elem, i ) { - return callback.call( elem, i, elem ); - })); - }, - - slice: function() { - return this.pushStack( slice.apply( this, arguments ) ); - }, - - first: function() { - return this.eq( 0 ); - }, - - last: function() { - return this.eq( -1 ); - }, - - eq: function( i ) { - var len = this.length, - j = +i + ( i < 0 ? len : 0 ); - return this.pushStack( j >= 0 && j < len ? [ this[j] ] : [] ); - }, - - end: function() { - return this.prevObject || this.constructor(null); - }, - - // For internal use only. - // Behaves like an Array's method, not like a jQuery method. - push: push, - sort: deletedIds.sort, - splice: deletedIds.splice -}; - -jQuery.extend = jQuery.fn.extend = function() { - var src, copyIsArray, copy, name, options, clone, - target = arguments[0] || {}, - i = 1, - length = arguments.length, - deep = false; - - // Handle a deep copy situation - if ( typeof target === "boolean" ) { - deep = target; - - // skip the boolean and the target - target = arguments[ i ] || {}; - i++; - } - - // Handle case when target is a string or something (possible in deep copy) - if ( typeof target !== "object" && !jQuery.isFunction(target) ) { - target = {}; - } - - // extend jQuery itself if only one argument is passed - if ( i === length ) { - target = this; - i--; - } - - for ( ; i < length; i++ ) { - // Only deal with non-null/undefined values - if ( (options = arguments[ i ]) != null ) { - // Extend the base object - for ( name in options ) { - src = target[ name ]; - copy = options[ name ]; - - // Prevent never-ending loop - if ( target === copy ) { - continue; - } - - // Recurse if we're merging plain objects or arrays - if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) { - if ( copyIsArray ) { - copyIsArray = false; - clone = src && jQuery.isArray(src) ? src : []; - - } else { - clone = src && jQuery.isPlainObject(src) ? src : {}; - } - - // Never move original objects, clone them - target[ name ] = jQuery.extend( deep, clone, copy ); - - // Don't bring in undefined values - } else if ( copy !== undefined ) { - target[ name ] = copy; - } - } - } - } - - // Return the modified object - return target; -}; - -jQuery.extend({ - // Unique for each copy of jQuery on the page - expando: "jQuery" + ( version + Math.random() ).replace( /\D/g, "" ), - - // Assume jQuery is ready without the ready module - isReady: true, - - error: function( msg ) { - throw new Error( msg ); - }, - - noop: function() {}, - - // See test/unit/core.js for details concerning isFunction. - // Since version 1.3, DOM methods and functions like alert - // aren't supported. They return false on IE (#2968). - isFunction: function( obj ) { - return jQuery.type(obj) === "function"; - }, - - isArray: Array.isArray || function( obj ) { - return jQuery.type(obj) === "array"; - }, - - isWindow: function( obj ) { - /* jshint eqeqeq: false */ - return obj != null && obj == obj.window; - }, - - isNumeric: function( obj ) { - // parseFloat NaNs numeric-cast false positives (null|true|false|"") - // ...but misinterprets leading-number strings, particularly hex literals ("0x...") - // subtraction forces infinities to NaN - return !jQuery.isArray( obj ) && obj - parseFloat( obj ) >= 0; - }, - - isEmptyObject: function( obj ) { - var name; - for ( name in obj ) { - return false; - } - return true; - }, - - isPlainObject: function( obj ) { - var key; - - // Must be an Object. - // Because of IE, we also have to check the presence of the constructor property. - // Make sure that DOM nodes and window objects don't pass through, as well - if ( !obj || jQuery.type(obj) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) { - return false; - } - - try { - // Not own constructor property must be Object - if ( obj.constructor && - !hasOwn.call(obj, "constructor") && - !hasOwn.call(obj.constructor.prototype, "isPrototypeOf") ) { - return false; - } - } catch ( e ) { - // IE8,9 Will throw exceptions on certain host objects #9897 - return false; - } - - // Support: IE<9 - // Handle iteration over inherited properties before own properties. - if ( support.ownLast ) { - for ( key in obj ) { - return hasOwn.call( obj, key ); - } - } - - // Own properties are enumerated firstly, so to speed up, - // if last one is own, then all properties are own. - for ( key in obj ) {} - - return key === undefined || hasOwn.call( obj, key ); - }, - - type: function( obj ) { - if ( obj == null ) { - return obj + ""; - } - return typeof obj === "object" || typeof obj === "function" ? - class2type[ toString.call(obj) ] || "object" : - typeof obj; - }, - - // Evaluates a script in a global context - // Workarounds based on findings by Jim Driscoll - // http://weblogs.java.net/blog/driscoll/archive/2009/09/08/eval-javascript-global-context - globalEval: function( data ) { - if ( data && jQuery.trim( data ) ) { - // We use execScript on Internet Explorer - // We use an anonymous function so that context is window - // rather than jQuery in Firefox - ( window.execScript || function( data ) { - window[ "eval" ].call( window, data ); - } )( data ); - } - }, - - // Convert dashed to camelCase; used by the css and data modules - // Microsoft forgot to hump their vendor prefix (#9572) - camelCase: function( string ) { - return string.replace( rmsPrefix, "ms-" ).replace( rdashAlpha, fcamelCase ); - }, - - nodeName: function( elem, name ) { - return elem.nodeName && elem.nodeName.toLowerCase() === name.toLowerCase(); - }, - - // args is for internal usage only - each: function( obj, callback, args ) { - var value, - i = 0, - length = obj.length, - isArray = isArraylike( obj ); - - if ( args ) { - if ( isArray ) { - for ( ; i < length; i++ ) { - value = callback.apply( obj[ i ], args ); - - if ( value === false ) { - break; - } - } - } else { - for ( i in obj ) { - value = callback.apply( obj[ i ], args ); - - if ( value === false ) { - break; - } - } - } - - // A special, fast, case for the most common use of each - } else { - if ( isArray ) { - for ( ; i < length; i++ ) { - value = callback.call( obj[ i ], i, obj[ i ] ); - - if ( value === false ) { - break; - } - } - } else { - for ( i in obj ) { - value = callback.call( obj[ i ], i, obj[ i ] ); - - if ( value === false ) { - break; - } - } - } - } - - return obj; - }, - - // Support: Android<4.1, IE<9 - trim: function( text ) { - return text == null ? - "" : - ( text + "" ).replace( rtrim, "" ); - }, - - // results is for internal usage only - makeArray: function( arr, results ) { - var ret = results || []; - - if ( arr != null ) { - if ( isArraylike( Object(arr) ) ) { - jQuery.merge( ret, - typeof arr === "string" ? - [ arr ] : arr - ); - } else { - push.call( ret, arr ); - } - } - - return ret; - }, - - inArray: function( elem, arr, i ) { - var len; - - if ( arr ) { - if ( indexOf ) { - return indexOf.call( arr, elem, i ); - } - - len = arr.length; - i = i ? i < 0 ? Math.max( 0, len + i ) : i : 0; - - for ( ; i < len; i++ ) { - // Skip accessing in sparse arrays - if ( i in arr && arr[ i ] === elem ) { - return i; - } - } - } - - return -1; - }, - - merge: function( first, second ) { - var len = +second.length, - j = 0, - i = first.length; - - while ( j < len ) { - first[ i++ ] = second[ j++ ]; - } - - // Support: IE<9 - // Workaround casting of .length to NaN on otherwise arraylike objects (e.g., NodeLists) - if ( len !== len ) { - while ( second[j] !== undefined ) { - first[ i++ ] = second[ j++ ]; - } - } - - first.length = i; - - return first; - }, - - grep: function( elems, callback, invert ) { - var callbackInverse, - matches = [], - i = 0, - length = elems.length, - callbackExpect = !invert; - - // Go through the array, only saving the items - // that pass the validator function - for ( ; i < length; i++ ) { - callbackInverse = !callback( elems[ i ], i ); - if ( callbackInverse !== callbackExpect ) { - matches.push( elems[ i ] ); - } - } - - return matches; - }, - - // arg is for internal usage only - map: function( elems, callback, arg ) { - var value, - i = 0, - length = elems.length, - isArray = isArraylike( elems ), - ret = []; - - // Go through the array, translating each of the items to their new values - if ( isArray ) { - for ( ; i < length; i++ ) { - value = callback( elems[ i ], i, arg ); - - if ( value != null ) { - ret.push( value ); - } - } - - // Go through every key on the object, - } else { - for ( i in elems ) { - value = callback( elems[ i ], i, arg ); - - if ( value != null ) { - ret.push( value ); - } - } - } - - // Flatten any nested arrays - return concat.apply( [], ret ); - }, - - // A global GUID counter for objects - guid: 1, - - // Bind a function to a context, optionally partially applying any - // arguments. - proxy: function( fn, context ) { - var args, proxy, tmp; - - if ( typeof context === "string" ) { - tmp = fn[ context ]; - context = fn; - fn = tmp; - } - - // Quick check to determine if target is callable, in the spec - // this throws a TypeError, but we will just return undefined. - if ( !jQuery.isFunction( fn ) ) { - return undefined; - } - - // Simulated bind - args = slice.call( arguments, 2 ); - proxy = function() { - return fn.apply( context || this, args.concat( slice.call( arguments ) ) ); - }; - - // Set the guid of unique handler to the same of original handler, so it can be removed - proxy.guid = fn.guid = fn.guid || jQuery.guid++; - - return proxy; - }, - - now: function() { - return +( new Date() ); - }, - - // jQuery.support is not used in Core but other projects attach their - // properties to it so it needs to exist. - support: support -}); - -// Populate the class2type map -jQuery.each("Boolean Number String Function Array Date RegExp Object Error".split(" "), function(i, name) { - class2type[ "[object " + name + "]" ] = name.toLowerCase(); -}); - -function isArraylike( obj ) { - var length = obj.length, - type = jQuery.type( obj ); - - if ( type === "function" || jQuery.isWindow( obj ) ) { - return false; - } - - if ( obj.nodeType === 1 && length ) { - return true; - } - - return type === "array" || length === 0 || - typeof length === "number" && length > 0 && ( length - 1 ) in obj; -} -var Sizzle = -/*! - * Sizzle CSS Selector Engine v1.10.19 - * http://sizzlejs.com/ - * - * Copyright 2013 jQuery Foundation, Inc. and other contributors - * Released under the MIT license - * http://jquery.org/license - * - * Date: 2014-04-18 - */ -(function( window ) { - -var i, - support, - Expr, - getText, - isXML, - tokenize, - compile, - select, - outermostContext, - sortInput, - hasDuplicate, - - // Local document vars - setDocument, - document, - docElem, - documentIsHTML, - rbuggyQSA, - rbuggyMatches, - matches, - contains, - - // Instance-specific data - expando = "sizzle" + -(new Date()), - preferredDoc = window.document, - dirruns = 0, - done = 0, - classCache = createCache(), - tokenCache = createCache(), - compilerCache = createCache(), - sortOrder = function( a, b ) { - if ( a === b ) { - hasDuplicate = true; - } - return 0; - }, - - // General-purpose constants - strundefined = typeof undefined, - MAX_NEGATIVE = 1 << 31, - - // Instance methods - hasOwn = ({}).hasOwnProperty, - arr = [], - pop = arr.pop, - push_native = arr.push, - push = arr.push, - slice = arr.slice, - // Use a stripped-down indexOf if we can't use a native one - indexOf = arr.indexOf || function( elem ) { - var i = 0, - len = this.length; - for ( ; i < len; i++ ) { - if ( this[i] === elem ) { - return i; - } - } - return -1; - }, - - booleans = "checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped", - - // Regular expressions - - // Whitespace characters http://www.w3.org/TR/css3-selectors/#whitespace - whitespace = "[\\x20\\t\\r\\n\\f]", - // http://www.w3.org/TR/css3-syntax/#characters - characterEncoding = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+", - - // Loosely modeled on CSS identifier characters - // An unquoted value should be a CSS identifier http://www.w3.org/TR/css3-selectors/#attribute-selectors - // Proper syntax: http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier - identifier = characterEncoding.replace( "w", "w#" ), - - // Attribute selectors: http://www.w3.org/TR/selectors/#attribute-selectors - attributes = "\\[" + whitespace + "*(" + characterEncoding + ")(?:" + whitespace + - // Operator (capture 2) - "*([*^$|!~]?=)" + whitespace + - // "Attribute values must be CSS identifiers [capture 5] or strings [capture 3 or capture 4]" - "*(?:'((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\"|(" + identifier + "))|)" + whitespace + - "*\\]", - - pseudos = ":(" + characterEncoding + ")(?:\\((" + - // To reduce the number of selectors needing tokenize in the preFilter, prefer arguments: - // 1. quoted (capture 3; capture 4 or capture 5) - "('((?:\\\\.|[^\\\\'])*)'|\"((?:\\\\.|[^\\\\\"])*)\")|" + - // 2. simple (capture 6) - "((?:\\\\.|[^\\\\()[\\]]|" + attributes + ")*)|" + - // 3. anything else (capture 2) - ".*" + - ")\\)|)", - - // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter - rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ), - - rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ), - rcombinators = new RegExp( "^" + whitespace + "*([>+~]|" + whitespace + ")" + whitespace + "*" ), - - rattributeQuotes = new RegExp( "=" + whitespace + "*([^\\]'\"]*?)" + whitespace + "*\\]", "g" ), - - rpseudo = new RegExp( pseudos ), - ridentifier = new RegExp( "^" + identifier + "$" ), - - matchExpr = { - "ID": new RegExp( "^#(" + characterEncoding + ")" ), - "CLASS": new RegExp( "^\\.(" + characterEncoding + ")" ), - "TAG": new RegExp( "^(" + characterEncoding.replace( "w", "w*" ) + ")" ), - "ATTR": new RegExp( "^" + attributes ), - "PSEUDO": new RegExp( "^" + pseudos ), - "CHILD": new RegExp( "^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\(" + whitespace + - "*(even|odd|(([+-]|)(\\d*)n|)" + whitespace + "*(?:([+-]|)" + whitespace + - "*(\\d+)|))" + whitespace + "*\\)|)", "i" ), - "bool": new RegExp( "^(?:" + booleans + ")$", "i" ), - // For use in libraries implementing .is() - // We use this for POS matching in `select` - "needsContext": new RegExp( "^" + whitespace + "*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\(" + - whitespace + "*((?:-\\d)?\\d*)" + whitespace + "*\\)|)(?=[^-]|$)", "i" ) - }, - - rinputs = /^(?:input|select|textarea|button)$/i, - rheader = /^h\d$/i, - - rnative = /^[^{]+\{\s*\[native \w/, - - // Easily-parseable/retrievable ID or TAG or CLASS selectors - rquickExpr = /^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/, - - rsibling = /[+~]/, - rescape = /'|\\/g, - - // CSS escapes http://www.w3.org/TR/CSS21/syndata.html#escaped-characters - runescape = new RegExp( "\\\\([\\da-f]{1,6}" + whitespace + "?|(" + whitespace + ")|.)", "ig" ), - funescape = function( _, escaped, escapedWhitespace ) { - var high = "0x" + escaped - 0x10000; - // NaN means non-codepoint - // Support: Firefox<24 - // Workaround erroneous numeric interpretation of +"0x" - return high !== high || escapedWhitespace ? - escaped : - high < 0 ? - // BMP codepoint - String.fromCharCode( high + 0x10000 ) : - // Supplemental Plane codepoint (surrogate pair) - String.fromCharCode( high >> 10 | 0xD800, high & 0x3FF | 0xDC00 ); - }; - -// Optimize for push.apply( _, NodeList ) -try { - push.apply( - (arr = slice.call( preferredDoc.childNodes )), - preferredDoc.childNodes - ); - // Support: Android<4.0 - // Detect silently failing push.apply - arr[ preferredDoc.childNodes.length ].nodeType; -} catch ( e ) { - push = { apply: arr.length ? - - // Leverage slice if possible - function( target, els ) { - push_native.apply( target, slice.call(els) ); - } : - - // Support: IE<9 - // Otherwise append directly - function( target, els ) { - var j = target.length, - i = 0; - // Can't trust NodeList.length - while ( (target[j++] = els[i++]) ) {} - target.length = j - 1; - } - }; -} - -function Sizzle( selector, context, results, seed ) { - var match, elem, m, nodeType, - // QSA vars - i, groups, old, nid, newContext, newSelector; - - if ( ( context ? context.ownerDocument || context : preferredDoc ) !== document ) { - setDocument( context ); - } - - context = context || document; - results = results || []; - - if ( !selector || typeof selector !== "string" ) { - return results; - } - - if ( (nodeType = context.nodeType) !== 1 && nodeType !== 9 ) { - return []; - } - - if ( documentIsHTML && !seed ) { - - // Shortcuts - if ( (match = rquickExpr.exec( selector )) ) { - // Speed-up: Sizzle("#ID") - if ( (m = match[1]) ) { - if ( nodeType === 9 ) { - elem = context.getElementById( m ); - // Check parentNode to catch when Blackberry 4.6 returns - // nodes that are no longer in the document (jQuery #6963) - if ( elem && elem.parentNode ) { - // Handle the case where IE, Opera, and Webkit return items - // by name instead of ID - if ( elem.id === m ) { - results.push( elem ); - return results; - } - } else { - return results; - } - } else { - // Context is not a document - if ( context.ownerDocument && (elem = context.ownerDocument.getElementById( m )) && - contains( context, elem ) && elem.id === m ) { - results.push( elem ); - return results; - } - } - - // Speed-up: Sizzle("TAG") - } else if ( match[2] ) { - push.apply( results, context.getElementsByTagName( selector ) ); - return results; - - // Speed-up: Sizzle(".CLASS") - } else if ( (m = match[3]) && support.getElementsByClassName && context.getElementsByClassName ) { - push.apply( results, context.getElementsByClassName( m ) ); - return results; - } - } - - // QSA path - if ( support.qsa && (!rbuggyQSA || !rbuggyQSA.test( selector )) ) { - nid = old = expando; - newContext = context; - newSelector = nodeType === 9 && selector; - - // qSA works strangely on Element-rooted queries - // We can work around this by specifying an extra ID on the root - // and working up from there (Thanks to Andrew Dupont for the technique) - // IE 8 doesn't work on object elements - if ( nodeType === 1 && context.nodeName.toLowerCase() !== "object" ) { - groups = tokenize( selector ); - - if ( (old = context.getAttribute("id")) ) { - nid = old.replace( rescape, "\\$&" ); - } else { - context.setAttribute( "id", nid ); - } - nid = "[id='" + nid + "'] "; - - i = groups.length; - while ( i-- ) { - groups[i] = nid + toSelector( groups[i] ); - } - newContext = rsibling.test( selector ) && testContext( context.parentNode ) || context; - newSelector = groups.join(","); - } - - if ( newSelector ) { - try { - push.apply( results, - newContext.querySelectorAll( newSelector ) - ); - return results; - } catch(qsaError) { - } finally { - if ( !old ) { - context.removeAttribute("id"); - } - } - } - } - } - - // All others - return select( selector.replace( rtrim, "$1" ), context, results, seed ); -} - -/** - * Create key-value caches of limited size - * @returns {Function(string, Object)} Returns the Object data after storing it on itself with - * property name the (space-suffixed) string and (if the cache is larger than Expr.cacheLength) - * deleting the oldest entry - */ -function createCache() { - var keys = []; - - function cache( key, value ) { - // Use (key + " ") to avoid collision with native prototype properties (see Issue #157) - if ( keys.push( key + " " ) > Expr.cacheLength ) { - // Only keep the most recent entries - delete cache[ keys.shift() ]; - } - return (cache[ key + " " ] = value); - } - return cache; -} - -/** - * Mark a function for special use by Sizzle - * @param {Function} fn The function to mark - */ -function markFunction( fn ) { - fn[ expando ] = true; - return fn; -} - -/** - * Support testing using an element - * @param {Function} fn Passed the created div and expects a boolean result - */ -function assert( fn ) { - var div = document.createElement("div"); - - try { - return !!fn( div ); - } catch (e) { - return false; - } finally { - // Remove from its parent by default - if ( div.parentNode ) { - div.parentNode.removeChild( div ); - } - // release memory in IE - div = null; - } -} - -/** - * Adds the same handler for all of the specified attrs - * @param {String} attrs Pipe-separated list of attributes - * @param {Function} handler The method that will be applied - */ -function addHandle( attrs, handler ) { - var arr = attrs.split("|"), - i = attrs.length; - - while ( i-- ) { - Expr.attrHandle[ arr[i] ] = handler; - } -} - -/** - * Checks document order of two siblings - * @param {Element} a - * @param {Element} b - * @returns {Number} Returns less than 0 if a precedes b, greater than 0 if a follows b - */ -function siblingCheck( a, b ) { - var cur = b && a, - diff = cur && a.nodeType === 1 && b.nodeType === 1 && - ( ~b.sourceIndex || MAX_NEGATIVE ) - - ( ~a.sourceIndex || MAX_NEGATIVE ); - - // Use IE sourceIndex if available on both nodes - if ( diff ) { - return diff; - } - - // Check if b follows a - if ( cur ) { - while ( (cur = cur.nextSibling) ) { - if ( cur === b ) { - return -1; - } - } - } - - return a ? 1 : -1; -} - -/** - * Returns a function to use in pseudos for input types - * @param {String} type - */ -function createInputPseudo( type ) { - return function( elem ) { - var name = elem.nodeName.toLowerCase(); - return name === "input" && elem.type === type; - }; -} - -/** - * Returns a function to use in pseudos for buttons - * @param {String} type - */ -function createButtonPseudo( type ) { - return function( elem ) { - var name = elem.nodeName.toLowerCase(); - return (name === "input" || name === "button") && elem.type === type; - }; -} - -/** - * Returns a function to use in pseudos for positionals - * @param {Function} fn - */ -function createPositionalPseudo( fn ) { - return markFunction(function( argument ) { - argument = +argument; - return markFunction(function( seed, matches ) { - var j, - matchIndexes = fn( [], seed.length, argument ), - i = matchIndexes.length; - - // Match elements found at the specified indexes - while ( i-- ) { - if ( seed[ (j = matchIndexes[i]) ] ) { - seed[j] = !(matches[j] = seed[j]); - } - } - }); - }); -} - -/** - * Checks a node for validity as a Sizzle context - * @param {Element|Object=} context - * @returns {Element|Object|Boolean} The input node if acceptable, otherwise a falsy value - */ -function testContext( context ) { - return context && typeof context.getElementsByTagName !== strundefined && context; -} - -// Expose support vars for convenience -support = Sizzle.support = {}; - -/** - * Detects XML nodes - * @param {Element|Object} elem An element or a document - * @returns {Boolean} True iff elem is a non-HTML XML node - */ -isXML = Sizzle.isXML = function( elem ) { - // documentElement is verified for cases where it doesn't yet exist - // (such as loading iframes in IE - #4833) - var documentElement = elem && (elem.ownerDocument || elem).documentElement; - return documentElement ? documentElement.nodeName !== "HTML" : false; -}; - -/** - * Sets document-related variables once based on the current document - * @param {Element|Object} [doc] An element or document object to use to set the document - * @returns {Object} Returns the current document - */ -setDocument = Sizzle.setDocument = function( node ) { - var hasCompare, - doc = node ? node.ownerDocument || node : preferredDoc, - parent = doc.defaultView; - - // If no document and documentElement is available, return - if ( doc === document || doc.nodeType !== 9 || !doc.documentElement ) { - return document; - } - - // Set our document - document = doc; - docElem = doc.documentElement; - - // Support tests - documentIsHTML = !isXML( doc ); - - // Support: IE>8 - // If iframe document is assigned to "document" variable and if iframe has been reloaded, - // IE will throw "permission denied" error when accessing "document" variable, see jQuery #13936 - // IE6-8 do not support the defaultView property so parent will be undefined - if ( parent && parent !== parent.top ) { - // IE11 does not have attachEvent, so all must suffer - if ( parent.addEventListener ) { - parent.addEventListener( "unload", function() { - setDocument(); - }, false ); - } else if ( parent.attachEvent ) { - parent.attachEvent( "onunload", function() { - setDocument(); - }); - } - } - - /* Attributes - ---------------------------------------------------------------------- */ - - // Support: IE<8 - // Verify that getAttribute really returns attributes and not properties (excepting IE8 booleans) - support.attributes = assert(function( div ) { - div.className = "i"; - return !div.getAttribute("className"); - }); - - /* getElement(s)By* - ---------------------------------------------------------------------- */ - - // Check if getElementsByTagName("*") returns only elements - support.getElementsByTagName = assert(function( div ) { - div.appendChild( doc.createComment("") ); - return !div.getElementsByTagName("*").length; - }); - - // Check if getElementsByClassName can be trusted - support.getElementsByClassName = rnative.test( doc.getElementsByClassName ) && assert(function( div ) { - div.innerHTML = "
"; - - // Support: Safari<4 - // Catch class over-caching - div.firstChild.className = "i"; - // Support: Opera<10 - // Catch gEBCN failure to find non-leading classes - return div.getElementsByClassName("i").length === 2; - }); - - // Support: IE<10 - // Check if getElementById returns elements by name - // The broken getElementById methods don't pick up programatically-set names, - // so use a roundabout getElementsByName test - support.getById = assert(function( div ) { - docElem.appendChild( div ).id = expando; - return !doc.getElementsByName || !doc.getElementsByName( expando ).length; - }); - - // ID find and filter - if ( support.getById ) { - Expr.find["ID"] = function( id, context ) { - if ( typeof context.getElementById !== strundefined && documentIsHTML ) { - var m = context.getElementById( id ); - // Check parentNode to catch when Blackberry 4.6 returns - // nodes that are no longer in the document #6963 - return m && m.parentNode ? [ m ] : []; - } - }; - Expr.filter["ID"] = function( id ) { - var attrId = id.replace( runescape, funescape ); - return function( elem ) { - return elem.getAttribute("id") === attrId; - }; - }; - } else { - // Support: IE6/7 - // getElementById is not reliable as a find shortcut - delete Expr.find["ID"]; - - Expr.filter["ID"] = function( id ) { - var attrId = id.replace( runescape, funescape ); - return function( elem ) { - var node = typeof elem.getAttributeNode !== strundefined && elem.getAttributeNode("id"); - return node && node.value === attrId; - }; - }; - } - - // Tag - Expr.find["TAG"] = support.getElementsByTagName ? - function( tag, context ) { - if ( typeof context.getElementsByTagName !== strundefined ) { - return context.getElementsByTagName( tag ); - } - } : - function( tag, context ) { - var elem, - tmp = [], - i = 0, - results = context.getElementsByTagName( tag ); - - // Filter out possible comments - if ( tag === "*" ) { - while ( (elem = results[i++]) ) { - if ( elem.nodeType === 1 ) { - tmp.push( elem ); - } - } - - return tmp; - } - return results; - }; - - // Class - Expr.find["CLASS"] = support.getElementsByClassName && function( className, context ) { - if ( typeof context.getElementsByClassName !== strundefined && documentIsHTML ) { - return context.getElementsByClassName( className ); - } - }; - - /* QSA/matchesSelector - ---------------------------------------------------------------------- */ - - // QSA and matchesSelector support - - // matchesSelector(:active) reports false when true (IE9/Opera 11.5) - rbuggyMatches = []; - - // qSa(:focus) reports false when true (Chrome 21) - // We allow this because of a bug in IE8/9 that throws an error - // whenever `document.activeElement` is accessed on an iframe - // So, we allow :focus to pass through QSA all the time to avoid the IE error - // See http://bugs.jquery.com/ticket/13378 - rbuggyQSA = []; - - if ( (support.qsa = rnative.test( doc.querySelectorAll )) ) { - // Build QSA regex - // Regex strategy adopted from Diego Perini - assert(function( div ) { - // Select is set to empty string on purpose - // This is to test IE's treatment of not explicitly - // setting a boolean content attribute, - // since its presence should be enough - // http://bugs.jquery.com/ticket/12359 - div.innerHTML = ""; - - // Support: IE8, Opera 11-12.16 - // Nothing should be selected when empty strings follow ^= or $= or *= - // The test attribute must be unknown in Opera but "safe" for WinRT - // http://msdn.microsoft.com/en-us/library/ie/hh465388.aspx#attribute_section - if ( div.querySelectorAll("[msallowclip^='']").length ) { - rbuggyQSA.push( "[*^$]=" + whitespace + "*(?:''|\"\")" ); - } - - // Support: IE8 - // Boolean attributes and "value" are not treated correctly - if ( !div.querySelectorAll("[selected]").length ) { - rbuggyQSA.push( "\\[" + whitespace + "*(?:value|" + booleans + ")" ); - } - - // Webkit/Opera - :checked should return selected option elements - // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked - // IE8 throws error here and will not see later tests - if ( !div.querySelectorAll(":checked").length ) { - rbuggyQSA.push(":checked"); - } - }); - - assert(function( div ) { - // Support: Windows 8 Native Apps - // The type and name attributes are restricted during .innerHTML assignment - var input = doc.createElement("input"); - input.setAttribute( "type", "hidden" ); - div.appendChild( input ).setAttribute( "name", "D" ); - - // Support: IE8 - // Enforce case-sensitivity of name attribute - if ( div.querySelectorAll("[name=d]").length ) { - rbuggyQSA.push( "name" + whitespace + "*[*^$|!~]?=" ); - } - - // FF 3.5 - :enabled/:disabled and hidden elements (hidden elements are still enabled) - // IE8 throws error here and will not see later tests - if ( !div.querySelectorAll(":enabled").length ) { - rbuggyQSA.push( ":enabled", ":disabled" ); - } - - // Opera 10-11 does not throw on post-comma invalid pseudos - div.querySelectorAll("*,:x"); - rbuggyQSA.push(",.*:"); - }); - } - - if ( (support.matchesSelector = rnative.test( (matches = docElem.matches || - docElem.webkitMatchesSelector || - docElem.mozMatchesSelector || - docElem.oMatchesSelector || - docElem.msMatchesSelector) )) ) { - - assert(function( div ) { - // Check to see if it's possible to do matchesSelector - // on a disconnected node (IE 9) - support.disconnectedMatch = matches.call( div, "div" ); - - // This should fail with an exception - // Gecko does not error, returns false instead - matches.call( div, "[s!='']:x" ); - rbuggyMatches.push( "!=", pseudos ); - }); - } - - rbuggyQSA = rbuggyQSA.length && new RegExp( rbuggyQSA.join("|") ); - rbuggyMatches = rbuggyMatches.length && new RegExp( rbuggyMatches.join("|") ); - - /* Contains - ---------------------------------------------------------------------- */ - hasCompare = rnative.test( docElem.compareDocumentPosition ); - - // Element contains another - // Purposefully does not implement inclusive descendent - // As in, an element does not contain itself - contains = hasCompare || rnative.test( docElem.contains ) ? - function( a, b ) { - var adown = a.nodeType === 9 ? a.documentElement : a, - bup = b && b.parentNode; - return a === bup || !!( bup && bup.nodeType === 1 && ( - adown.contains ? - adown.contains( bup ) : - a.compareDocumentPosition && a.compareDocumentPosition( bup ) & 16 - )); - } : - function( a, b ) { - if ( b ) { - while ( (b = b.parentNode) ) { - if ( b === a ) { - return true; - } - } - } - return false; - }; - - /* Sorting - ---------------------------------------------------------------------- */ - - // Document order sorting - sortOrder = hasCompare ? - function( a, b ) { - - // Flag for duplicate removal - if ( a === b ) { - hasDuplicate = true; - return 0; - } - - // Sort on method existence if only one input has compareDocumentPosition - var compare = !a.compareDocumentPosition - !b.compareDocumentPosition; - if ( compare ) { - return compare; - } - - // Calculate position if both inputs belong to the same document - compare = ( a.ownerDocument || a ) === ( b.ownerDocument || b ) ? - a.compareDocumentPosition( b ) : - - // Otherwise we know they are disconnected - 1; - - // Disconnected nodes - if ( compare & 1 || - (!support.sortDetached && b.compareDocumentPosition( a ) === compare) ) { - - // Choose the first element that is related to our preferred document - if ( a === doc || a.ownerDocument === preferredDoc && contains(preferredDoc, a) ) { - return -1; - } - if ( b === doc || b.ownerDocument === preferredDoc && contains(preferredDoc, b) ) { - return 1; - } - - // Maintain original order - return sortInput ? - ( indexOf.call( sortInput, a ) - indexOf.call( sortInput, b ) ) : - 0; - } - - return compare & 4 ? -1 : 1; - } : - function( a, b ) { - // Exit early if the nodes are identical - if ( a === b ) { - hasDuplicate = true; - return 0; - } - - var cur, - i = 0, - aup = a.parentNode, - bup = b.parentNode, - ap = [ a ], - bp = [ b ]; - - // Parentless nodes are either documents or disconnected - if ( !aup || !bup ) { - return a === doc ? -1 : - b === doc ? 1 : - aup ? -1 : - bup ? 1 : - sortInput ? - ( indexOf.call( sortInput, a ) - indexOf.call( sortInput, b ) ) : - 0; - - // If the nodes are siblings, we can do a quick check - } else if ( aup === bup ) { - return siblingCheck( a, b ); - } - - // Otherwise we need full lists of their ancestors for comparison - cur = a; - while ( (cur = cur.parentNode) ) { - ap.unshift( cur ); - } - cur = b; - while ( (cur = cur.parentNode) ) { - bp.unshift( cur ); - } - - // Walk down the tree looking for a discrepancy - while ( ap[i] === bp[i] ) { - i++; - } - - return i ? - // Do a sibling check if the nodes have a common ancestor - siblingCheck( ap[i], bp[i] ) : - - // Otherwise nodes in our document sort first - ap[i] === preferredDoc ? -1 : - bp[i] === preferredDoc ? 1 : - 0; - }; - - return doc; -}; - -Sizzle.matches = function( expr, elements ) { - return Sizzle( expr, null, null, elements ); -}; - -Sizzle.matchesSelector = function( elem, expr ) { - // Set document vars if needed - if ( ( elem.ownerDocument || elem ) !== document ) { - setDocument( elem ); - } - - // Make sure that attribute selectors are quoted - expr = expr.replace( rattributeQuotes, "='$1']" ); - - if ( support.matchesSelector && documentIsHTML && - ( !rbuggyMatches || !rbuggyMatches.test( expr ) ) && - ( !rbuggyQSA || !rbuggyQSA.test( expr ) ) ) { - - try { - var ret = matches.call( elem, expr ); - - // IE 9's matchesSelector returns false on disconnected nodes - if ( ret || support.disconnectedMatch || - // As well, disconnected nodes are said to be in a document - // fragment in IE 9 - elem.document && elem.document.nodeType !== 11 ) { - return ret; - } - } catch(e) {} - } - - return Sizzle( expr, document, null, [ elem ] ).length > 0; -}; - -Sizzle.contains = function( context, elem ) { - // Set document vars if needed - if ( ( context.ownerDocument || context ) !== document ) { - setDocument( context ); - } - return contains( context, elem ); -}; - -Sizzle.attr = function( elem, name ) { - // Set document vars if needed - if ( ( elem.ownerDocument || elem ) !== document ) { - setDocument( elem ); - } - - var fn = Expr.attrHandle[ name.toLowerCase() ], - // Don't get fooled by Object.prototype properties (jQuery #13807) - val = fn && hasOwn.call( Expr.attrHandle, name.toLowerCase() ) ? - fn( elem, name, !documentIsHTML ) : - undefined; - - return val !== undefined ? - val : - support.attributes || !documentIsHTML ? - elem.getAttribute( name ) : - (val = elem.getAttributeNode(name)) && val.specified ? - val.value : - null; -}; - -Sizzle.error = function( msg ) { - throw new Error( "Syntax error, unrecognized expression: " + msg ); -}; - -/** - * Document sorting and removing duplicates - * @param {ArrayLike} results - */ -Sizzle.uniqueSort = function( results ) { - var elem, - duplicates = [], - j = 0, - i = 0; - - // Unless we *know* we can detect duplicates, assume their presence - hasDuplicate = !support.detectDuplicates; - sortInput = !support.sortStable && results.slice( 0 ); - results.sort( sortOrder ); - - if ( hasDuplicate ) { - while ( (elem = results[i++]) ) { - if ( elem === results[ i ] ) { - j = duplicates.push( i ); - } - } - while ( j-- ) { - results.splice( duplicates[ j ], 1 ); - } - } - - // Clear input after sorting to release objects - // See https://github.com/jquery/sizzle/pull/225 - sortInput = null; - - return results; -}; - -/** - * Utility function for retrieving the text value of an array of DOM nodes - * @param {Array|Element} elem - */ -getText = Sizzle.getText = function( elem ) { - var node, - ret = "", - i = 0, - nodeType = elem.nodeType; - - if ( !nodeType ) { - // If no nodeType, this is expected to be an array - while ( (node = elem[i++]) ) { - // Do not traverse comment nodes - ret += getText( node ); - } - } else if ( nodeType === 1 || nodeType === 9 || nodeType === 11 ) { - // Use textContent for elements - // innerText usage removed for consistency of new lines (jQuery #11153) - if ( typeof elem.textContent === "string" ) { - return elem.textContent; - } else { - // Traverse its children - for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { - ret += getText( elem ); - } - } - } else if ( nodeType === 3 || nodeType === 4 ) { - return elem.nodeValue; - } - // Do not include comment or processing instruction nodes - - return ret; -}; - -Expr = Sizzle.selectors = { - - // Can be adjusted by the user - cacheLength: 50, - - createPseudo: markFunction, - - match: matchExpr, - - attrHandle: {}, - - find: {}, - - relative: { - ">": { dir: "parentNode", first: true }, - " ": { dir: "parentNode" }, - "+": { dir: "previousSibling", first: true }, - "~": { dir: "previousSibling" } - }, - - preFilter: { - "ATTR": function( match ) { - match[1] = match[1].replace( runescape, funescape ); - - // Move the given value to match[3] whether quoted or unquoted - match[3] = ( match[3] || match[4] || match[5] || "" ).replace( runescape, funescape ); - - if ( match[2] === "~=" ) { - match[3] = " " + match[3] + " "; - } - - return match.slice( 0, 4 ); - }, - - "CHILD": function( match ) { - /* matches from matchExpr["CHILD"] - 1 type (only|nth|...) - 2 what (child|of-type) - 3 argument (even|odd|\d*|\d*n([+-]\d+)?|...) - 4 xn-component of xn+y argument ([+-]?\d*n|) - 5 sign of xn-component - 6 x of xn-component - 7 sign of y-component - 8 y of y-component - */ - match[1] = match[1].toLowerCase(); - - if ( match[1].slice( 0, 3 ) === "nth" ) { - // nth-* requires argument - if ( !match[3] ) { - Sizzle.error( match[0] ); - } - - // numeric x and y parameters for Expr.filter.CHILD - // remember that false/true cast respectively to 0/1 - match[4] = +( match[4] ? match[5] + (match[6] || 1) : 2 * ( match[3] === "even" || match[3] === "odd" ) ); - match[5] = +( ( match[7] + match[8] ) || match[3] === "odd" ); - - // other types prohibit arguments - } else if ( match[3] ) { - Sizzle.error( match[0] ); - } - - return match; - }, - - "PSEUDO": function( match ) { - var excess, - unquoted = !match[6] && match[2]; - - if ( matchExpr["CHILD"].test( match[0] ) ) { - return null; - } - - // Accept quoted arguments as-is - if ( match[3] ) { - match[2] = match[4] || match[5] || ""; - - // Strip excess characters from unquoted arguments - } else if ( unquoted && rpseudo.test( unquoted ) && - // Get excess from tokenize (recursively) - (excess = tokenize( unquoted, true )) && - // advance to the next closing parenthesis - (excess = unquoted.indexOf( ")", unquoted.length - excess ) - unquoted.length) ) { - - // excess is a negative index - match[0] = match[0].slice( 0, excess ); - match[2] = unquoted.slice( 0, excess ); - } - - // Return only captures needed by the pseudo filter method (type and argument) - return match.slice( 0, 3 ); - } - }, - - filter: { - - "TAG": function( nodeNameSelector ) { - var nodeName = nodeNameSelector.replace( runescape, funescape ).toLowerCase(); - return nodeNameSelector === "*" ? - function() { return true; } : - function( elem ) { - return elem.nodeName && elem.nodeName.toLowerCase() === nodeName; - }; - }, - - "CLASS": function( className ) { - var pattern = classCache[ className + " " ]; - - return pattern || - (pattern = new RegExp( "(^|" + whitespace + ")" + className + "(" + whitespace + "|$)" )) && - classCache( className, function( elem ) { - return pattern.test( typeof elem.className === "string" && elem.className || typeof elem.getAttribute !== strundefined && elem.getAttribute("class") || "" ); - }); - }, - - "ATTR": function( name, operator, check ) { - return function( elem ) { - var result = Sizzle.attr( elem, name ); - - if ( result == null ) { - return operator === "!="; - } - if ( !operator ) { - return true; - } - - result += ""; - - return operator === "=" ? result === check : - operator === "!=" ? result !== check : - operator === "^=" ? check && result.indexOf( check ) === 0 : - operator === "*=" ? check && result.indexOf( check ) > -1 : - operator === "$=" ? check && result.slice( -check.length ) === check : - operator === "~=" ? ( " " + result + " " ).indexOf( check ) > -1 : - operator === "|=" ? result === check || result.slice( 0, check.length + 1 ) === check + "-" : - false; - }; - }, - - "CHILD": function( type, what, argument, first, last ) { - var simple = type.slice( 0, 3 ) !== "nth", - forward = type.slice( -4 ) !== "last", - ofType = what === "of-type"; - - return first === 1 && last === 0 ? - - // Shortcut for :nth-*(n) - function( elem ) { - return !!elem.parentNode; - } : - - function( elem, context, xml ) { - var cache, outerCache, node, diff, nodeIndex, start, - dir = simple !== forward ? "nextSibling" : "previousSibling", - parent = elem.parentNode, - name = ofType && elem.nodeName.toLowerCase(), - useCache = !xml && !ofType; - - if ( parent ) { - - // :(first|last|only)-(child|of-type) - if ( simple ) { - while ( dir ) { - node = elem; - while ( (node = node[ dir ]) ) { - if ( ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1 ) { - return false; - } - } - // Reverse direction for :only-* (if we haven't yet done so) - start = dir = type === "only" && !start && "nextSibling"; - } - return true; - } - - start = [ forward ? parent.firstChild : parent.lastChild ]; - - // non-xml :nth-child(...) stores cache data on `parent` - if ( forward && useCache ) { - // Seek `elem` from a previously-cached index - outerCache = parent[ expando ] || (parent[ expando ] = {}); - cache = outerCache[ type ] || []; - nodeIndex = cache[0] === dirruns && cache[1]; - diff = cache[0] === dirruns && cache[2]; - node = nodeIndex && parent.childNodes[ nodeIndex ]; - - while ( (node = ++nodeIndex && node && node[ dir ] || - - // Fallback to seeking `elem` from the start - (diff = nodeIndex = 0) || start.pop()) ) { - - // When found, cache indexes on `parent` and break - if ( node.nodeType === 1 && ++diff && node === elem ) { - outerCache[ type ] = [ dirruns, nodeIndex, diff ]; - break; - } - } - - // Use previously-cached element index if available - } else if ( useCache && (cache = (elem[ expando ] || (elem[ expando ] = {}))[ type ]) && cache[0] === dirruns ) { - diff = cache[1]; - - // xml :nth-child(...) or :nth-last-child(...) or :nth(-last)?-of-type(...) - } else { - // Use the same loop as above to seek `elem` from the start - while ( (node = ++nodeIndex && node && node[ dir ] || - (diff = nodeIndex = 0) || start.pop()) ) { - - if ( ( ofType ? node.nodeName.toLowerCase() === name : node.nodeType === 1 ) && ++diff ) { - // Cache the index of each encountered element - if ( useCache ) { - (node[ expando ] || (node[ expando ] = {}))[ type ] = [ dirruns, diff ]; - } - - if ( node === elem ) { - break; - } - } - } - } - - // Incorporate the offset, then check against cycle size - diff -= last; - return diff === first || ( diff % first === 0 && diff / first >= 0 ); - } - }; - }, - - "PSEUDO": function( pseudo, argument ) { - // pseudo-class names are case-insensitive - // http://www.w3.org/TR/selectors/#pseudo-classes - // Prioritize by case sensitivity in case custom pseudos are added with uppercase letters - // Remember that setFilters inherits from pseudos - var args, - fn = Expr.pseudos[ pseudo ] || Expr.setFilters[ pseudo.toLowerCase() ] || - Sizzle.error( "unsupported pseudo: " + pseudo ); - - // The user may use createPseudo to indicate that - // arguments are needed to create the filter function - // just as Sizzle does - if ( fn[ expando ] ) { - return fn( argument ); - } - - // But maintain support for old signatures - if ( fn.length > 1 ) { - args = [ pseudo, pseudo, "", argument ]; - return Expr.setFilters.hasOwnProperty( pseudo.toLowerCase() ) ? - markFunction(function( seed, matches ) { - var idx, - matched = fn( seed, argument ), - i = matched.length; - while ( i-- ) { - idx = indexOf.call( seed, matched[i] ); - seed[ idx ] = !( matches[ idx ] = matched[i] ); - } - }) : - function( elem ) { - return fn( elem, 0, args ); - }; - } - - return fn; - } - }, - - pseudos: { - // Potentially complex pseudos - "not": markFunction(function( selector ) { - // Trim the selector passed to compile - // to avoid treating leading and trailing - // spaces as combinators - var input = [], - results = [], - matcher = compile( selector.replace( rtrim, "$1" ) ); - - return matcher[ expando ] ? - markFunction(function( seed, matches, context, xml ) { - var elem, - unmatched = matcher( seed, null, xml, [] ), - i = seed.length; - - // Match elements unmatched by `matcher` - while ( i-- ) { - if ( (elem = unmatched[i]) ) { - seed[i] = !(matches[i] = elem); - } - } - }) : - function( elem, context, xml ) { - input[0] = elem; - matcher( input, null, xml, results ); - return !results.pop(); - }; - }), - - "has": markFunction(function( selector ) { - return function( elem ) { - return Sizzle( selector, elem ).length > 0; - }; - }), - - "contains": markFunction(function( text ) { - return function( elem ) { - return ( elem.textContent || elem.innerText || getText( elem ) ).indexOf( text ) > -1; - }; - }), - - // "Whether an element is represented by a :lang() selector - // is based solely on the element's language value - // being equal to the identifier C, - // or beginning with the identifier C immediately followed by "-". - // The matching of C against the element's language value is performed case-insensitively. - // The identifier C does not have to be a valid language name." - // http://www.w3.org/TR/selectors/#lang-pseudo - "lang": markFunction( function( lang ) { - // lang value must be a valid identifier - if ( !ridentifier.test(lang || "") ) { - Sizzle.error( "unsupported lang: " + lang ); - } - lang = lang.replace( runescape, funescape ).toLowerCase(); - return function( elem ) { - var elemLang; - do { - if ( (elemLang = documentIsHTML ? - elem.lang : - elem.getAttribute("xml:lang") || elem.getAttribute("lang")) ) { - - elemLang = elemLang.toLowerCase(); - return elemLang === lang || elemLang.indexOf( lang + "-" ) === 0; - } - } while ( (elem = elem.parentNode) && elem.nodeType === 1 ); - return false; - }; - }), - - // Miscellaneous - "target": function( elem ) { - var hash = window.location && window.location.hash; - return hash && hash.slice( 1 ) === elem.id; - }, - - "root": function( elem ) { - return elem === docElem; - }, - - "focus": function( elem ) { - return elem === document.activeElement && (!document.hasFocus || document.hasFocus()) && !!(elem.type || elem.href || ~elem.tabIndex); - }, - - // Boolean properties - "enabled": function( elem ) { - return elem.disabled === false; - }, - - "disabled": function( elem ) { - return elem.disabled === true; - }, - - "checked": function( elem ) { - // In CSS3, :checked should return both checked and selected elements - // http://www.w3.org/TR/2011/REC-css3-selectors-20110929/#checked - var nodeName = elem.nodeName.toLowerCase(); - return (nodeName === "input" && !!elem.checked) || (nodeName === "option" && !!elem.selected); - }, - - "selected": function( elem ) { - // Accessing this property makes selected-by-default - // options in Safari work properly - if ( elem.parentNode ) { - elem.parentNode.selectedIndex; - } - - return elem.selected === true; - }, - - // Contents - "empty": function( elem ) { - // http://www.w3.org/TR/selectors/#empty-pseudo - // :empty is negated by element (1) or content nodes (text: 3; cdata: 4; entity ref: 5), - // but not by others (comment: 8; processing instruction: 7; etc.) - // nodeType < 6 works because attributes (2) do not appear as children - for ( elem = elem.firstChild; elem; elem = elem.nextSibling ) { - if ( elem.nodeType < 6 ) { - return false; - } - } - return true; - }, - - "parent": function( elem ) { - return !Expr.pseudos["empty"]( elem ); - }, - - // Element/input types - "header": function( elem ) { - return rheader.test( elem.nodeName ); - }, - - "input": function( elem ) { - return rinputs.test( elem.nodeName ); - }, - - "button": function( elem ) { - var name = elem.nodeName.toLowerCase(); - return name === "input" && elem.type === "button" || name === "button"; - }, - - "text": function( elem ) { - var attr; - return elem.nodeName.toLowerCase() === "input" && - elem.type === "text" && - - // Support: IE<8 - // New HTML5 attribute values (e.g., "search") appear with elem.type === "text" - ( (attr = elem.getAttribute("type")) == null || attr.toLowerCase() === "text" ); - }, - - // Position-in-collection - "first": createPositionalPseudo(function() { - return [ 0 ]; - }), - - "last": createPositionalPseudo(function( matchIndexes, length ) { - return [ length - 1 ]; - }), - - "eq": createPositionalPseudo(function( matchIndexes, length, argument ) { - return [ argument < 0 ? argument + length : argument ]; - }), - - "even": createPositionalPseudo(function( matchIndexes, length ) { - var i = 0; - for ( ; i < length; i += 2 ) { - matchIndexes.push( i ); - } - return matchIndexes; - }), - - "odd": createPositionalPseudo(function( matchIndexes, length ) { - var i = 1; - for ( ; i < length; i += 2 ) { - matchIndexes.push( i ); - } - return matchIndexes; - }), - - "lt": createPositionalPseudo(function( matchIndexes, length, argument ) { - var i = argument < 0 ? argument + length : argument; - for ( ; --i >= 0; ) { - matchIndexes.push( i ); - } - return matchIndexes; - }), - - "gt": createPositionalPseudo(function( matchIndexes, length, argument ) { - var i = argument < 0 ? argument + length : argument; - for ( ; ++i < length; ) { - matchIndexes.push( i ); - } - return matchIndexes; - }) - } -}; - -Expr.pseudos["nth"] = Expr.pseudos["eq"]; - -// Add button/input type pseudos -for ( i in { radio: true, checkbox: true, file: true, password: true, image: true } ) { - Expr.pseudos[ i ] = createInputPseudo( i ); -} -for ( i in { submit: true, reset: true } ) { - Expr.pseudos[ i ] = createButtonPseudo( i ); -} - -// Easy API for creating new setFilters -function setFilters() {} -setFilters.prototype = Expr.filters = Expr.pseudos; -Expr.setFilters = new setFilters(); - -tokenize = Sizzle.tokenize = function( selector, parseOnly ) { - var matched, match, tokens, type, - soFar, groups, preFilters, - cached = tokenCache[ selector + " " ]; - - if ( cached ) { - return parseOnly ? 0 : cached.slice( 0 ); - } - - soFar = selector; - groups = []; - preFilters = Expr.preFilter; - - while ( soFar ) { - - // Comma and first run - if ( !matched || (match = rcomma.exec( soFar )) ) { - if ( match ) { - // Don't consume trailing commas as valid - soFar = soFar.slice( match[0].length ) || soFar; - } - groups.push( (tokens = []) ); - } - - matched = false; - - // Combinators - if ( (match = rcombinators.exec( soFar )) ) { - matched = match.shift(); - tokens.push({ - value: matched, - // Cast descendant combinators to space - type: match[0].replace( rtrim, " " ) - }); - soFar = soFar.slice( matched.length ); - } - - // Filters - for ( type in Expr.filter ) { - if ( (match = matchExpr[ type ].exec( soFar )) && (!preFilters[ type ] || - (match = preFilters[ type ]( match ))) ) { - matched = match.shift(); - tokens.push({ - value: matched, - type: type, - matches: match - }); - soFar = soFar.slice( matched.length ); - } - } - - if ( !matched ) { - break; - } - } - - // Return the length of the invalid excess - // if we're just parsing - // Otherwise, throw an error or return tokens - return parseOnly ? - soFar.length : - soFar ? - Sizzle.error( selector ) : - // Cache the tokens - tokenCache( selector, groups ).slice( 0 ); -}; - -function toSelector( tokens ) { - var i = 0, - len = tokens.length, - selector = ""; - for ( ; i < len; i++ ) { - selector += tokens[i].value; - } - return selector; -} - -function addCombinator( matcher, combinator, base ) { - var dir = combinator.dir, - checkNonElements = base && dir === "parentNode", - doneName = done++; - - return combinator.first ? - // Check against closest ancestor/preceding element - function( elem, context, xml ) { - while ( (elem = elem[ dir ]) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - return matcher( elem, context, xml ); - } - } - } : - - // Check against all ancestor/preceding elements - function( elem, context, xml ) { - var oldCache, outerCache, - newCache = [ dirruns, doneName ]; - - // We can't set arbitrary data on XML nodes, so they don't benefit from dir caching - if ( xml ) { - while ( (elem = elem[ dir ]) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - if ( matcher( elem, context, xml ) ) { - return true; - } - } - } - } else { - while ( (elem = elem[ dir ]) ) { - if ( elem.nodeType === 1 || checkNonElements ) { - outerCache = elem[ expando ] || (elem[ expando ] = {}); - if ( (oldCache = outerCache[ dir ]) && - oldCache[ 0 ] === dirruns && oldCache[ 1 ] === doneName ) { - - // Assign to newCache so results back-propagate to previous elements - return (newCache[ 2 ] = oldCache[ 2 ]); - } else { - // Reuse newcache so results back-propagate to previous elements - outerCache[ dir ] = newCache; - - // A match means we're done; a fail means we have to keep checking - if ( (newCache[ 2 ] = matcher( elem, context, xml )) ) { - return true; - } - } - } - } - } - }; -} - -function elementMatcher( matchers ) { - return matchers.length > 1 ? - function( elem, context, xml ) { - var i = matchers.length; - while ( i-- ) { - if ( !matchers[i]( elem, context, xml ) ) { - return false; - } - } - return true; - } : - matchers[0]; -} - -function multipleContexts( selector, contexts, results ) { - var i = 0, - len = contexts.length; - for ( ; i < len; i++ ) { - Sizzle( selector, contexts[i], results ); - } - return results; -} - -function condense( unmatched, map, filter, context, xml ) { - var elem, - newUnmatched = [], - i = 0, - len = unmatched.length, - mapped = map != null; - - for ( ; i < len; i++ ) { - if ( (elem = unmatched[i]) ) { - if ( !filter || filter( elem, context, xml ) ) { - newUnmatched.push( elem ); - if ( mapped ) { - map.push( i ); - } - } - } - } - - return newUnmatched; -} - -function setMatcher( preFilter, selector, matcher, postFilter, postFinder, postSelector ) { - if ( postFilter && !postFilter[ expando ] ) { - postFilter = setMatcher( postFilter ); - } - if ( postFinder && !postFinder[ expando ] ) { - postFinder = setMatcher( postFinder, postSelector ); - } - return markFunction(function( seed, results, context, xml ) { - var temp, i, elem, - preMap = [], - postMap = [], - preexisting = results.length, - - // Get initial elements from seed or context - elems = seed || multipleContexts( selector || "*", context.nodeType ? [ context ] : context, [] ), - - // Prefilter to get matcher input, preserving a map for seed-results synchronization - matcherIn = preFilter && ( seed || !selector ) ? - condense( elems, preMap, preFilter, context, xml ) : - elems, - - matcherOut = matcher ? - // If we have a postFinder, or filtered seed, or non-seed postFilter or preexisting results, - postFinder || ( seed ? preFilter : preexisting || postFilter ) ? - - // ...intermediate processing is necessary - [] : - - // ...otherwise use results directly - results : - matcherIn; - - // Find primary matches - if ( matcher ) { - matcher( matcherIn, matcherOut, context, xml ); - } - - // Apply postFilter - if ( postFilter ) { - temp = condense( matcherOut, postMap ); - postFilter( temp, [], context, xml ); - - // Un-match failing elements by moving them back to matcherIn - i = temp.length; - while ( i-- ) { - if ( (elem = temp[i]) ) { - matcherOut[ postMap[i] ] = !(matcherIn[ postMap[i] ] = elem); - } - } - } - - if ( seed ) { - if ( postFinder || preFilter ) { - if ( postFinder ) { - // Get the final matcherOut by condensing this intermediate into postFinder contexts - temp = []; - i = matcherOut.length; - while ( i-- ) { - if ( (elem = matcherOut[i]) ) { - // Restore matcherIn since elem is not yet a final match - temp.push( (matcherIn[i] = elem) ); - } - } - postFinder( null, (matcherOut = []), temp, xml ); - } - - // Move matched elements from seed to results to keep them synchronized - i = matcherOut.length; - while ( i-- ) { - if ( (elem = matcherOut[i]) && - (temp = postFinder ? indexOf.call( seed, elem ) : preMap[i]) > -1 ) { - - seed[temp] = !(results[temp] = elem); - } - } - } - - // Add elements to results, through postFinder if defined - } else { - matcherOut = condense( - matcherOut === results ? - matcherOut.splice( preexisting, matcherOut.length ) : - matcherOut - ); - if ( postFinder ) { - postFinder( null, results, matcherOut, xml ); - } else { - push.apply( results, matcherOut ); - } - } - }); -} - -function matcherFromTokens( tokens ) { - var checkContext, matcher, j, - len = tokens.length, - leadingRelative = Expr.relative[ tokens[0].type ], - implicitRelative = leadingRelative || Expr.relative[" "], - i = leadingRelative ? 1 : 0, - - // The foundational matcher ensures that elements are reachable from top-level context(s) - matchContext = addCombinator( function( elem ) { - return elem === checkContext; - }, implicitRelative, true ), - matchAnyContext = addCombinator( function( elem ) { - return indexOf.call( checkContext, elem ) > -1; - }, implicitRelative, true ), - matchers = [ function( elem, context, xml ) { - return ( !leadingRelative && ( xml || context !== outermostContext ) ) || ( - (checkContext = context).nodeType ? - matchContext( elem, context, xml ) : - matchAnyContext( elem, context, xml ) ); - } ]; - - for ( ; i < len; i++ ) { - if ( (matcher = Expr.relative[ tokens[i].type ]) ) { - matchers = [ addCombinator(elementMatcher( matchers ), matcher) ]; - } else { - matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches ); - - // Return special upon seeing a positional matcher - if ( matcher[ expando ] ) { - // Find the next relative operator (if any) for proper handling - j = ++i; - for ( ; j < len; j++ ) { - if ( Expr.relative[ tokens[j].type ] ) { - break; - } - } - return setMatcher( - i > 1 && elementMatcher( matchers ), - i > 1 && toSelector( - // If the preceding token was a descendant combinator, insert an implicit any-element `*` - tokens.slice( 0, i - 1 ).concat({ value: tokens[ i - 2 ].type === " " ? "*" : "" }) - ).replace( rtrim, "$1" ), - matcher, - i < j && matcherFromTokens( tokens.slice( i, j ) ), - j < len && matcherFromTokens( (tokens = tokens.slice( j )) ), - j < len && toSelector( tokens ) - ); - } - matchers.push( matcher ); - } - } - - return elementMatcher( matchers ); -} - -function matcherFromGroupMatchers( elementMatchers, setMatchers ) { - var bySet = setMatchers.length > 0, - byElement = elementMatchers.length > 0, - superMatcher = function( seed, context, xml, results, outermost ) { - var elem, j, matcher, - matchedCount = 0, - i = "0", - unmatched = seed && [], - setMatched = [], - contextBackup = outermostContext, - // We must always have either seed elements or outermost context - elems = seed || byElement && Expr.find["TAG"]( "*", outermost ), - // Use integer dirruns iff this is the outermost matcher - dirrunsUnique = (dirruns += contextBackup == null ? 1 : Math.random() || 0.1), - len = elems.length; - - if ( outermost ) { - outermostContext = context !== document && context; - } - - // Add elements passing elementMatchers directly to results - // Keep `i` a string if there are no elements so `matchedCount` will be "00" below - // Support: IE<9, Safari - // Tolerate NodeList properties (IE: "length"; Safari: ) matching elements by id - for ( ; i !== len && (elem = elems[i]) != null; i++ ) { - if ( byElement && elem ) { - j = 0; - while ( (matcher = elementMatchers[j++]) ) { - if ( matcher( elem, context, xml ) ) { - results.push( elem ); - break; - } - } - if ( outermost ) { - dirruns = dirrunsUnique; - } - } - - // Track unmatched elements for set filters - if ( bySet ) { - // They will have gone through all possible matchers - if ( (elem = !matcher && elem) ) { - matchedCount--; - } - - // Lengthen the array for every element, matched or not - if ( seed ) { - unmatched.push( elem ); - } - } - } - - // Apply set filters to unmatched elements - matchedCount += i; - if ( bySet && i !== matchedCount ) { - j = 0; - while ( (matcher = setMatchers[j++]) ) { - matcher( unmatched, setMatched, context, xml ); - } - - if ( seed ) { - // Reintegrate element matches to eliminate the need for sorting - if ( matchedCount > 0 ) { - while ( i-- ) { - if ( !(unmatched[i] || setMatched[i]) ) { - setMatched[i] = pop.call( results ); - } - } - } - - // Discard index placeholder values to get only actual matches - setMatched = condense( setMatched ); - } - - // Add matches to results - push.apply( results, setMatched ); - - // Seedless set matches succeeding multiple successful matchers stipulate sorting - if ( outermost && !seed && setMatched.length > 0 && - ( matchedCount + setMatchers.length ) > 1 ) { - - Sizzle.uniqueSort( results ); - } - } - - // Override manipulation of globals by nested matchers - if ( outermost ) { - dirruns = dirrunsUnique; - outermostContext = contextBackup; - } - - return unmatched; - }; - - return bySet ? - markFunction( superMatcher ) : - superMatcher; -} - -compile = Sizzle.compile = function( selector, match /* Internal Use Only */ ) { - var i, - setMatchers = [], - elementMatchers = [], - cached = compilerCache[ selector + " " ]; - - if ( !cached ) { - // Generate a function of recursive functions that can be used to check each element - if ( !match ) { - match = tokenize( selector ); - } - i = match.length; - while ( i-- ) { - cached = matcherFromTokens( match[i] ); - if ( cached[ expando ] ) { - setMatchers.push( cached ); - } else { - elementMatchers.push( cached ); - } - } - - // Cache the compiled function - cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) ); - - // Save selector and tokenization - cached.selector = selector; - } - return cached; -}; - -/** - * A low-level selection function that works with Sizzle's compiled - * selector functions - * @param {String|Function} selector A selector or a pre-compiled - * selector function built with Sizzle.compile - * @param {Element} context - * @param {Array} [results] - * @param {Array} [seed] A set of elements to match against - */ -select = Sizzle.select = function( selector, context, results, seed ) { - var i, tokens, token, type, find, - compiled = typeof selector === "function" && selector, - match = !seed && tokenize( (selector = compiled.selector || selector) ); - - results = results || []; - - // Try to minimize operations if there is no seed and only one group - if ( match.length === 1 ) { - - // Take a shortcut and set the context if the root selector is an ID - tokens = match[0] = match[0].slice( 0 ); - if ( tokens.length > 2 && (token = tokens[0]).type === "ID" && - support.getById && context.nodeType === 9 && documentIsHTML && - Expr.relative[ tokens[1].type ] ) { - - context = ( Expr.find["ID"]( token.matches[0].replace(runescape, funescape), context ) || [] )[0]; - if ( !context ) { - return results; - - // Precompiled matchers will still verify ancestry, so step up a level - } else if ( compiled ) { - context = context.parentNode; - } - - selector = selector.slice( tokens.shift().value.length ); - } - - // Fetch a seed set for right-to-left matching - i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length; - while ( i-- ) { - token = tokens[i]; - - // Abort if we hit a combinator - if ( Expr.relative[ (type = token.type) ] ) { - break; - } - if ( (find = Expr.find[ type ]) ) { - // Search, expanding context for leading sibling combinators - if ( (seed = find( - token.matches[0].replace( runescape, funescape ), - rsibling.test( tokens[0].type ) && testContext( context.parentNode ) || context - )) ) { - - // If seed is empty or no tokens remain, we can return early - tokens.splice( i, 1 ); - selector = seed.length && toSelector( tokens ); - if ( !selector ) { - push.apply( results, seed ); - return results; - } - - break; - } - } - } - } - - // Compile and execute a filtering function if one is not provided - // Provide `match` to avoid retokenization if we modified the selector above - ( compiled || compile( selector, match ) )( - seed, - context, - !documentIsHTML, - results, - rsibling.test( selector ) && testContext( context.parentNode ) || context - ); - return results; -}; - -// One-time assignments - -// Sort stability -support.sortStable = expando.split("").sort( sortOrder ).join("") === expando; - -// Support: Chrome<14 -// Always assume duplicates if they aren't passed to the comparison function -support.detectDuplicates = !!hasDuplicate; - -// Initialize against the default document -setDocument(); - -// Support: Webkit<537.32 - Safari 6.0.3/Chrome 25 (fixed in Chrome 27) -// Detached nodes confoundingly follow *each other* -support.sortDetached = assert(function( div1 ) { - // Should return 1, but returns 4 (following) - return div1.compareDocumentPosition( document.createElement("div") ) & 1; -}); - -// Support: IE<8 -// Prevent attribute/property "interpolation" -// http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx -if ( !assert(function( div ) { - div.innerHTML = ""; - return div.firstChild.getAttribute("href") === "#" ; -}) ) { - addHandle( "type|href|height|width", function( elem, name, isXML ) { - if ( !isXML ) { - return elem.getAttribute( name, name.toLowerCase() === "type" ? 1 : 2 ); - } - }); -} - -// Support: IE<9 -// Use defaultValue in place of getAttribute("value") -if ( !support.attributes || !assert(function( div ) { - div.innerHTML = ""; - div.firstChild.setAttribute( "value", "" ); - return div.firstChild.getAttribute( "value" ) === ""; -}) ) { - addHandle( "value", function( elem, name, isXML ) { - if ( !isXML && elem.nodeName.toLowerCase() === "input" ) { - return elem.defaultValue; - } - }); -} - -// Support: IE<9 -// Use getAttributeNode to fetch booleans when getAttribute lies -if ( !assert(function( div ) { - return div.getAttribute("disabled") == null; -}) ) { - addHandle( booleans, function( elem, name, isXML ) { - var val; - if ( !isXML ) { - return elem[ name ] === true ? name.toLowerCase() : - (val = elem.getAttributeNode( name )) && val.specified ? - val.value : - null; - } - }); -} - -return Sizzle; - -})( window ); - - - -jQuery.find = Sizzle; -jQuery.expr = Sizzle.selectors; -jQuery.expr[":"] = jQuery.expr.pseudos; -jQuery.unique = Sizzle.uniqueSort; -jQuery.text = Sizzle.getText; -jQuery.isXMLDoc = Sizzle.isXML; -jQuery.contains = Sizzle.contains; - - - -var rneedsContext = jQuery.expr.match.needsContext; - -var rsingleTag = (/^<(\w+)\s*\/?>(?:<\/\1>|)$/); - - - -var risSimple = /^.[^:#\[\.,]*$/; - -// Implement the identical functionality for filter and not -function winnow( elements, qualifier, not ) { - if ( jQuery.isFunction( qualifier ) ) { - return jQuery.grep( elements, function( elem, i ) { - /* jshint -W018 */ - return !!qualifier.call( elem, i, elem ) !== not; - }); - - } - - if ( qualifier.nodeType ) { - return jQuery.grep( elements, function( elem ) { - return ( elem === qualifier ) !== not; - }); - - } - - if ( typeof qualifier === "string" ) { - if ( risSimple.test( qualifier ) ) { - return jQuery.filter( qualifier, elements, not ); - } - - qualifier = jQuery.filter( qualifier, elements ); - } - - return jQuery.grep( elements, function( elem ) { - return ( jQuery.inArray( elem, qualifier ) >= 0 ) !== not; - }); -} - -jQuery.filter = function( expr, elems, not ) { - var elem = elems[ 0 ]; - - if ( not ) { - expr = ":not(" + expr + ")"; - } - - return elems.length === 1 && elem.nodeType === 1 ? - jQuery.find.matchesSelector( elem, expr ) ? [ elem ] : [] : - jQuery.find.matches( expr, jQuery.grep( elems, function( elem ) { - return elem.nodeType === 1; - })); -}; - -jQuery.fn.extend({ - find: function( selector ) { - var i, - ret = [], - self = this, - len = self.length; - - if ( typeof selector !== "string" ) { - return this.pushStack( jQuery( selector ).filter(function() { - for ( i = 0; i < len; i++ ) { - if ( jQuery.contains( self[ i ], this ) ) { - return true; - } - } - }) ); - } - - for ( i = 0; i < len; i++ ) { - jQuery.find( selector, self[ i ], ret ); - } - - // Needed because $( selector, context ) becomes $( context ).find( selector ) - ret = this.pushStack( len > 1 ? jQuery.unique( ret ) : ret ); - ret.selector = this.selector ? this.selector + " " + selector : selector; - return ret; - }, - filter: function( selector ) { - return this.pushStack( winnow(this, selector || [], false) ); - }, - not: function( selector ) { - return this.pushStack( winnow(this, selector || [], true) ); - }, - is: function( selector ) { - return !!winnow( - this, - - // If this is a positional/relative selector, check membership in the returned set - // so $("p:first").is("p:last") won't return true for a doc with two "p". - typeof selector === "string" && rneedsContext.test( selector ) ? - jQuery( selector ) : - selector || [], - false - ).length; - } -}); - - -// Initialize a jQuery object - - -// A central reference to the root jQuery(document) -var rootjQuery, - - // Use the correct document accordingly with window argument (sandbox) - document = window.document, - - // A simple way to check for HTML strings - // Prioritize #id over to avoid XSS via location.hash (#9521) - // Strict HTML recognition (#11290: must start with <) - rquickExpr = /^(?:\s*(<[\w\W]+>)[^>]*|#([\w-]*))$/, - - init = jQuery.fn.init = function( selector, context ) { - var match, elem; - - // HANDLE: $(""), $(null), $(undefined), $(false) - if ( !selector ) { - return this; - } - - // Handle HTML strings - if ( typeof selector === "string" ) { - if ( selector.charAt(0) === "<" && selector.charAt( selector.length - 1 ) === ">" && selector.length >= 3 ) { - // Assume that strings that start and end with <> are HTML and skip the regex check - match = [ null, selector, null ]; - - } else { - match = rquickExpr.exec( selector ); - } - - // Match html or make sure no context is specified for #id - if ( match && (match[1] || !context) ) { - - // HANDLE: $(html) -> $(array) - if ( match[1] ) { - context = context instanceof jQuery ? context[0] : context; - - // scripts is true for back-compat - // Intentionally let the error be thrown if parseHTML is not present - jQuery.merge( this, jQuery.parseHTML( - match[1], - context && context.nodeType ? context.ownerDocument || context : document, - true - ) ); - - // HANDLE: $(html, props) - if ( rsingleTag.test( match[1] ) && jQuery.isPlainObject( context ) ) { - for ( match in context ) { - // Properties of context are called as methods if possible - if ( jQuery.isFunction( this[ match ] ) ) { - this[ match ]( context[ match ] ); - - // ...and otherwise set as attributes - } else { - this.attr( match, context[ match ] ); - } - } - } - - return this; - - // HANDLE: $(#id) - } else { - elem = document.getElementById( match[2] ); - - // Check parentNode to catch when Blackberry 4.6 returns - // nodes that are no longer in the document #6963 - if ( elem && elem.parentNode ) { - // Handle the case where IE and Opera return items - // by name instead of ID - if ( elem.id !== match[2] ) { - return rootjQuery.find( selector ); - } - - // Otherwise, we inject the element directly into the jQuery object - this.length = 1; - this[0] = elem; - } - - this.context = document; - this.selector = selector; - return this; - } - - // HANDLE: $(expr, $(...)) - } else if ( !context || context.jquery ) { - return ( context || rootjQuery ).find( selector ); - - // HANDLE: $(expr, context) - // (which is just equivalent to: $(context).find(expr) - } else { - return this.constructor( context ).find( selector ); - } - - // HANDLE: $(DOMElement) - } else if ( selector.nodeType ) { - this.context = this[0] = selector; - this.length = 1; - return this; - - // HANDLE: $(function) - // Shortcut for document ready - } else if ( jQuery.isFunction( selector ) ) { - return typeof rootjQuery.ready !== "undefined" ? - rootjQuery.ready( selector ) : - // Execute immediately if ready is not present - selector( jQuery ); - } - - if ( selector.selector !== undefined ) { - this.selector = selector.selector; - this.context = selector.context; - } - - return jQuery.makeArray( selector, this ); - }; - -// Give the init function the jQuery prototype for later instantiation -init.prototype = jQuery.fn; - -// Initialize central reference -rootjQuery = jQuery( document ); - - -var rparentsprev = /^(?:parents|prev(?:Until|All))/, - // methods guaranteed to produce a unique set when starting from a unique set - guaranteedUnique = { - children: true, - contents: true, - next: true, - prev: true - }; - -jQuery.extend({ - dir: function( elem, dir, until ) { - var matched = [], - cur = elem[ dir ]; - - while ( cur && cur.nodeType !== 9 && (until === undefined || cur.nodeType !== 1 || !jQuery( cur ).is( until )) ) { - if ( cur.nodeType === 1 ) { - matched.push( cur ); - } - cur = cur[dir]; - } - return matched; - }, - - sibling: function( n, elem ) { - var r = []; - - for ( ; n; n = n.nextSibling ) { - if ( n.nodeType === 1 && n !== elem ) { - r.push( n ); - } - } - - return r; - } -}); - -jQuery.fn.extend({ - has: function( target ) { - var i, - targets = jQuery( target, this ), - len = targets.length; - - return this.filter(function() { - for ( i = 0; i < len; i++ ) { - if ( jQuery.contains( this, targets[i] ) ) { - return true; - } - } - }); - }, - - closest: function( selectors, context ) { - var cur, - i = 0, - l = this.length, - matched = [], - pos = rneedsContext.test( selectors ) || typeof selectors !== "string" ? - jQuery( selectors, context || this.context ) : - 0; - - for ( ; i < l; i++ ) { - for ( cur = this[i]; cur && cur !== context; cur = cur.parentNode ) { - // Always skip document fragments - if ( cur.nodeType < 11 && (pos ? - pos.index(cur) > -1 : - - // Don't pass non-elements to Sizzle - cur.nodeType === 1 && - jQuery.find.matchesSelector(cur, selectors)) ) { - - matched.push( cur ); - break; - } - } - } - - return this.pushStack( matched.length > 1 ? jQuery.unique( matched ) : matched ); - }, - - // Determine the position of an element within - // the matched set of elements - index: function( elem ) { - - // No argument, return index in parent - if ( !elem ) { - return ( this[0] && this[0].parentNode ) ? this.first().prevAll().length : -1; - } - - // index in selector - if ( typeof elem === "string" ) { - return jQuery.inArray( this[0], jQuery( elem ) ); - } - - // Locate the position of the desired element - return jQuery.inArray( - // If it receives a jQuery object, the first element is used - elem.jquery ? elem[0] : elem, this ); - }, - - add: function( selector, context ) { - return this.pushStack( - jQuery.unique( - jQuery.merge( this.get(), jQuery( selector, context ) ) - ) - ); - }, - - addBack: function( selector ) { - return this.add( selector == null ? - this.prevObject : this.prevObject.filter(selector) - ); - } -}); - -function sibling( cur, dir ) { - do { - cur = cur[ dir ]; - } while ( cur && cur.nodeType !== 1 ); - - return cur; -} - -jQuery.each({ - parent: function( elem ) { - var parent = elem.parentNode; - return parent && parent.nodeType !== 11 ? parent : null; - }, - parents: function( elem ) { - return jQuery.dir( elem, "parentNode" ); - }, - parentsUntil: function( elem, i, until ) { - return jQuery.dir( elem, "parentNode", until ); - }, - next: function( elem ) { - return sibling( elem, "nextSibling" ); - }, - prev: function( elem ) { - return sibling( elem, "previousSibling" ); - }, - nextAll: function( elem ) { - return jQuery.dir( elem, "nextSibling" ); - }, - prevAll: function( elem ) { - return jQuery.dir( elem, "previousSibling" ); - }, - nextUntil: function( elem, i, until ) { - return jQuery.dir( elem, "nextSibling", until ); - }, - prevUntil: function( elem, i, until ) { - return jQuery.dir( elem, "previousSibling", until ); - }, - siblings: function( elem ) { - return jQuery.sibling( ( elem.parentNode || {} ).firstChild, elem ); - }, - children: function( elem ) { - return jQuery.sibling( elem.firstChild ); - }, - contents: function( elem ) { - return jQuery.nodeName( elem, "iframe" ) ? - elem.contentDocument || elem.contentWindow.document : - jQuery.merge( [], elem.childNodes ); - } -}, function( name, fn ) { - jQuery.fn[ name ] = function( until, selector ) { - var ret = jQuery.map( this, fn, until ); - - if ( name.slice( -5 ) !== "Until" ) { - selector = until; - } - - if ( selector && typeof selector === "string" ) { - ret = jQuery.filter( selector, ret ); - } - - if ( this.length > 1 ) { - // Remove duplicates - if ( !guaranteedUnique[ name ] ) { - ret = jQuery.unique( ret ); - } - - // Reverse order for parents* and prev-derivatives - if ( rparentsprev.test( name ) ) { - ret = ret.reverse(); - } - } - - return this.pushStack( ret ); - }; -}); -var rnotwhite = (/\S+/g); - - - -// String to Object options format cache -var optionsCache = {}; - -// Convert String-formatted options into Object-formatted ones and store in cache -function createOptions( options ) { - var object = optionsCache[ options ] = {}; - jQuery.each( options.match( rnotwhite ) || [], function( _, flag ) { - object[ flag ] = true; - }); - return object; -} - -/* - * Create a callback list using the following parameters: - * - * options: an optional list of space-separated options that will change how - * the callback list behaves or a more traditional option object - * - * By default a callback list will act like an event callback list and can be - * "fired" multiple times. - * - * Possible options: - * - * once: will ensure the callback list can only be fired once (like a Deferred) - * - * memory: will keep track of previous values and will call any callback added - * after the list has been fired right away with the latest "memorized" - * values (like a Deferred) - * - * unique: will ensure a callback can only be added once (no duplicate in the list) - * - * stopOnFalse: interrupt callings when a callback returns false - * - */ -jQuery.Callbacks = function( options ) { - - // Convert options from String-formatted to Object-formatted if needed - // (we check in cache first) - options = typeof options === "string" ? - ( optionsCache[ options ] || createOptions( options ) ) : - jQuery.extend( {}, options ); - - var // Flag to know if list is currently firing - firing, - // Last fire value (for non-forgettable lists) - memory, - // Flag to know if list was already fired - fired, - // End of the loop when firing - firingLength, - // Index of currently firing callback (modified by remove if needed) - firingIndex, - // First callback to fire (used internally by add and fireWith) - firingStart, - // Actual callback list - list = [], - // Stack of fire calls for repeatable lists - stack = !options.once && [], - // Fire callbacks - fire = function( data ) { - memory = options.memory && data; - fired = true; - firingIndex = firingStart || 0; - firingStart = 0; - firingLength = list.length; - firing = true; - for ( ; list && firingIndex < firingLength; firingIndex++ ) { - if ( list[ firingIndex ].apply( data[ 0 ], data[ 1 ] ) === false && options.stopOnFalse ) { - memory = false; // To prevent further calls using add - break; - } - } - firing = false; - if ( list ) { - if ( stack ) { - if ( stack.length ) { - fire( stack.shift() ); - } - } else if ( memory ) { - list = []; - } else { - self.disable(); - } - } - }, - // Actual Callbacks object - self = { - // Add a callback or a collection of callbacks to the list - add: function() { - if ( list ) { - // First, we save the current length - var start = list.length; - (function add( args ) { - jQuery.each( args, function( _, arg ) { - var type = jQuery.type( arg ); - if ( type === "function" ) { - if ( !options.unique || !self.has( arg ) ) { - list.push( arg ); - } - } else if ( arg && arg.length && type !== "string" ) { - // Inspect recursively - add( arg ); - } - }); - })( arguments ); - // Do we need to add the callbacks to the - // current firing batch? - if ( firing ) { - firingLength = list.length; - // With memory, if we're not firing then - // we should call right away - } else if ( memory ) { - firingStart = start; - fire( memory ); - } - } - return this; - }, - // Remove a callback from the list - remove: function() { - if ( list ) { - jQuery.each( arguments, function( _, arg ) { - var index; - while ( ( index = jQuery.inArray( arg, list, index ) ) > -1 ) { - list.splice( index, 1 ); - // Handle firing indexes - if ( firing ) { - if ( index <= firingLength ) { - firingLength--; - } - if ( index <= firingIndex ) { - firingIndex--; - } - } - } - }); - } - return this; - }, - // Check if a given callback is in the list. - // If no argument is given, return whether or not list has callbacks attached. - has: function( fn ) { - return fn ? jQuery.inArray( fn, list ) > -1 : !!( list && list.length ); - }, - // Remove all callbacks from the list - empty: function() { - list = []; - firingLength = 0; - return this; - }, - // Have the list do nothing anymore - disable: function() { - list = stack = memory = undefined; - return this; - }, - // Is it disabled? - disabled: function() { - return !list; - }, - // Lock the list in its current state - lock: function() { - stack = undefined; - if ( !memory ) { - self.disable(); - } - return this; - }, - // Is it locked? - locked: function() { - return !stack; - }, - // Call all callbacks with the given context and arguments - fireWith: function( context, args ) { - if ( list && ( !fired || stack ) ) { - args = args || []; - args = [ context, args.slice ? args.slice() : args ]; - if ( firing ) { - stack.push( args ); - } else { - fire( args ); - } - } - return this; - }, - // Call all the callbacks with the given arguments - fire: function() { - self.fireWith( this, arguments ); - return this; - }, - // To know if the callbacks have already been called at least once - fired: function() { - return !!fired; - } - }; - - return self; -}; - - -jQuery.extend({ - - Deferred: function( func ) { - var tuples = [ - // action, add listener, listener list, final state - [ "resolve", "done", jQuery.Callbacks("once memory"), "resolved" ], - [ "reject", "fail", jQuery.Callbacks("once memory"), "rejected" ], - [ "notify", "progress", jQuery.Callbacks("memory") ] - ], - state = "pending", - promise = { - state: function() { - return state; - }, - always: function() { - deferred.done( arguments ).fail( arguments ); - return this; - }, - then: function( /* fnDone, fnFail, fnProgress */ ) { - var fns = arguments; - return jQuery.Deferred(function( newDefer ) { - jQuery.each( tuples, function( i, tuple ) { - var fn = jQuery.isFunction( fns[ i ] ) && fns[ i ]; - // deferred[ done | fail | progress ] for forwarding actions to newDefer - deferred[ tuple[1] ](function() { - var returned = fn && fn.apply( this, arguments ); - if ( returned && jQuery.isFunction( returned.promise ) ) { - returned.promise() - .done( newDefer.resolve ) - .fail( newDefer.reject ) - .progress( newDefer.notify ); - } else { - newDefer[ tuple[ 0 ] + "With" ]( this === promise ? newDefer.promise() : this, fn ? [ returned ] : arguments ); - } - }); - }); - fns = null; - }).promise(); - }, - // Get a promise for this deferred - // If obj is provided, the promise aspect is added to the object - promise: function( obj ) { - return obj != null ? jQuery.extend( obj, promise ) : promise; - } - }, - deferred = {}; - - // Keep pipe for back-compat - promise.pipe = promise.then; - - // Add list-specific methods - jQuery.each( tuples, function( i, tuple ) { - var list = tuple[ 2 ], - stateString = tuple[ 3 ]; - - // promise[ done | fail | progress ] = list.add - promise[ tuple[1] ] = list.add; - - // Handle state - if ( stateString ) { - list.add(function() { - // state = [ resolved | rejected ] - state = stateString; - - // [ reject_list | resolve_list ].disable; progress_list.lock - }, tuples[ i ^ 1 ][ 2 ].disable, tuples[ 2 ][ 2 ].lock ); - } - - // deferred[ resolve | reject | notify ] - deferred[ tuple[0] ] = function() { - deferred[ tuple[0] + "With" ]( this === deferred ? promise : this, arguments ); - return this; - }; - deferred[ tuple[0] + "With" ] = list.fireWith; - }); - - // Make the deferred a promise - promise.promise( deferred ); - - // Call given func if any - if ( func ) { - func.call( deferred, deferred ); - } - - // All done! - return deferred; - }, - - // Deferred helper - when: function( subordinate /* , ..., subordinateN */ ) { - var i = 0, - resolveValues = slice.call( arguments ), - length = resolveValues.length, - - // the count of uncompleted subordinates - remaining = length !== 1 || ( subordinate && jQuery.isFunction( subordinate.promise ) ) ? length : 0, - - // the master Deferred. If resolveValues consist of only a single Deferred, just use that. - deferred = remaining === 1 ? subordinate : jQuery.Deferred(), - - // Update function for both resolve and progress values - updateFunc = function( i, contexts, values ) { - return function( value ) { - contexts[ i ] = this; - values[ i ] = arguments.length > 1 ? slice.call( arguments ) : value; - if ( values === progressValues ) { - deferred.notifyWith( contexts, values ); - - } else if ( !(--remaining) ) { - deferred.resolveWith( contexts, values ); - } - }; - }, - - progressValues, progressContexts, resolveContexts; - - // add listeners to Deferred subordinates; treat others as resolved - if ( length > 1 ) { - progressValues = new Array( length ); - progressContexts = new Array( length ); - resolveContexts = new Array( length ); - for ( ; i < length; i++ ) { - if ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i ].promise ) ) { - resolveValues[ i ].promise() - .done( updateFunc( i, resolveContexts, resolveValues ) ) - .fail( deferred.reject ) - .progress( updateFunc( i, progressContexts, progressValues ) ); - } else { - --remaining; - } - } - } - - // if we're not waiting on anything, resolve the master - if ( !remaining ) { - deferred.resolveWith( resolveContexts, resolveValues ); - } - - return deferred.promise(); - } -}); - - -// The deferred used on DOM ready -var readyList; - -jQuery.fn.ready = function( fn ) { - // Add the callback - jQuery.ready.promise().done( fn ); - - return this; -}; - -jQuery.extend({ - // Is the DOM ready to be used? Set to true once it occurs. - isReady: false, - - // A counter to track how many items to wait for before - // the ready event fires. See #6781 - readyWait: 1, - - // Hold (or release) the ready event - holdReady: function( hold ) { - if ( hold ) { - jQuery.readyWait++; - } else { - jQuery.ready( true ); - } - }, - - // Handle when the DOM is ready - ready: function( wait ) { - - // Abort if there are pending holds or we're already ready - if ( wait === true ? --jQuery.readyWait : jQuery.isReady ) { - return; - } - - // Make sure body exists, at least, in case IE gets a little overzealous (ticket #5443). - if ( !document.body ) { - return setTimeout( jQuery.ready ); - } - - // Remember that the DOM is ready - jQuery.isReady = true; - - // If a normal DOM Ready event fired, decrement, and wait if need be - if ( wait !== true && --jQuery.readyWait > 0 ) { - return; - } - - // If there are functions bound, to execute - readyList.resolveWith( document, [ jQuery ] ); - - // Trigger any bound ready events - if ( jQuery.fn.triggerHandler ) { - jQuery( document ).triggerHandler( "ready" ); - jQuery( document ).off( "ready" ); - } - } -}); - -/** - * Clean-up method for dom ready events - */ -function detach() { - if ( document.addEventListener ) { - document.removeEventListener( "DOMContentLoaded", completed, false ); - window.removeEventListener( "load", completed, false ); - - } else { - document.detachEvent( "onreadystatechange", completed ); - window.detachEvent( "onload", completed ); - } -} - -/** - * The ready event handler and self cleanup method - */ -function completed() { - // readyState === "complete" is good enough for us to call the dom ready in oldIE - if ( document.addEventListener || event.type === "load" || document.readyState === "complete" ) { - detach(); - jQuery.ready(); - } -} - -jQuery.ready.promise = function( obj ) { - if ( !readyList ) { - - readyList = jQuery.Deferred(); - - // Catch cases where $(document).ready() is called after the browser event has already occurred. - // we once tried to use readyState "interactive" here, but it caused issues like the one - // discovered by ChrisS here: http://bugs.jquery.com/ticket/12282#comment:15 - if ( document.readyState === "complete" ) { - // Handle it asynchronously to allow scripts the opportunity to delay ready - setTimeout( jQuery.ready ); - - // Standards-based browsers support DOMContentLoaded - } else if ( document.addEventListener ) { - // Use the handy event callback - document.addEventListener( "DOMContentLoaded", completed, false ); - - // A fallback to window.onload, that will always work - window.addEventListener( "load", completed, false ); - - // If IE event model is used - } else { - // Ensure firing before onload, maybe late but safe also for iframes - document.attachEvent( "onreadystatechange", completed ); - - // A fallback to window.onload, that will always work - window.attachEvent( "onload", completed ); - - // If IE and not a frame - // continually check to see if the document is ready - var top = false; - - try { - top = window.frameElement == null && document.documentElement; - } catch(e) {} - - if ( top && top.doScroll ) { - (function doScrollCheck() { - if ( !jQuery.isReady ) { - - try { - // Use the trick by Diego Perini - // http://javascript.nwbox.com/IEContentLoaded/ - top.doScroll("left"); - } catch(e) { - return setTimeout( doScrollCheck, 50 ); - } - - // detach all dom ready events - detach(); - - // and execute any waiting functions - jQuery.ready(); - } - })(); - } - } - } - return readyList.promise( obj ); -}; - - -var strundefined = typeof undefined; - - - -// Support: IE<9 -// Iteration over object's inherited properties before its own -var i; -for ( i in jQuery( support ) ) { - break; -} -support.ownLast = i !== "0"; - -// Note: most support tests are defined in their respective modules. -// false until the test is run -support.inlineBlockNeedsLayout = false; - -// Execute ASAP in case we need to set body.style.zoom -jQuery(function() { - // Minified: var a,b,c,d - var val, div, body, container; - - body = document.getElementsByTagName( "body" )[ 0 ]; - if ( !body || !body.style ) { - // Return for frameset docs that don't have a body - return; - } - - // Setup - div = document.createElement( "div" ); - container = document.createElement( "div" ); - container.style.cssText = "position:absolute;border:0;width:0;height:0;top:0;left:-9999px"; - body.appendChild( container ).appendChild( div ); - - if ( typeof div.style.zoom !== strundefined ) { - // Support: IE<8 - // Check if natively block-level elements act like inline-block - // elements when setting their display to 'inline' and giving - // them layout - div.style.cssText = "display:inline;margin:0;border:0;padding:1px;width:1px;zoom:1"; - - support.inlineBlockNeedsLayout = val = div.offsetWidth === 3; - if ( val ) { - // Prevent IE 6 from affecting layout for positioned elements #11048 - // Prevent IE from shrinking the body in IE 7 mode #12869 - // Support: IE<8 - body.style.zoom = 1; - } - } - - body.removeChild( container ); -}); - - - - -(function() { - var div = document.createElement( "div" ); - - // Execute the test only if not already executed in another module. - if (support.deleteExpando == null) { - // Support: IE<9 - support.deleteExpando = true; - try { - delete div.test; - } catch( e ) { - support.deleteExpando = false; - } - } - - // Null elements to avoid leaks in IE. - div = null; -})(); - - -/** - * Determines whether an object can have data - */ -jQuery.acceptData = function( elem ) { - var noData = jQuery.noData[ (elem.nodeName + " ").toLowerCase() ], - nodeType = +elem.nodeType || 1; - - // Do not set data on non-element DOM nodes because it will not be cleared (#8335). - return nodeType !== 1 && nodeType !== 9 ? - false : - - // Nodes accept data unless otherwise specified; rejection can be conditional - !noData || noData !== true && elem.getAttribute("classid") === noData; -}; - - -var rbrace = /^(?:\{[\w\W]*\}|\[[\w\W]*\])$/, - rmultiDash = /([A-Z])/g; - -function dataAttr( elem, key, data ) { - // If nothing was found internally, try to fetch any - // data from the HTML5 data-* attribute - if ( data === undefined && elem.nodeType === 1 ) { - - var name = "data-" + key.replace( rmultiDash, "-$1" ).toLowerCase(); - - data = elem.getAttribute( name ); - - if ( typeof data === "string" ) { - try { - data = data === "true" ? true : - data === "false" ? false : - data === "null" ? null : - // Only convert to a number if it doesn't change the string - +data + "" === data ? +data : - rbrace.test( data ) ? jQuery.parseJSON( data ) : - data; - } catch( e ) {} - - // Make sure we set the data so it isn't changed later - jQuery.data( elem, key, data ); - - } else { - data = undefined; - } - } - - return data; -} - -// checks a cache object for emptiness -function isEmptyDataObject( obj ) { - var name; - for ( name in obj ) { - - // if the public data object is empty, the private is still empty - if ( name === "data" && jQuery.isEmptyObject( obj[name] ) ) { - continue; - } - if ( name !== "toJSON" ) { - return false; - } - } - - return true; -} - -function internalData( elem, name, data, pvt /* Internal Use Only */ ) { - if ( !jQuery.acceptData( elem ) ) { - return; - } - - var ret, thisCache, - internalKey = jQuery.expando, - - // We have to handle DOM nodes and JS objects differently because IE6-7 - // can't GC object references properly across the DOM-JS boundary - isNode = elem.nodeType, - - // Only DOM nodes need the global jQuery cache; JS object data is - // attached directly to the object so GC can occur automatically - cache = isNode ? jQuery.cache : elem, - - // Only defining an ID for JS objects if its cache already exists allows - // the code to shortcut on the same path as a DOM node with no cache - id = isNode ? elem[ internalKey ] : elem[ internalKey ] && internalKey; - - // Avoid doing any more work than we need to when trying to get data on an - // object that has no data at all - if ( (!id || !cache[id] || (!pvt && !cache[id].data)) && data === undefined && typeof name === "string" ) { - return; - } - - if ( !id ) { - // Only DOM nodes need a new unique ID for each element since their data - // ends up in the global cache - if ( isNode ) { - id = elem[ internalKey ] = deletedIds.pop() || jQuery.guid++; - } else { - id = internalKey; - } - } - - if ( !cache[ id ] ) { - // Avoid exposing jQuery metadata on plain JS objects when the object - // is serialized using JSON.stringify - cache[ id ] = isNode ? {} : { toJSON: jQuery.noop }; - } - - // An object can be passed to jQuery.data instead of a key/value pair; this gets - // shallow copied over onto the existing cache - if ( typeof name === "object" || typeof name === "function" ) { - if ( pvt ) { - cache[ id ] = jQuery.extend( cache[ id ], name ); - } else { - cache[ id ].data = jQuery.extend( cache[ id ].data, name ); - } - } - - thisCache = cache[ id ]; - - // jQuery data() is stored in a separate object inside the object's internal data - // cache in order to avoid key collisions between internal data and user-defined - // data. - if ( !pvt ) { - if ( !thisCache.data ) { - thisCache.data = {}; - } - - thisCache = thisCache.data; - } - - if ( data !== undefined ) { - thisCache[ jQuery.camelCase( name ) ] = data; - } - - // Check for both converted-to-camel and non-converted data property names - // If a data property was specified - if ( typeof name === "string" ) { - - // First Try to find as-is property data - ret = thisCache[ name ]; - - // Test for null|undefined property data - if ( ret == null ) { - - // Try to find the camelCased property - ret = thisCache[ jQuery.camelCase( name ) ]; - } - } else { - ret = thisCache; - } - - return ret; -} - -function internalRemoveData( elem, name, pvt ) { - if ( !jQuery.acceptData( elem ) ) { - return; - } - - var thisCache, i, - isNode = elem.nodeType, - - // See jQuery.data for more information - cache = isNode ? jQuery.cache : elem, - id = isNode ? elem[ jQuery.expando ] : jQuery.expando; - - // If there is already no cache entry for this object, there is no - // purpose in continuing - if ( !cache[ id ] ) { - return; - } - - if ( name ) { - - thisCache = pvt ? cache[ id ] : cache[ id ].data; - - if ( thisCache ) { - - // Support array or space separated string names for data keys - if ( !jQuery.isArray( name ) ) { - - // try the string as a key before any manipulation - if ( name in thisCache ) { - name = [ name ]; - } else { - - // split the camel cased version by spaces unless a key with the spaces exists - name = jQuery.camelCase( name ); - if ( name in thisCache ) { - name = [ name ]; - } else { - name = name.split(" "); - } - } - } else { - // If "name" is an array of keys... - // When data is initially created, via ("key", "val") signature, - // keys will be converted to camelCase. - // Since there is no way to tell _how_ a key was added, remove - // both plain key and camelCase key. #12786 - // This will only penalize the array argument path. - name = name.concat( jQuery.map( name, jQuery.camelCase ) ); - } - - i = name.length; - while ( i-- ) { - delete thisCache[ name[i] ]; - } - - // If there is no data left in the cache, we want to continue - // and let the cache object itself get destroyed - if ( pvt ? !isEmptyDataObject(thisCache) : !jQuery.isEmptyObject(thisCache) ) { - return; - } - } - } - - // See jQuery.data for more information - if ( !pvt ) { - delete cache[ id ].data; - - // Don't destroy the parent cache unless the internal data object - // had been the only thing left in it - if ( !isEmptyDataObject( cache[ id ] ) ) { - return; - } - } - - // Destroy the cache - if ( isNode ) { - jQuery.cleanData( [ elem ], true ); - - // Use delete when supported for expandos or `cache` is not a window per isWindow (#10080) - /* jshint eqeqeq: false */ - } else if ( support.deleteExpando || cache != cache.window ) { - /* jshint eqeqeq: true */ - delete cache[ id ]; - - // When all else fails, null - } else { - cache[ id ] = null; - } -} - -jQuery.extend({ - cache: {}, - - // The following elements (space-suffixed to avoid Object.prototype collisions) - // throw uncatchable exceptions if you attempt to set expando properties - noData: { - "applet ": true, - "embed ": true, - // ...but Flash objects (which have this classid) *can* handle expandos - "object ": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" - }, - - hasData: function( elem ) { - elem = elem.nodeType ? jQuery.cache[ elem[jQuery.expando] ] : elem[ jQuery.expando ]; - return !!elem && !isEmptyDataObject( elem ); - }, - - data: function( elem, name, data ) { - return internalData( elem, name, data ); - }, - - removeData: function( elem, name ) { - return internalRemoveData( elem, name ); - }, - - // For internal use only. - _data: function( elem, name, data ) { - return internalData( elem, name, data, true ); - }, - - _removeData: function( elem, name ) { - return internalRemoveData( elem, name, true ); - } -}); - -jQuery.fn.extend({ - data: function( key, value ) { - var i, name, data, - elem = this[0], - attrs = elem && elem.attributes; - - // Special expections of .data basically thwart jQuery.access, - // so implement the relevant behavior ourselves - - // Gets all values - if ( key === undefined ) { - if ( this.length ) { - data = jQuery.data( elem ); - - if ( elem.nodeType === 1 && !jQuery._data( elem, "parsedAttrs" ) ) { - i = attrs.length; - while ( i-- ) { - - // Support: IE11+ - // The attrs elements can be null (#14894) - if ( attrs[ i ] ) { - name = attrs[ i ].name; - if ( name.indexOf( "data-" ) === 0 ) { - name = jQuery.camelCase( name.slice(5) ); - dataAttr( elem, name, data[ name ] ); - } - } - } - jQuery._data( elem, "parsedAttrs", true ); - } - } - - return data; - } - - // Sets multiple values - if ( typeof key === "object" ) { - return this.each(function() { - jQuery.data( this, key ); - }); - } - - return arguments.length > 1 ? - - // Sets one value - this.each(function() { - jQuery.data( this, key, value ); - }) : - - // Gets one value - // Try to fetch any internally stored data first - elem ? dataAttr( elem, key, jQuery.data( elem, key ) ) : undefined; - }, - - removeData: function( key ) { - return this.each(function() { - jQuery.removeData( this, key ); - }); - } -}); - - -jQuery.extend({ - queue: function( elem, type, data ) { - var queue; - - if ( elem ) { - type = ( type || "fx" ) + "queue"; - queue = jQuery._data( elem, type ); - - // Speed up dequeue by getting out quickly if this is just a lookup - if ( data ) { - if ( !queue || jQuery.isArray(data) ) { - queue = jQuery._data( elem, type, jQuery.makeArray(data) ); - } else { - queue.push( data ); - } - } - return queue || []; - } - }, - - dequeue: function( elem, type ) { - type = type || "fx"; - - var queue = jQuery.queue( elem, type ), - startLength = queue.length, - fn = queue.shift(), - hooks = jQuery._queueHooks( elem, type ), - next = function() { - jQuery.dequeue( elem, type ); - }; - - // If the fx queue is dequeued, always remove the progress sentinel - if ( fn === "inprogress" ) { - fn = queue.shift(); - startLength--; - } - - if ( fn ) { - - // Add a progress sentinel to prevent the fx queue from being - // automatically dequeued - if ( type === "fx" ) { - queue.unshift( "inprogress" ); - } - - // clear up the last queue stop function - delete hooks.stop; - fn.call( elem, next, hooks ); - } - - if ( !startLength && hooks ) { - hooks.empty.fire(); - } - }, - - // not intended for public consumption - generates a queueHooks object, or returns the current one - _queueHooks: function( elem, type ) { - var key = type + "queueHooks"; - return jQuery._data( elem, key ) || jQuery._data( elem, key, { - empty: jQuery.Callbacks("once memory").add(function() { - jQuery._removeData( elem, type + "queue" ); - jQuery._removeData( elem, key ); - }) - }); - } -}); - -jQuery.fn.extend({ - queue: function( type, data ) { - var setter = 2; - - if ( typeof type !== "string" ) { - data = type; - type = "fx"; - setter--; - } - - if ( arguments.length < setter ) { - return jQuery.queue( this[0], type ); - } - - return data === undefined ? - this : - this.each(function() { - var queue = jQuery.queue( this, type, data ); - - // ensure a hooks for this queue - jQuery._queueHooks( this, type ); - - if ( type === "fx" && queue[0] !== "inprogress" ) { - jQuery.dequeue( this, type ); - } - }); - }, - dequeue: function( type ) { - return this.each(function() { - jQuery.dequeue( this, type ); - }); - }, - clearQueue: function( type ) { - return this.queue( type || "fx", [] ); - }, - // Get a promise resolved when queues of a certain type - // are emptied (fx is the type by default) - promise: function( type, obj ) { - var tmp, - count = 1, - defer = jQuery.Deferred(), - elements = this, - i = this.length, - resolve = function() { - if ( !( --count ) ) { - defer.resolveWith( elements, [ elements ] ); - } - }; - - if ( typeof type !== "string" ) { - obj = type; - type = undefined; - } - type = type || "fx"; - - while ( i-- ) { - tmp = jQuery._data( elements[ i ], type + "queueHooks" ); - if ( tmp && tmp.empty ) { - count++; - tmp.empty.add( resolve ); - } - } - resolve(); - return defer.promise( obj ); - } -}); -var pnum = (/[+-]?(?:\d*\.|)\d+(?:[eE][+-]?\d+|)/).source; - -var cssExpand = [ "Top", "Right", "Bottom", "Left" ]; - -var isHidden = function( elem, el ) { - // isHidden might be called from jQuery#filter function; - // in that case, element will be second argument - elem = el || elem; - return jQuery.css( elem, "display" ) === "none" || !jQuery.contains( elem.ownerDocument, elem ); - }; - - - -// Multifunctional method to get and set values of a collection -// The value/s can optionally be executed if it's a function -var access = jQuery.access = function( elems, fn, key, value, chainable, emptyGet, raw ) { - var i = 0, - length = elems.length, - bulk = key == null; - - // Sets many values - if ( jQuery.type( key ) === "object" ) { - chainable = true; - for ( i in key ) { - jQuery.access( elems, fn, i, key[i], true, emptyGet, raw ); - } - - // Sets one value - } else if ( value !== undefined ) { - chainable = true; - - if ( !jQuery.isFunction( value ) ) { - raw = true; - } - - if ( bulk ) { - // Bulk operations run against the entire set - if ( raw ) { - fn.call( elems, value ); - fn = null; - - // ...except when executing function values - } else { - bulk = fn; - fn = function( elem, key, value ) { - return bulk.call( jQuery( elem ), value ); - }; - } - } - - if ( fn ) { - for ( ; i < length; i++ ) { - fn( elems[i], key, raw ? value : value.call( elems[i], i, fn( elems[i], key ) ) ); - } - } - } - - return chainable ? - elems : - - // Gets - bulk ? - fn.call( elems ) : - length ? fn( elems[0], key ) : emptyGet; -}; -var rcheckableType = (/^(?:checkbox|radio)$/i); - - - -(function() { - // Minified: var a,b,c - var input = document.createElement( "input" ), - div = document.createElement( "div" ), - fragment = document.createDocumentFragment(); - - // Setup - div.innerHTML = "
a"; - - // IE strips leading whitespace when .innerHTML is used - support.leadingWhitespace = div.firstChild.nodeType === 3; - - // Make sure that tbody elements aren't automatically inserted - // IE will insert them into empty tables - support.tbody = !div.getElementsByTagName( "tbody" ).length; - - // Make sure that link elements get serialized correctly by innerHTML - // This requires a wrapper element in IE - support.htmlSerialize = !!div.getElementsByTagName( "link" ).length; - - // Makes sure cloning an html5 element does not cause problems - // Where outerHTML is undefined, this still works - support.html5Clone = - document.createElement( "nav" ).cloneNode( true ).outerHTML !== "<:nav>"; - - // Check if a disconnected checkbox will retain its checked - // value of true after appended to the DOM (IE6/7) - input.type = "checkbox"; - input.checked = true; - fragment.appendChild( input ); - support.appendChecked = input.checked; - - // Make sure textarea (and checkbox) defaultValue is properly cloned - // Support: IE6-IE11+ - div.innerHTML = ""; - support.noCloneChecked = !!div.cloneNode( true ).lastChild.defaultValue; - - // #11217 - WebKit loses check when the name is after the checked attribute - fragment.appendChild( div ); - div.innerHTML = ""; - - // Support: Safari 5.1, iOS 5.1, Android 4.x, Android 2.3 - // old WebKit doesn't clone checked state correctly in fragments - support.checkClone = div.cloneNode( true ).cloneNode( true ).lastChild.checked; - - // Support: IE<9 - // Opera does not clone events (and typeof div.attachEvent === undefined). - // IE9-10 clones events bound via attachEvent, but they don't trigger with .click() - support.noCloneEvent = true; - if ( div.attachEvent ) { - div.attachEvent( "onclick", function() { - support.noCloneEvent = false; - }); - - div.cloneNode( true ).click(); - } - - // Execute the test only if not already executed in another module. - if (support.deleteExpando == null) { - // Support: IE<9 - support.deleteExpando = true; - try { - delete div.test; - } catch( e ) { - support.deleteExpando = false; - } - } -})(); - - -(function() { - var i, eventName, - div = document.createElement( "div" ); - - // Support: IE<9 (lack submit/change bubble), Firefox 23+ (lack focusin event) - for ( i in { submit: true, change: true, focusin: true }) { - eventName = "on" + i; - - if ( !(support[ i + "Bubbles" ] = eventName in window) ) { - // Beware of CSP restrictions (https://developer.mozilla.org/en/Security/CSP) - div.setAttribute( eventName, "t" ); - support[ i + "Bubbles" ] = div.attributes[ eventName ].expando === false; - } - } - - // Null elements to avoid leaks in IE. - div = null; -})(); - - -var rformElems = /^(?:input|select|textarea)$/i, - rkeyEvent = /^key/, - rmouseEvent = /^(?:mouse|pointer|contextmenu)|click/, - rfocusMorph = /^(?:focusinfocus|focusoutblur)$/, - rtypenamespace = /^([^.]*)(?:\.(.+)|)$/; - -function returnTrue() { - return true; -} - -function returnFalse() { - return false; -} - -function safeActiveElement() { - try { - return document.activeElement; - } catch ( err ) { } -} - -/* - * Helper functions for managing events -- not part of the public interface. - * Props to Dean Edwards' addEvent library for many of the ideas. - */ -jQuery.event = { - - global: {}, - - add: function( elem, types, handler, data, selector ) { - var tmp, events, t, handleObjIn, - special, eventHandle, handleObj, - handlers, type, namespaces, origType, - elemData = jQuery._data( elem ); - - // Don't attach events to noData or text/comment nodes (but allow plain objects) - if ( !elemData ) { - return; - } - - // Caller can pass in an object of custom data in lieu of the handler - if ( handler.handler ) { - handleObjIn = handler; - handler = handleObjIn.handler; - selector = handleObjIn.selector; - } - - // Make sure that the handler has a unique ID, used to find/remove it later - if ( !handler.guid ) { - handler.guid = jQuery.guid++; - } - - // Init the element's event structure and main handler, if this is the first - if ( !(events = elemData.events) ) { - events = elemData.events = {}; - } - if ( !(eventHandle = elemData.handle) ) { - eventHandle = elemData.handle = function( e ) { - // Discard the second event of a jQuery.event.trigger() and - // when an event is called after a page has unloaded - return typeof jQuery !== strundefined && (!e || jQuery.event.triggered !== e.type) ? - jQuery.event.dispatch.apply( eventHandle.elem, arguments ) : - undefined; - }; - // Add elem as a property of the handle fn to prevent a memory leak with IE non-native events - eventHandle.elem = elem; - } - - // Handle multiple events separated by a space - types = ( types || "" ).match( rnotwhite ) || [ "" ]; - t = types.length; - while ( t-- ) { - tmp = rtypenamespace.exec( types[t] ) || []; - type = origType = tmp[1]; - namespaces = ( tmp[2] || "" ).split( "." ).sort(); - - // There *must* be a type, no attaching namespace-only handlers - if ( !type ) { - continue; - } - - // If event changes its type, use the special event handlers for the changed type - special = jQuery.event.special[ type ] || {}; - - // If selector defined, determine special event api type, otherwise given type - type = ( selector ? special.delegateType : special.bindType ) || type; - - // Update special based on newly reset type - special = jQuery.event.special[ type ] || {}; - - // handleObj is passed to all event handlers - handleObj = jQuery.extend({ - type: type, - origType: origType, - data: data, - handler: handler, - guid: handler.guid, - selector: selector, - needsContext: selector && jQuery.expr.match.needsContext.test( selector ), - namespace: namespaces.join(".") - }, handleObjIn ); - - // Init the event handler queue if we're the first - if ( !(handlers = events[ type ]) ) { - handlers = events[ type ] = []; - handlers.delegateCount = 0; - - // Only use addEventListener/attachEvent if the special events handler returns false - if ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) { - // Bind the global event handler to the element - if ( elem.addEventListener ) { - elem.addEventListener( type, eventHandle, false ); - - } else if ( elem.attachEvent ) { - elem.attachEvent( "on" + type, eventHandle ); - } - } - } - - if ( special.add ) { - special.add.call( elem, handleObj ); - - if ( !handleObj.handler.guid ) { - handleObj.handler.guid = handler.guid; - } - } - - // Add to the element's handler list, delegates in front - if ( selector ) { - handlers.splice( handlers.delegateCount++, 0, handleObj ); - } else { - handlers.push( handleObj ); - } - - // Keep track of which events have ever been used, for event optimization - jQuery.event.global[ type ] = true; - } - - // Nullify elem to prevent memory leaks in IE - elem = null; - }, - - // Detach an event or set of events from an element - remove: function( elem, types, handler, selector, mappedTypes ) { - var j, handleObj, tmp, - origCount, t, events, - special, handlers, type, - namespaces, origType, - elemData = jQuery.hasData( elem ) && jQuery._data( elem ); - - if ( !elemData || !(events = elemData.events) ) { - return; - } - - // Once for each type.namespace in types; type may be omitted - types = ( types || "" ).match( rnotwhite ) || [ "" ]; - t = types.length; - while ( t-- ) { - tmp = rtypenamespace.exec( types[t] ) || []; - type = origType = tmp[1]; - namespaces = ( tmp[2] || "" ).split( "." ).sort(); - - // Unbind all events (on this namespace, if provided) for the element - if ( !type ) { - for ( type in events ) { - jQuery.event.remove( elem, type + types[ t ], handler, selector, true ); - } - continue; - } - - special = jQuery.event.special[ type ] || {}; - type = ( selector ? special.delegateType : special.bindType ) || type; - handlers = events[ type ] || []; - tmp = tmp[2] && new RegExp( "(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)" ); - - // Remove matching events - origCount = j = handlers.length; - while ( j-- ) { - handleObj = handlers[ j ]; - - if ( ( mappedTypes || origType === handleObj.origType ) && - ( !handler || handler.guid === handleObj.guid ) && - ( !tmp || tmp.test( handleObj.namespace ) ) && - ( !selector || selector === handleObj.selector || selector === "**" && handleObj.selector ) ) { - handlers.splice( j, 1 ); - - if ( handleObj.selector ) { - handlers.delegateCount--; - } - if ( special.remove ) { - special.remove.call( elem, handleObj ); - } - } - } - - // Remove generic event handler if we removed something and no more handlers exist - // (avoids potential for endless recursion during removal of special event handlers) - if ( origCount && !handlers.length ) { - if ( !special.teardown || special.teardown.call( elem, namespaces, elemData.handle ) === false ) { - jQuery.removeEvent( elem, type, elemData.handle ); - } - - delete events[ type ]; - } - } - - // Remove the expando if it's no longer used - if ( jQuery.isEmptyObject( events ) ) { - delete elemData.handle; - - // removeData also checks for emptiness and clears the expando if empty - // so use it instead of delete - jQuery._removeData( elem, "events" ); - } - }, - - trigger: function( event, data, elem, onlyHandlers ) { - var handle, ontype, cur, - bubbleType, special, tmp, i, - eventPath = [ elem || document ], - type = hasOwn.call( event, "type" ) ? event.type : event, - namespaces = hasOwn.call( event, "namespace" ) ? event.namespace.split(".") : []; - - cur = tmp = elem = elem || document; - - // Don't do events on text and comment nodes - if ( elem.nodeType === 3 || elem.nodeType === 8 ) { - return; - } - - // focus/blur morphs to focusin/out; ensure we're not firing them right now - if ( rfocusMorph.test( type + jQuery.event.triggered ) ) { - return; - } - - if ( type.indexOf(".") >= 0 ) { - // Namespaced trigger; create a regexp to match event type in handle() - namespaces = type.split("."); - type = namespaces.shift(); - namespaces.sort(); - } - ontype = type.indexOf(":") < 0 && "on" + type; - - // Caller can pass in a jQuery.Event object, Object, or just an event type string - event = event[ jQuery.expando ] ? - event : - new jQuery.Event( type, typeof event === "object" && event ); - - // Trigger bitmask: & 1 for native handlers; & 2 for jQuery (always true) - event.isTrigger = onlyHandlers ? 2 : 3; - event.namespace = namespaces.join("."); - event.namespace_re = event.namespace ? - new RegExp( "(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)" ) : - null; - - // Clean up the event in case it is being reused - event.result = undefined; - if ( !event.target ) { - event.target = elem; - } - - // Clone any incoming data and prepend the event, creating the handler arg list - data = data == null ? - [ event ] : - jQuery.makeArray( data, [ event ] ); - - // Allow special events to draw outside the lines - special = jQuery.event.special[ type ] || {}; - if ( !onlyHandlers && special.trigger && special.trigger.apply( elem, data ) === false ) { - return; - } - - // Determine event propagation path in advance, per W3C events spec (#9951) - // Bubble up to document, then to window; watch for a global ownerDocument var (#9724) - if ( !onlyHandlers && !special.noBubble && !jQuery.isWindow( elem ) ) { - - bubbleType = special.delegateType || type; - if ( !rfocusMorph.test( bubbleType + type ) ) { - cur = cur.parentNode; - } - for ( ; cur; cur = cur.parentNode ) { - eventPath.push( cur ); - tmp = cur; - } - - // Only add window if we got to document (e.g., not plain obj or detached DOM) - if ( tmp === (elem.ownerDocument || document) ) { - eventPath.push( tmp.defaultView || tmp.parentWindow || window ); - } - } - - // Fire handlers on the event path - i = 0; - while ( (cur = eventPath[i++]) && !event.isPropagationStopped() ) { - - event.type = i > 1 ? - bubbleType : - special.bindType || type; - - // jQuery handler - handle = ( jQuery._data( cur, "events" ) || {} )[ event.type ] && jQuery._data( cur, "handle" ); - if ( handle ) { - handle.apply( cur, data ); - } - - // Native handler - handle = ontype && cur[ ontype ]; - if ( handle && handle.apply && jQuery.acceptData( cur ) ) { - event.result = handle.apply( cur, data ); - if ( event.result === false ) { - event.preventDefault(); - } - } - } - event.type = type; - - // If nobody prevented the default action, do it now - if ( !onlyHandlers && !event.isDefaultPrevented() ) { - - if ( (!special._default || special._default.apply( eventPath.pop(), data ) === false) && - jQuery.acceptData( elem ) ) { - - // Call a native DOM method on the target with the same name name as the event. - // Can't use an .isFunction() check here because IE6/7 fails that test. - // Don't do default actions on window, that's where global variables be (#6170) - if ( ontype && elem[ type ] && !jQuery.isWindow( elem ) ) { - - // Don't re-trigger an onFOO event when we call its FOO() method - tmp = elem[ ontype ]; - - if ( tmp ) { - elem[ ontype ] = null; - } - - // Prevent re-triggering of the same event, since we already bubbled it above - jQuery.event.triggered = type; - try { - elem[ type ](); - } catch ( e ) { - // IE<9 dies on focus/blur to hidden element (#1486,#12518) - // only reproducible on winXP IE8 native, not IE9 in IE8 mode - } - jQuery.event.triggered = undefined; - - if ( tmp ) { - elem[ ontype ] = tmp; - } - } - } - } - - return event.result; - }, - - dispatch: function( event ) { - - // Make a writable jQuery.Event from the native event object - event = jQuery.event.fix( event ); - - var i, ret, handleObj, matched, j, - handlerQueue = [], - args = slice.call( arguments ), - handlers = ( jQuery._data( this, "events" ) || {} )[ event.type ] || [], - special = jQuery.event.special[ event.type ] || {}; - - // Use the fix-ed jQuery.Event rather than the (read-only) native event - args[0] = event; - event.delegateTarget = this; - - // Call the preDispatch hook for the mapped type, and let it bail if desired - if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) { - return; - } - - // Determine handlers - handlerQueue = jQuery.event.handlers.call( this, event, handlers ); - - // Run delegates first; they may want to stop propagation beneath us - i = 0; - while ( (matched = handlerQueue[ i++ ]) && !event.isPropagationStopped() ) { - event.currentTarget = matched.elem; - - j = 0; - while ( (handleObj = matched.handlers[ j++ ]) && !event.isImmediatePropagationStopped() ) { - - // Triggered event must either 1) have no namespace, or - // 2) have namespace(s) a subset or equal to those in the bound event (both can have no namespace). - if ( !event.namespace_re || event.namespace_re.test( handleObj.namespace ) ) { - - event.handleObj = handleObj; - event.data = handleObj.data; - - ret = ( (jQuery.event.special[ handleObj.origType ] || {}).handle || handleObj.handler ) - .apply( matched.elem, args ); - - if ( ret !== undefined ) { - if ( (event.result = ret) === false ) { - event.preventDefault(); - event.stopPropagation(); - } - } - } - } - } - - // Call the postDispatch hook for the mapped type - if ( special.postDispatch ) { - special.postDispatch.call( this, event ); - } - - return event.result; - }, - - handlers: function( event, handlers ) { - var sel, handleObj, matches, i, - handlerQueue = [], - delegateCount = handlers.delegateCount, - cur = event.target; - - // Find delegate handlers - // Black-hole SVG instance trees (#13180) - // Avoid non-left-click bubbling in Firefox (#3861) - if ( delegateCount && cur.nodeType && (!event.button || event.type !== "click") ) { - - /* jshint eqeqeq: false */ - for ( ; cur != this; cur = cur.parentNode || this ) { - /* jshint eqeqeq: true */ - - // Don't check non-elements (#13208) - // Don't process clicks on disabled elements (#6911, #8165, #11382, #11764) - if ( cur.nodeType === 1 && (cur.disabled !== true || event.type !== "click") ) { - matches = []; - for ( i = 0; i < delegateCount; i++ ) { - handleObj = handlers[ i ]; - - // Don't conflict with Object.prototype properties (#13203) - sel = handleObj.selector + " "; - - if ( matches[ sel ] === undefined ) { - matches[ sel ] = handleObj.needsContext ? - jQuery( sel, this ).index( cur ) >= 0 : - jQuery.find( sel, this, null, [ cur ] ).length; - } - if ( matches[ sel ] ) { - matches.push( handleObj ); - } - } - if ( matches.length ) { - handlerQueue.push({ elem: cur, handlers: matches }); - } - } - } - } - - // Add the remaining (directly-bound) handlers - if ( delegateCount < handlers.length ) { - handlerQueue.push({ elem: this, handlers: handlers.slice( delegateCount ) }); - } - - return handlerQueue; - }, - - fix: function( event ) { - if ( event[ jQuery.expando ] ) { - return event; - } - - // Create a writable copy of the event object and normalize some properties - var i, prop, copy, - type = event.type, - originalEvent = event, - fixHook = this.fixHooks[ type ]; - - if ( !fixHook ) { - this.fixHooks[ type ] = fixHook = - rmouseEvent.test( type ) ? this.mouseHooks : - rkeyEvent.test( type ) ? this.keyHooks : - {}; - } - copy = fixHook.props ? this.props.concat( fixHook.props ) : this.props; - - event = new jQuery.Event( originalEvent ); - - i = copy.length; - while ( i-- ) { - prop = copy[ i ]; - event[ prop ] = originalEvent[ prop ]; - } - - // Support: IE<9 - // Fix target property (#1925) - if ( !event.target ) { - event.target = originalEvent.srcElement || document; - } - - // Support: Chrome 23+, Safari? - // Target should not be a text node (#504, #13143) - if ( event.target.nodeType === 3 ) { - event.target = event.target.parentNode; - } - - // Support: IE<9 - // For mouse/key events, metaKey==false if it's undefined (#3368, #11328) - event.metaKey = !!event.metaKey; - - return fixHook.filter ? fixHook.filter( event, originalEvent ) : event; - }, - - // Includes some event props shared by KeyEvent and MouseEvent - props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "), - - fixHooks: {}, - - keyHooks: { - props: "char charCode key keyCode".split(" "), - filter: function( event, original ) { - - // Add which for key events - if ( event.which == null ) { - event.which = original.charCode != null ? original.charCode : original.keyCode; - } - - return event; - } - }, - - mouseHooks: { - props: "button buttons clientX clientY fromElement offsetX offsetY pageX pageY screenX screenY toElement".split(" "), - filter: function( event, original ) { - var body, eventDoc, doc, - button = original.button, - fromElement = original.fromElement; - - // Calculate pageX/Y if missing and clientX/Y available - if ( event.pageX == null && original.clientX != null ) { - eventDoc = event.target.ownerDocument || document; - doc = eventDoc.documentElement; - body = eventDoc.body; - - event.pageX = original.clientX + ( doc && doc.scrollLeft || body && body.scrollLeft || 0 ) - ( doc && doc.clientLeft || body && body.clientLeft || 0 ); - event.pageY = original.clientY + ( doc && doc.scrollTop || body && body.scrollTop || 0 ) - ( doc && doc.clientTop || body && body.clientTop || 0 ); - } - - // Add relatedTarget, if necessary - if ( !event.relatedTarget && fromElement ) { - event.relatedTarget = fromElement === event.target ? original.toElement : fromElement; - } - - // Add which for click: 1 === left; 2 === middle; 3 === right - // Note: button is not normalized, so don't use it - if ( !event.which && button !== undefined ) { - event.which = ( button & 1 ? 1 : ( button & 2 ? 3 : ( button & 4 ? 2 : 0 ) ) ); - } - - return event; - } - }, - - special: { - load: { - // Prevent triggered image.load events from bubbling to window.load - noBubble: true - }, - focus: { - // Fire native event if possible so blur/focus sequence is correct - trigger: function() { - if ( this !== safeActiveElement() && this.focus ) { - try { - this.focus(); - return false; - } catch ( e ) { - // Support: IE<9 - // If we error on focus to hidden element (#1486, #12518), - // let .trigger() run the handlers - } - } - }, - delegateType: "focusin" - }, - blur: { - trigger: function() { - if ( this === safeActiveElement() && this.blur ) { - this.blur(); - return false; - } - }, - delegateType: "focusout" - }, - click: { - // For checkbox, fire native event so checked state will be right - trigger: function() { - if ( jQuery.nodeName( this, "input" ) && this.type === "checkbox" && this.click ) { - this.click(); - return false; - } - }, - - // For cross-browser consistency, don't fire native .click() on links - _default: function( event ) { - return jQuery.nodeName( event.target, "a" ); - } - }, - - beforeunload: { - postDispatch: function( event ) { - - // Support: Firefox 20+ - // Firefox doesn't alert if the returnValue field is not set. - if ( event.result !== undefined && event.originalEvent ) { - event.originalEvent.returnValue = event.result; - } - } - } - }, - - simulate: function( type, elem, event, bubble ) { - // Piggyback on a donor event to simulate a different one. - // Fake originalEvent to avoid donor's stopPropagation, but if the - // simulated event prevents default then we do the same on the donor. - var e = jQuery.extend( - new jQuery.Event(), - event, - { - type: type, - isSimulated: true, - originalEvent: {} - } - ); - if ( bubble ) { - jQuery.event.trigger( e, null, elem ); - } else { - jQuery.event.dispatch.call( elem, e ); - } - if ( e.isDefaultPrevented() ) { - event.preventDefault(); - } - } -}; - -jQuery.removeEvent = document.removeEventListener ? - function( elem, type, handle ) { - if ( elem.removeEventListener ) { - elem.removeEventListener( type, handle, false ); - } - } : - function( elem, type, handle ) { - var name = "on" + type; - - if ( elem.detachEvent ) { - - // #8545, #7054, preventing memory leaks for custom events in IE6-8 - // detachEvent needed property on element, by name of that event, to properly expose it to GC - if ( typeof elem[ name ] === strundefined ) { - elem[ name ] = null; - } - - elem.detachEvent( name, handle ); - } - }; - -jQuery.Event = function( src, props ) { - // Allow instantiation without the 'new' keyword - if ( !(this instanceof jQuery.Event) ) { - return new jQuery.Event( src, props ); - } - - // Event object - if ( src && src.type ) { - this.originalEvent = src; - this.type = src.type; - - // Events bubbling up the document may have been marked as prevented - // by a handler lower down the tree; reflect the correct value. - this.isDefaultPrevented = src.defaultPrevented || - src.defaultPrevented === undefined && - // Support: IE < 9, Android < 4.0 - src.returnValue === false ? - returnTrue : - returnFalse; - - // Event type - } else { - this.type = src; - } - - // Put explicitly provided properties onto the event object - if ( props ) { - jQuery.extend( this, props ); - } - - // Create a timestamp if incoming event doesn't have one - this.timeStamp = src && src.timeStamp || jQuery.now(); - - // Mark it as fixed - this[ jQuery.expando ] = true; -}; - -// jQuery.Event is based on DOM3 Events as specified by the ECMAScript Language Binding -// http://www.w3.org/TR/2003/WD-DOM-Level-3-Events-20030331/ecma-script-binding.html -jQuery.Event.prototype = { - isDefaultPrevented: returnFalse, - isPropagationStopped: returnFalse, - isImmediatePropagationStopped: returnFalse, - - preventDefault: function() { - var e = this.originalEvent; - - this.isDefaultPrevented = returnTrue; - if ( !e ) { - return; - } - - // If preventDefault exists, run it on the original event - if ( e.preventDefault ) { - e.preventDefault(); - - // Support: IE - // Otherwise set the returnValue property of the original event to false - } else { - e.returnValue = false; - } - }, - stopPropagation: function() { - var e = this.originalEvent; - - this.isPropagationStopped = returnTrue; - if ( !e ) { - return; - } - // If stopPropagation exists, run it on the original event - if ( e.stopPropagation ) { - e.stopPropagation(); - } - - // Support: IE - // Set the cancelBubble property of the original event to true - e.cancelBubble = true; - }, - stopImmediatePropagation: function() { - var e = this.originalEvent; - - this.isImmediatePropagationStopped = returnTrue; - - if ( e && e.stopImmediatePropagation ) { - e.stopImmediatePropagation(); - } - - this.stopPropagation(); - } -}; - -// Create mouseenter/leave events using mouseover/out and event-time checks -jQuery.each({ - mouseenter: "mouseover", - mouseleave: "mouseout", - pointerenter: "pointerover", - pointerleave: "pointerout" -}, function( orig, fix ) { - jQuery.event.special[ orig ] = { - delegateType: fix, - bindType: fix, - - handle: function( event ) { - var ret, - target = this, - related = event.relatedTarget, - handleObj = event.handleObj; - - // For mousenter/leave call the handler if related is outside the target. - // NB: No relatedTarget if the mouse left/entered the browser window - if ( !related || (related !== target && !jQuery.contains( target, related )) ) { - event.type = handleObj.origType; - ret = handleObj.handler.apply( this, arguments ); - event.type = fix; - } - return ret; - } - }; -}); - -// IE submit delegation -if ( !support.submitBubbles ) { - - jQuery.event.special.submit = { - setup: function() { - // Only need this for delegated form submit events - if ( jQuery.nodeName( this, "form" ) ) { - return false; - } - - // Lazy-add a submit handler when a descendant form may potentially be submitted - jQuery.event.add( this, "click._submit keypress._submit", function( e ) { - // Node name check avoids a VML-related crash in IE (#9807) - var elem = e.target, - form = jQuery.nodeName( elem, "input" ) || jQuery.nodeName( elem, "button" ) ? elem.form : undefined; - if ( form && !jQuery._data( form, "submitBubbles" ) ) { - jQuery.event.add( form, "submit._submit", function( event ) { - event._submit_bubble = true; - }); - jQuery._data( form, "submitBubbles", true ); - } - }); - // return undefined since we don't need an event listener - }, - - postDispatch: function( event ) { - // If form was submitted by the user, bubble the event up the tree - if ( event._submit_bubble ) { - delete event._submit_bubble; - if ( this.parentNode && !event.isTrigger ) { - jQuery.event.simulate( "submit", this.parentNode, event, true ); - } - } - }, - - teardown: function() { - // Only need this for delegated form submit events - if ( jQuery.nodeName( this, "form" ) ) { - return false; - } - - // Remove delegated handlers; cleanData eventually reaps submit handlers attached above - jQuery.event.remove( this, "._submit" ); - } - }; -} - -// IE change delegation and checkbox/radio fix -if ( !support.changeBubbles ) { - - jQuery.event.special.change = { - - setup: function() { - - if ( rformElems.test( this.nodeName ) ) { - // IE doesn't fire change on a check/radio until blur; trigger it on click - // after a propertychange. Eat the blur-change in special.change.handle. - // This still fires onchange a second time for check/radio after blur. - if ( this.type === "checkbox" || this.type === "radio" ) { - jQuery.event.add( this, "propertychange._change", function( event ) { - if ( event.originalEvent.propertyName === "checked" ) { - this._just_changed = true; - } - }); - jQuery.event.add( this, "click._change", function( event ) { - if ( this._just_changed && !event.isTrigger ) { - this._just_changed = false; - } - // Allow triggered, simulated change events (#11500) - jQuery.event.simulate( "change", this, event, true ); - }); - } - return false; - } - // Delegated event; lazy-add a change handler on descendant inputs - jQuery.event.add( this, "beforeactivate._change", function( e ) { - var elem = e.target; - - if ( rformElems.test( elem.nodeName ) && !jQuery._data( elem, "changeBubbles" ) ) { - jQuery.event.add( elem, "change._change", function( event ) { - if ( this.parentNode && !event.isSimulated && !event.isTrigger ) { - jQuery.event.simulate( "change", this.parentNode, event, true ); - } - }); - jQuery._data( elem, "changeBubbles", true ); - } - }); - }, - - handle: function( event ) { - var elem = event.target; - - // Swallow native change events from checkbox/radio, we already triggered them above - if ( this !== elem || event.isSimulated || event.isTrigger || (elem.type !== "radio" && elem.type !== "checkbox") ) { - return event.handleObj.handler.apply( this, arguments ); - } - }, - - teardown: function() { - jQuery.event.remove( this, "._change" ); - - return !rformElems.test( this.nodeName ); - } - }; -} - -// Create "bubbling" focus and blur events -if ( !support.focusinBubbles ) { - jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) { - - // Attach a single capturing handler on the document while someone wants focusin/focusout - var handler = function( event ) { - jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ), true ); - }; - - jQuery.event.special[ fix ] = { - setup: function() { - var doc = this.ownerDocument || this, - attaches = jQuery._data( doc, fix ); - - if ( !attaches ) { - doc.addEventListener( orig, handler, true ); - } - jQuery._data( doc, fix, ( attaches || 0 ) + 1 ); - }, - teardown: function() { - var doc = this.ownerDocument || this, - attaches = jQuery._data( doc, fix ) - 1; - - if ( !attaches ) { - doc.removeEventListener( orig, handler, true ); - jQuery._removeData( doc, fix ); - } else { - jQuery._data( doc, fix, attaches ); - } - } - }; - }); -} - -jQuery.fn.extend({ - - on: function( types, selector, data, fn, /*INTERNAL*/ one ) { - var type, origFn; - - // Types can be a map of types/handlers - if ( typeof types === "object" ) { - // ( types-Object, selector, data ) - if ( typeof selector !== "string" ) { - // ( types-Object, data ) - data = data || selector; - selector = undefined; - } - for ( type in types ) { - this.on( type, selector, data, types[ type ], one ); - } - return this; - } - - if ( data == null && fn == null ) { - // ( types, fn ) - fn = selector; - data = selector = undefined; - } else if ( fn == null ) { - if ( typeof selector === "string" ) { - // ( types, selector, fn ) - fn = data; - data = undefined; - } else { - // ( types, data, fn ) - fn = data; - data = selector; - selector = undefined; - } - } - if ( fn === false ) { - fn = returnFalse; - } else if ( !fn ) { - return this; - } - - if ( one === 1 ) { - origFn = fn; - fn = function( event ) { - // Can use an empty set, since event contains the info - jQuery().off( event ); - return origFn.apply( this, arguments ); - }; - // Use same guid so caller can remove using origFn - fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ ); - } - return this.each( function() { - jQuery.event.add( this, types, fn, data, selector ); - }); - }, - one: function( types, selector, data, fn ) { - return this.on( types, selector, data, fn, 1 ); - }, - off: function( types, selector, fn ) { - var handleObj, type; - if ( types && types.preventDefault && types.handleObj ) { - // ( event ) dispatched jQuery.Event - handleObj = types.handleObj; - jQuery( types.delegateTarget ).off( - handleObj.namespace ? handleObj.origType + "." + handleObj.namespace : handleObj.origType, - handleObj.selector, - handleObj.handler - ); - return this; - } - if ( typeof types === "object" ) { - // ( types-object [, selector] ) - for ( type in types ) { - this.off( type, selector, types[ type ] ); - } - return this; - } - if ( selector === false || typeof selector === "function" ) { - // ( types [, fn] ) - fn = selector; - selector = undefined; - } - if ( fn === false ) { - fn = returnFalse; - } - return this.each(function() { - jQuery.event.remove( this, types, fn, selector ); - }); - }, - - trigger: function( type, data ) { - return this.each(function() { - jQuery.event.trigger( type, data, this ); - }); - }, - triggerHandler: function( type, data ) { - var elem = this[0]; - if ( elem ) { - return jQuery.event.trigger( type, data, elem, true ); - } - } -}); - - -function createSafeFragment( document ) { - var list = nodeNames.split( "|" ), - safeFrag = document.createDocumentFragment(); - - if ( safeFrag.createElement ) { - while ( list.length ) { - safeFrag.createElement( - list.pop() - ); - } - } - return safeFrag; -} - -var nodeNames = "abbr|article|aside|audio|bdi|canvas|data|datalist|details|figcaption|figure|footer|" + - "header|hgroup|mark|meter|nav|output|progress|section|summary|time|video", - rinlinejQuery = / jQuery\d+="(?:null|\d+)"/g, - rnoshimcache = new RegExp("<(?:" + nodeNames + ")[\\s/>]", "i"), - rleadingWhitespace = /^\s+/, - rxhtmlTag = /<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/gi, - rtagName = /<([\w:]+)/, - rtbody = /\s*$/g, - - // We have to close these tags to support XHTML (#13200) - wrapMap = { - option: [ 1, "" ], - legend: [ 1, "
", "
" ], - area: [ 1, "", "" ], - param: [ 1, "", "" ], - thead: [ 1, "", "
" ], - tr: [ 2, "", "
" ], - col: [ 2, "", "
" ], - td: [ 3, "", "
" ], - - // IE6-8 can't serialize link, script, style, or any html5 (NoScope) tags, - // unless wrapped in a div with non-breaking characters in front of it. - _default: support.htmlSerialize ? [ 0, "", "" ] : [ 1, "X
", "
" ] - }, - safeFragment = createSafeFragment( document ), - fragmentDiv = safeFragment.appendChild( document.createElement("div") ); - -wrapMap.optgroup = wrapMap.option; -wrapMap.tbody = wrapMap.tfoot = wrapMap.colgroup = wrapMap.caption = wrapMap.thead; -wrapMap.th = wrapMap.td; - -function getAll( context, tag ) { - var elems, elem, - i = 0, - found = typeof context.getElementsByTagName !== strundefined ? context.getElementsByTagName( tag || "*" ) : - typeof context.querySelectorAll !== strundefined ? context.querySelectorAll( tag || "*" ) : - undefined; - - if ( !found ) { - for ( found = [], elems = context.childNodes || context; (elem = elems[i]) != null; i++ ) { - if ( !tag || jQuery.nodeName( elem, tag ) ) { - found.push( elem ); - } else { - jQuery.merge( found, getAll( elem, tag ) ); - } - } - } - - return tag === undefined || tag && jQuery.nodeName( context, tag ) ? - jQuery.merge( [ context ], found ) : - found; -} - -// Used in buildFragment, fixes the defaultChecked property -function fixDefaultChecked( elem ) { - if ( rcheckableType.test( elem.type ) ) { - elem.defaultChecked = elem.checked; - } -} - -// Support: IE<8 -// Manipulating tables requires a tbody -function manipulationTarget( elem, content ) { - return jQuery.nodeName( elem, "table" ) && - jQuery.nodeName( content.nodeType !== 11 ? content : content.firstChild, "tr" ) ? - - elem.getElementsByTagName("tbody")[0] || - elem.appendChild( elem.ownerDocument.createElement("tbody") ) : - elem; -} - -// Replace/restore the type attribute of script elements for safe DOM manipulation -function disableScript( elem ) { - elem.type = (jQuery.find.attr( elem, "type" ) !== null) + "/" + elem.type; - return elem; -} -function restoreScript( elem ) { - var match = rscriptTypeMasked.exec( elem.type ); - if ( match ) { - elem.type = match[1]; - } else { - elem.removeAttribute("type"); - } - return elem; -} - -// Mark scripts as having already been evaluated -function setGlobalEval( elems, refElements ) { - var elem, - i = 0; - for ( ; (elem = elems[i]) != null; i++ ) { - jQuery._data( elem, "globalEval", !refElements || jQuery._data( refElements[i], "globalEval" ) ); - } -} - -function cloneCopyEvent( src, dest ) { - - if ( dest.nodeType !== 1 || !jQuery.hasData( src ) ) { - return; - } - - var type, i, l, - oldData = jQuery._data( src ), - curData = jQuery._data( dest, oldData ), - events = oldData.events; - - if ( events ) { - delete curData.handle; - curData.events = {}; - - for ( type in events ) { - for ( i = 0, l = events[ type ].length; i < l; i++ ) { - jQuery.event.add( dest, type, events[ type ][ i ] ); - } - } - } - - // make the cloned public data object a copy from the original - if ( curData.data ) { - curData.data = jQuery.extend( {}, curData.data ); - } -} - -function fixCloneNodeIssues( src, dest ) { - var nodeName, e, data; - - // We do not need to do anything for non-Elements - if ( dest.nodeType !== 1 ) { - return; - } - - nodeName = dest.nodeName.toLowerCase(); - - // IE6-8 copies events bound via attachEvent when using cloneNode. - if ( !support.noCloneEvent && dest[ jQuery.expando ] ) { - data = jQuery._data( dest ); - - for ( e in data.events ) { - jQuery.removeEvent( dest, e, data.handle ); - } - - // Event data gets referenced instead of copied if the expando gets copied too - dest.removeAttribute( jQuery.expando ); - } - - // IE blanks contents when cloning scripts, and tries to evaluate newly-set text - if ( nodeName === "script" && dest.text !== src.text ) { - disableScript( dest ).text = src.text; - restoreScript( dest ); - - // IE6-10 improperly clones children of object elements using classid. - // IE10 throws NoModificationAllowedError if parent is null, #12132. - } else if ( nodeName === "object" ) { - if ( dest.parentNode ) { - dest.outerHTML = src.outerHTML; - } - - // This path appears unavoidable for IE9. When cloning an object - // element in IE9, the outerHTML strategy above is not sufficient. - // If the src has innerHTML and the destination does not, - // copy the src.innerHTML into the dest.innerHTML. #10324 - if ( support.html5Clone && ( src.innerHTML && !jQuery.trim(dest.innerHTML) ) ) { - dest.innerHTML = src.innerHTML; - } - - } else if ( nodeName === "input" && rcheckableType.test( src.type ) ) { - // IE6-8 fails to persist the checked state of a cloned checkbox - // or radio button. Worse, IE6-7 fail to give the cloned element - // a checked appearance if the defaultChecked value isn't also set - - dest.defaultChecked = dest.checked = src.checked; - - // IE6-7 get confused and end up setting the value of a cloned - // checkbox/radio button to an empty string instead of "on" - if ( dest.value !== src.value ) { - dest.value = src.value; - } - - // IE6-8 fails to return the selected option to the default selected - // state when cloning options - } else if ( nodeName === "option" ) { - dest.defaultSelected = dest.selected = src.defaultSelected; - - // IE6-8 fails to set the defaultValue to the correct value when - // cloning other types of input fields - } else if ( nodeName === "input" || nodeName === "textarea" ) { - dest.defaultValue = src.defaultValue; - } -} - -jQuery.extend({ - clone: function( elem, dataAndEvents, deepDataAndEvents ) { - var destElements, node, clone, i, srcElements, - inPage = jQuery.contains( elem.ownerDocument, elem ); - - if ( support.html5Clone || jQuery.isXMLDoc(elem) || !rnoshimcache.test( "<" + elem.nodeName + ">" ) ) { - clone = elem.cloneNode( true ); - - // IE<=8 does not properly clone detached, unknown element nodes - } else { - fragmentDiv.innerHTML = elem.outerHTML; - fragmentDiv.removeChild( clone = fragmentDiv.firstChild ); - } - - if ( (!support.noCloneEvent || !support.noCloneChecked) && - (elem.nodeType === 1 || elem.nodeType === 11) && !jQuery.isXMLDoc(elem) ) { - - // We eschew Sizzle here for performance reasons: http://jsperf.com/getall-vs-sizzle/2 - destElements = getAll( clone ); - srcElements = getAll( elem ); - - // Fix all IE cloning issues - for ( i = 0; (node = srcElements[i]) != null; ++i ) { - // Ensure that the destination node is not null; Fixes #9587 - if ( destElements[i] ) { - fixCloneNodeIssues( node, destElements[i] ); - } - } - } - - // Copy the events from the original to the clone - if ( dataAndEvents ) { - if ( deepDataAndEvents ) { - srcElements = srcElements || getAll( elem ); - destElements = destElements || getAll( clone ); - - for ( i = 0; (node = srcElements[i]) != null; i++ ) { - cloneCopyEvent( node, destElements[i] ); - } - } else { - cloneCopyEvent( elem, clone ); - } - } - - // Preserve script evaluation history - destElements = getAll( clone, "script" ); - if ( destElements.length > 0 ) { - setGlobalEval( destElements, !inPage && getAll( elem, "script" ) ); - } - - destElements = srcElements = node = null; - - // Return the cloned set - return clone; - }, - - buildFragment: function( elems, context, scripts, selection ) { - var j, elem, contains, - tmp, tag, tbody, wrap, - l = elems.length, - - // Ensure a safe fragment - safe = createSafeFragment( context ), - - nodes = [], - i = 0; - - for ( ; i < l; i++ ) { - elem = elems[ i ]; - - if ( elem || elem === 0 ) { - - // Add nodes directly - if ( jQuery.type( elem ) === "object" ) { - jQuery.merge( nodes, elem.nodeType ? [ elem ] : elem ); - - // Convert non-html into a text node - } else if ( !rhtml.test( elem ) ) { - nodes.push( context.createTextNode( elem ) ); - - // Convert html into DOM nodes - } else { - tmp = tmp || safe.appendChild( context.createElement("div") ); - - // Deserialize a standard representation - tag = (rtagName.exec( elem ) || [ "", "" ])[ 1 ].toLowerCase(); - wrap = wrapMap[ tag ] || wrapMap._default; - - tmp.innerHTML = wrap[1] + elem.replace( rxhtmlTag, "<$1>" ) + wrap[2]; - - // Descend through wrappers to the right content - j = wrap[0]; - while ( j-- ) { - tmp = tmp.lastChild; - } - - // Manually add leading whitespace removed by IE - if ( !support.leadingWhitespace && rleadingWhitespace.test( elem ) ) { - nodes.push( context.createTextNode( rleadingWhitespace.exec( elem )[0] ) ); - } - - // Remove IE's autoinserted from table fragments - if ( !support.tbody ) { - - // String was a , *may* have spurious - elem = tag === "table" && !rtbody.test( elem ) ? - tmp.firstChild : - - // String was a bare or - wrap[1] === "
" && !rtbody.test( elem ) ? - tmp : - 0; - - j = elem && elem.childNodes.length; - while ( j-- ) { - if ( jQuery.nodeName( (tbody = elem.childNodes[j]), "tbody" ) && !tbody.childNodes.length ) { - elem.removeChild( tbody ); - } - } - } - - jQuery.merge( nodes, tmp.childNodes ); - - // Fix #12392 for WebKit and IE > 9 - tmp.textContent = ""; - - // Fix #12392 for oldIE - while ( tmp.firstChild ) { - tmp.removeChild( tmp.firstChild ); - } - - // Remember the top-level container for proper cleanup - tmp = safe.lastChild; - } - } - } - - // Fix #11356: Clear elements from fragment - if ( tmp ) { - safe.removeChild( tmp ); - } - - // Reset defaultChecked for any radios and checkboxes - // about to be appended to the DOM in IE 6/7 (#8060) - if ( !support.appendChecked ) { - jQuery.grep( getAll( nodes, "input" ), fixDefaultChecked ); - } - - i = 0; - while ( (elem = nodes[ i++ ]) ) { - - // #4087 - If origin and destination elements are the same, and this is - // that element, do not do anything - if ( selection && jQuery.inArray( elem, selection ) !== -1 ) { - continue; - } - - contains = jQuery.contains( elem.ownerDocument, elem ); - - // Append to fragment - tmp = getAll( safe.appendChild( elem ), "script" ); - - // Preserve script evaluation history - if ( contains ) { - setGlobalEval( tmp ); - } - - // Capture executables - if ( scripts ) { - j = 0; - while ( (elem = tmp[ j++ ]) ) { - if ( rscriptType.test( elem.type || "" ) ) { - scripts.push( elem ); - } - } - } - } - - tmp = null; - - return safe; - }, - - cleanData: function( elems, /* internal */ acceptData ) { - var elem, type, id, data, - i = 0, - internalKey = jQuery.expando, - cache = jQuery.cache, - deleteExpando = support.deleteExpando, - special = jQuery.event.special; - - for ( ; (elem = elems[i]) != null; i++ ) { - if ( acceptData || jQuery.acceptData( elem ) ) { - - id = elem[ internalKey ]; - data = id && cache[ id ]; - - if ( data ) { - if ( data.events ) { - for ( type in data.events ) { - if ( special[ type ] ) { - jQuery.event.remove( elem, type ); - - // This is a shortcut to avoid jQuery.event.remove's overhead - } else { - jQuery.removeEvent( elem, type, data.handle ); - } - } - } - - // Remove cache only if it was not already removed by jQuery.event.remove - if ( cache[ id ] ) { - - delete cache[ id ]; - - // IE does not allow us to delete expando properties from nodes, - // nor does it have a removeAttribute function on Document nodes; - // we must handle all of these cases - if ( deleteExpando ) { - delete elem[ internalKey ]; - - } else if ( typeof elem.removeAttribute !== strundefined ) { - elem.removeAttribute( internalKey ); - - } else { - elem[ internalKey ] = null; - } - - deletedIds.push( id ); - } - } - } - } - } -}); - -jQuery.fn.extend({ - text: function( value ) { - return access( this, function( value ) { - return value === undefined ? - jQuery.text( this ) : - this.empty().append( ( this[0] && this[0].ownerDocument || document ).createTextNode( value ) ); - }, null, value, arguments.length ); - }, - - append: function() { - return this.domManip( arguments, function( elem ) { - if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { - var target = manipulationTarget( this, elem ); - target.appendChild( elem ); - } - }); - }, - - prepend: function() { - return this.domManip( arguments, function( elem ) { - if ( this.nodeType === 1 || this.nodeType === 11 || this.nodeType === 9 ) { - var target = manipulationTarget( this, elem ); - target.insertBefore( elem, target.firstChild ); - } - }); - }, - - before: function() { - return this.domManip( arguments, function( elem ) { - if ( this.parentNode ) { - this.parentNode.insertBefore( elem, this ); - } - }); - }, - - after: function() { - return this.domManip( arguments, function( elem ) { - if ( this.parentNode ) { - this.parentNode.insertBefore( elem, this.nextSibling ); - } - }); - }, - - remove: function( selector, keepData /* Internal Use Only */ ) { - var elem, - elems = selector ? jQuery.filter( selector, this ) : this, - i = 0; - - for ( ; (elem = elems[i]) != null; i++ ) { - - if ( !keepData && elem.nodeType === 1 ) { - jQuery.cleanData( getAll( elem ) ); - } - - if ( elem.parentNode ) { - if ( keepData && jQuery.contains( elem.ownerDocument, elem ) ) { - setGlobalEval( getAll( elem, "script" ) ); - } - elem.parentNode.removeChild( elem ); - } - } - - return this; - }, - - empty: function() { - var elem, - i = 0; - - for ( ; (elem = this[i]) != null; i++ ) { - // Remove element nodes and prevent memory leaks - if ( elem.nodeType === 1 ) { - jQuery.cleanData( getAll( elem, false ) ); - } - - // Remove any remaining nodes - while ( elem.firstChild ) { - elem.removeChild( elem.firstChild ); - } - - // If this is a select, ensure that it displays empty (#12336) - // Support: IE<9 - if ( elem.options && jQuery.nodeName( elem, "select" ) ) { - elem.options.length = 0; - } - } - - return this; - }, - - clone: function( dataAndEvents, deepDataAndEvents ) { - dataAndEvents = dataAndEvents == null ? false : dataAndEvents; - deepDataAndEvents = deepDataAndEvents == null ? dataAndEvents : deepDataAndEvents; - - return this.map(function() { - return jQuery.clone( this, dataAndEvents, deepDataAndEvents ); - }); - }, - - html: function( value ) { - return access( this, function( value ) { - var elem = this[ 0 ] || {}, - i = 0, - l = this.length; - - if ( value === undefined ) { - return elem.nodeType === 1 ? - elem.innerHTML.replace( rinlinejQuery, "" ) : - undefined; - } - - // See if we can take a shortcut and just use innerHTML - if ( typeof value === "string" && !rnoInnerhtml.test( value ) && - ( support.htmlSerialize || !rnoshimcache.test( value ) ) && - ( support.leadingWhitespace || !rleadingWhitespace.test( value ) ) && - !wrapMap[ (rtagName.exec( value ) || [ "", "" ])[ 1 ].toLowerCase() ] ) { - - value = value.replace( rxhtmlTag, "<$1>" ); - - try { - for (; i < l; i++ ) { - // Remove element nodes and prevent memory leaks - elem = this[i] || {}; - if ( elem.nodeType === 1 ) { - jQuery.cleanData( getAll( elem, false ) ); - elem.innerHTML = value; - } - } - - elem = 0; - - // If using innerHTML throws an exception, use the fallback method - } catch(e) {} - } - - if ( elem ) { - this.empty().append( value ); - } - }, null, value, arguments.length ); - }, - - replaceWith: function() { - var arg = arguments[ 0 ]; - - // Make the changes, replacing each context element with the new content - this.domManip( arguments, function( elem ) { - arg = this.parentNode; - - jQuery.cleanData( getAll( this ) ); - - if ( arg ) { - arg.replaceChild( elem, this ); - } - }); - - // Force removal if there was no new content (e.g., from empty arguments) - return arg && (arg.length || arg.nodeType) ? this : this.remove(); - }, - - detach: function( selector ) { - return this.remove( selector, true ); - }, - - domManip: function( args, callback ) { - - // Flatten any nested arrays - args = concat.apply( [], args ); - - var first, node, hasScripts, - scripts, doc, fragment, - i = 0, - l = this.length, - set = this, - iNoClone = l - 1, - value = args[0], - isFunction = jQuery.isFunction( value ); - - // We can't cloneNode fragments that contain checked, in WebKit - if ( isFunction || - ( l > 1 && typeof value === "string" && - !support.checkClone && rchecked.test( value ) ) ) { - return this.each(function( index ) { - var self = set.eq( index ); - if ( isFunction ) { - args[0] = value.call( this, index, self.html() ); - } - self.domManip( args, callback ); - }); - } - - if ( l ) { - fragment = jQuery.buildFragment( args, this[ 0 ].ownerDocument, false, this ); - first = fragment.firstChild; - - if ( fragment.childNodes.length === 1 ) { - fragment = first; - } - - if ( first ) { - scripts = jQuery.map( getAll( fragment, "script" ), disableScript ); - hasScripts = scripts.length; - - // Use the original fragment for the last item instead of the first because it can end up - // being emptied incorrectly in certain situations (#8070). - for ( ; i < l; i++ ) { - node = fragment; - - if ( i !== iNoClone ) { - node = jQuery.clone( node, true, true ); - - // Keep references to cloned scripts for later restoration - if ( hasScripts ) { - jQuery.merge( scripts, getAll( node, "script" ) ); - } - } - - callback.call( this[i], node, i ); - } - - if ( hasScripts ) { - doc = scripts[ scripts.length - 1 ].ownerDocument; - - // Reenable scripts - jQuery.map( scripts, restoreScript ); - - // Evaluate executable scripts on first document insertion - for ( i = 0; i < hasScripts; i++ ) { - node = scripts[ i ]; - if ( rscriptType.test( node.type || "" ) && - !jQuery._data( node, "globalEval" ) && jQuery.contains( doc, node ) ) { - - if ( node.src ) { - // Optional AJAX dependency, but won't run scripts if not present - if ( jQuery._evalUrl ) { - jQuery._evalUrl( node.src ); - } - } else { - jQuery.globalEval( ( node.text || node.textContent || node.innerHTML || "" ).replace( rcleanScript, "" ) ); - } - } - } - } - - // Fix #11809: Avoid leaking memory - fragment = first = null; - } - } - - return this; - } -}); - -jQuery.each({ - appendTo: "append", - prependTo: "prepend", - insertBefore: "before", - insertAfter: "after", - replaceAll: "replaceWith" -}, function( name, original ) { - jQuery.fn[ name ] = function( selector ) { - var elems, - i = 0, - ret = [], - insert = jQuery( selector ), - last = insert.length - 1; - - for ( ; i <= last; i++ ) { - elems = i === last ? this : this.clone(true); - jQuery( insert[i] )[ original ]( elems ); - - // Modern browsers can apply jQuery collections as arrays, but oldIE needs a .get() - push.apply( ret, elems.get() ); - } - - return this.pushStack( ret ); - }; -}); - - -var iframe, - elemdisplay = {}; - -/** - * Retrieve the actual display of a element - * @param {String} name nodeName of the element - * @param {Object} doc Document object - */ -// Called only from within defaultDisplay -function actualDisplay( name, doc ) { - var style, - elem = jQuery( doc.createElement( name ) ).appendTo( doc.body ), - - // getDefaultComputedStyle might be reliably used only on attached element - display = window.getDefaultComputedStyle && ( style = window.getDefaultComputedStyle( elem[ 0 ] ) ) ? - - // Use of this method is a temporary fix (more like optmization) until something better comes along, - // since it was removed from specification and supported only in FF - style.display : jQuery.css( elem[ 0 ], "display" ); - - // We don't have any data stored on the element, - // so use "detach" method as fast way to get rid of the element - elem.detach(); - - return display; -} - -/** - * Try to determine the default display value of an element - * @param {String} nodeName - */ -function defaultDisplay( nodeName ) { - var doc = document, - display = elemdisplay[ nodeName ]; - - if ( !display ) { - display = actualDisplay( nodeName, doc ); - - // If the simple way fails, read from inside an iframe - if ( display === "none" || !display ) { - - // Use the already-created iframe if possible - iframe = (iframe || jQuery( "