mhcflurry

Peptide-MHC I binding affinity prediction

https://github.com/openvax/mhcflurry

Science Score: 49.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
    Found 4 DOI reference(s) in README
  • Academic publication links
  • Committers with academic emails
    4 of 13 committers (30.8%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.8%) to scientific vocabulary

Keywords from Contributors

dna deep-neural-networks distributed bioinformatics genomics
Last synced: 7 months ago · JSON representation

Repository

Peptide-MHC I binding affinity prediction

Basic Info
Statistics
  • Stars: 215
  • Watchers: 19
  • Forks: 66
  • Open Issues: 12
  • Releases: 31
Created almost 11 years ago · Last pushed 10 months ago
Metadata Files
Readme Contributing License Code of conduct

README.md

Build Status Coverage Status Open In Colab

mhcflurry

MHC I ligand prediction package with competitive accuracy and a fast and documented implementation.

MHCflurry implements class I peptide/MHC binding affinity prediction. The current version provides pan-MHC I predictors supporting any MHC allele of known sequence. MHCflurry runs on Python 3.9+ using the tensorflow neural network library. It exposes command-line and Python library interfaces.

MHCflurry also includes two expermental predictors, an "antigen processing" predictor that attempts to model MHC allele-independent effects such as proteosomal cleavage and a "presentation" predictor that integrates processing predictions with binding affinity predictions to give a composite "presentation score." Both models are trained on mass spec-identified MHC ligands.

If you find MHCflurry useful in your research please cite:

T. O'Donnell, A. Rubinsteyn, U. Laserson. "MHCflurry 2.0: Improved pan-allele prediction of MHC I-presented peptides by incorporating antigen processing," Cell Systems, 2020. https://doi.org/10.1016/j.cels.2020.06.010

T. O’Donnell, A. Rubinsteyn, M. Bonsack, A. B. Riemer, U. Laserson, and J. Hammerbacher, "MHCflurry: Open-Source Class I MHC Binding Affinity Prediction," Cell Systems, 2018. https://doi.org/10.1016/j.cels.2018.05.014

Please file an issue if you have questions or encounter problems.

Have a bugfix or other contribution? We would love your help. See our contributing guidelines.

Try it now

You can generate MHCflurry predictions without any setup by running our Google colaboratory notebook.

Installation (pip)

Install the package:

$ pip install mhcflurry

Download our datasets and trained models:

$ mhcflurry-downloads fetch

You can now generate predictions:

``` $ mhcflurry-predict \ --alleles HLA-A0201 HLA-A0301 \ --peptides SIINFEKL SIINFEKD SIINFEKQ \ --out /tmp/predictions.csv

Wrote: /tmp/predictions.csv ```

Or scan protein sequences for potential epitopes:

``` $ mhcflurry-predict-scan \ --sequences MFVFLVLLPLVSSQCVNLTTRTQLPPAYTNSFTRGVYYPDKVFRSSVLHS \ --alleles HLA-A*02:01 \ --out /tmp/predictions.csv

Wrote: /tmp/predictions.csv
```

See the documentation for more details.

Docker

You can also try the latest (GitHub master) version of MHCflurry using the Docker image hosted on Dockerhub by running:

$ docker run -p 9999:9999 --rm openvax/mhcflurry:latest

This will start a jupyter notebook server in an environment that has MHCflurry installed. Go to http://localhost:9999 in a browser to use it.

To build the Docker image yourself, from a checkout run:

$ docker build -t mhcflurry:latest . $ docker run -p 9999:9999 --rm mhcflurry:latest

Predicted sequence motifs

Sequence logos for the binding motifs learned by MHCflurry BA are available here.

Common issues and fixes

Problems downloading data and models

Some users have reported HTTP connection issues when using mhcflurry-downloads fetch. As a workaround, you can download the data manually (e.g. using wget) and then use mhcflurry-downloads just to copy the data to the right place.

To do this, first get the URL(s) of the downloads you need using mhcflurry-downloads url:

$ mhcflurry-downloads url models_class1_presentation https://github.com/openvax/mhcflurry/releases/download/1.6.0/models_class1_presentation.20200205.tar.bz2 ```

Then make a directory and download the needed files to this directory:

$ mkdir downloads $ wget --directory-prefix downloads https://github.com/openvax/mhcflurry/releases/download/1.6.0/models_class1_presentation.20200205.tar.bz2

HTTP request sent, awaiting response... 200 OK Length: 72616448 (69M) [application/octet-stream] Saving to: 'downloads/modelsclass1presentation.20200205.tar.bz2' ```

Now call mhcflurry-downloads fetch with the --already-downloaded-dir option to indicate that the downloads should be retrived from the specified directory:

$ mhcflurry-downloads fetch models_class1_presentation --already-downloaded-dir downloads

Owner

  • Name: OpenVax
  • Login: openvax
  • Kind: organization
  • Email: hello@openvax.org
  • Location: New York, NY

Open source software for personalized cancer vaccines

GitHub Events

Total
  • Create event: 5
  • Release event: 1
  • Issues event: 6
  • Watch event: 19
  • Member event: 1
  • Issue comment event: 30
  • Push event: 8
  • Pull request review comment event: 10
  • Pull request review event: 11
  • Pull request event: 12
  • Fork event: 4
Last Year
  • Create event: 5
  • Release event: 1
  • Issues event: 6
  • Watch event: 19
  • Member event: 1
  • Issue comment event: 30
  • Push event: 8
  • Pull request review comment event: 10
  • Pull request review event: 11
  • Pull request event: 12
  • Fork event: 4

Committers

Last synced: over 2 years ago

All Time
  • Total Commits: 1,608
  • Total Committers: 13
  • Avg Commits per committer: 123.692
  • Development Distribution Score (DDS): 0.255
Past Year
  • Commits: 54
  • Committers: 2
  • Avg Commits per committer: 27.0
  • Development Distribution Score (DDS): 0.444
Top Committers
Name Email Commits
Tim O'Donnell t****l@g****m 1,198
Alex Rubinsteyn a****n@g****m 328
Walid Ahmad w****d@p****h 30
Timothy ODonnell o****2@l****u 25
Timothy ODonnell o****2@l****u 7
Jeff Hammerbacher j****r@g****m 6
Arun Ahuja a****1@g****m 3
Dan Vanderkam d****k@g****m 3
B. Arman Aksoy a****n@a****g 2
Julia K j****6@g****m 2
Uri Laserson u****n@g****m 2
Christopher Sumnicht c****t@b****u 1
Susanna Kiwala s****t@g****u 1

Issues and Pull Requests

Last synced: 7 months ago

All Time
  • Total issues: 92
  • Total pull requests: 52
  • Average time to close issues: 4 months
  • Average time to close pull requests: 3 days
  • Total issue authors: 66
  • Total pull request authors: 9
  • Average comments per issue: 2.5
  • Average comments per pull request: 0.81
  • Merged pull requests: 48
  • Bot issues: 0
  • Bot pull requests: 1
Past Year
  • Issues: 7
  • Pull requests: 11
  • Average time to close issues: 2 days
  • Average time to close pull requests: 2 days
  • Issue authors: 5
  • Pull request authors: 4
  • Average comments per issue: 1.43
  • Average comments per pull request: 1.27
  • Merged pull requests: 8
  • Bot issues: 0
  • Bot pull requests: 1
Top Authors
Issue Authors
  • timodonnell (8)
  • amomin-pact (4)
  • saskra (3)
  • jfnavarro (3)
  • ndalchau (3)
  • iskandr (3)
  • weipenegHU (3)
  • sheljoy (3)
  • kevinkovalchik (2)
  • tamuanand (2)
  • samuela (2)
  • susannasiebert (2)
  • lzy604 (2)
  • ghost (2)
  • chenli-bioinfo (1)
Pull Request Authors
  • timodonnell (40)
  • jday1 (4)
  • iskandr (3)
  • susannasiebert (2)
  • dependabot[bot] (2)
  • sergeyf (2)
  • thyrgle (1)
  • emilazy (1)
  • ndalchau (1)
  • walid0925 (1)
Top Labels
Issue Labels
Pull Request Labels
dependencies (2) github_actions (2)

Packages

  • Total packages: 1
  • Total downloads:
    • pypi 3,949 last-month
  • Total docker downloads: 1,546
  • Total dependent packages: 4
  • Total dependent repositories: 14
  • Total versions: 32
  • Total maintainers: 1
pypi.org: mhcflurry

MHC Binding Predictor

  • Versions: 32
  • Dependent Packages: 4
  • Dependent Repositories: 14
  • Downloads: 3,949 Last month
  • Docker Downloads: 1,546
Rankings
Docker downloads count: 1.4%
Dependent packages count: 2.4%
Dependent repos count: 3.9%
Average: 4.0%
Stargazers count: 5.3%
Downloads: 5.3%
Forks count: 5.6%
Maintainers (1)
Last synced: 7 months ago

Dependencies

docs/requirements.txt pypi
  • logomaker *
  • numpydoc *
  • pydot *
  • pypandoc *
  • sphinx *
  • sphinx-rtd-theme *
  • sphinxcontrib-autoprogram *
  • sphinxcontrib-programoutput *
  • tabulate *
  • tqdm *
downloads-generation/analysis_predictor_info/requirements.txt pypi
  • logomaker *
  • seaborn *
downloads-generation/data_curated/requirements.txt pypi
  • xlrd >=1.1.0
downloads-generation/data_mass_spec_annotated/requirements.txt pypi
  • shellinford *
downloads-generation/data_predictions/requirements.txt pypi
  • mhctools *
downloads-generation/data_references/requirements.txt pypi
  • biopython *
  • gtfparse *
  • shellinford *
requirements.txt pypi
  • appdirs *
  • mhcgnomes *
  • np_utils *
  • pandas >=0.20.3
  • pyyaml *
  • scikit-learn *
  • six *
  • tensorflow >=2.2.0
  • tqdm *
docs/environment.yml conda
  • certifi 2016.2.28
  • funcsigs 1.0.2
  • libprotobuf 3.2.0
  • mkl 2017.0.3
  • mock 2.0.0
  • numpy 1.12.1
  • openssl 1.0.2l
  • pbr 1.10.0
  • pip 9.0.1
  • protobuf 3.2.0
  • python 2.7.13
  • readline 6.2
  • setuptools 36.4.0
  • six 1.10.0
  • sqlite 3.13.0
  • tensorflow 1.1.0
  • tk 8.5.18
  • werkzeug 0.12.2
  • wheel 0.29.0
  • zlib 1.2.11
Dockerfile docker
  • continuumio/miniconda3 latest build
setup.py pypi