Skip to content

A simple tool for using NetMHCpan and NetMHCIIpan using multiple CPUs in a Python environment.

Notifications You must be signed in to change notification settings

kevinkovalchik/PyNetMHCpan

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PyNetMHCpan

A simple tool for using NetMHCpan and NetMHCIIpan using multiple CPUs in a Python environment.

Usage:

from PyNetMHCpan import NetMHCpan

h = NetMHCpan.Helper(mhc_class='I',
                     alleles=['HLA-A03:02', 'HLA-B07:02'],
                     n_threads=12)

# If the configuration needs to be updates, a prompt should appear (i.e. you need to set the paths
# to NetMHCpan/NetMHCIIpan).

# If it is the first time you have run the program and a prompt did not appear, you should
# run the following line (as it is incredibly unlikely that the default paths to NetMHCpan and
# NetMHCIIpan are correct for your system)

h.update_config()

# A prompt will appear showing your the current configuration and asking if you would like to update.

# Note that if you only use one of the tools (i.e. NetMHCpan or NetMHCIIpan) you can leave the path to
# the other as it is or change it to something nonsensical. The program will only check the path of the tool
# it needs (according to the mhc_class parameter).

h.add_peptides(['N.ENSDESYSEEEEEMPDSD.E',
                'F.EC[+57]NNSESGYLYC[+57]C[+57]GTC[+57]Y.Y',
                'K.AM[+15]IM[+15]C[+57]QGC[+57]GAFC[+57]HDDC[+57]IG.P'])

# Note that there is no need to remove modifications or previous/next amino acids from your 
# search engine output! That is automatically taken care of.

# now run the predictor.

h.make_predictions()

# Once it is done, access them as follows:

h.predictions

# returns a pandas dataframe:

#               Peptide      Allele     Rank      Binder
# 0   ECNNSESGYLYCCGTCY  HLA-A03:02   85.000  Non-binder
# 1  ENSDESYSEEEEEMPDSD  HLA-A03:02  100.000  Non-binder
# 2  AMIMCQGCGAFCHDDCIG  HLA-A03:02  100.000  Non-binder
# 3   ECNNSESGYLYCCGTCY  HLA-B07:02   92.500  Non-binder
# 4  ENSDESYSEEEEEMPDSD  HLA-B07:02  100.000  Non-binder
# 5  AMIMCQGCGAFCHDDCIG  HLA-B07:02  100.000  Non-binder

# Note that the dataframe is in long format. If you have multiple alleles, there will be multiple 
# obeservations for each peptide (one per allele).

The binding cutoffs for the Binder field are as follows:

MHC class Strong binders Weak binders
I 0.5 2.0
II 2.0 10.0

For more information on NetMHCpan and NetMHCIIpan or to download them see the following:

Note that these tools only run on Linux and MacOS machines. On Windows you can set up the Windows Subsystem for Linux, which will let you run a Linux terminal! I haven't tried it out with PyNetMHCpan, but I assume so long are you are also running it from the Linux terminal it should work.

About

A simple tool for using NetMHCpan and NetMHCIIpan using multiple CPUs in a Python environment.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages