{ "info": { "author": "Jun Cheng", "author_email": "chengju@in.tum.de", "bugtrack_url": null, "classifiers": [ "Development Status :: 2 - Pre-Alpha", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Natural Language :: English", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6" ], "description": "# mmsplice\n[![CircleCI](https://circleci.com/gh/gagneurlab/MMSplice.svg?style=svg)](https://circleci.com/gh/gagneurlab/MMSplice)\n[![pypi](https://img.shields.io/pypi/v/mmsplice.svg)](https://pypi.python.org/pypi/mmsplice)\n\nPredict splicing variant effect from VCF\n\nPaper: Cheng et al. https://doi.org/10.1101/438986\n\n![MMSplice](https://raw.githubusercontent.com/kipoi/models/master/MMSplice/Model.png)\n\n\n## Installation\n-----------------\n\nExternal dependencies:\n```bash\npip install cyvcf2 cython\n```\n\nConda installation is recommended:\n```bash\nconda install cyvcf2 cython -y\n```\n\n```bash\npip install mmsplice\n```\n\n## Run MMSplice Online\n\nYou can run mmsplice with following google colab notebooks online:\n\n- [run on vcf file](https://colab.research.google.com/drive/1Kw5rHMXaxXXsmE3WecxbXyGQJma80Eq6)\n\n### Preparation\n-----------------\n\n#### 1. Prepare annotation (gtf) file\nStandard human gene annotation file in GTF format can be downloaded from ensembl or gencode.\n`MMSplice` can work directly with those files, however, some filtering is higly recommended.\n\n- Filter for protein coding genes.\n\n#### 2. Prepare variant (VCF) file\nA correctly formatted VCF file with work with `MMSplice`, however the following steps will make it less prone to false positives:\n\n- Quality filtering. Low quality variants leads to unreliable predictions.\n- Avoid presenting multiple variants in one line by splitting them into multiple lines. Example code to do it:\n ```bash\n bcftools norm -m-both -o out.vcf in.vcf.gz\n ```\n- Left-normalization. For instance, GGCA-->GG is not left-normalized while GCA-->G is. Details for unified representation of genetic variants see [Tan et al.](https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4481842/)\n ```bash\n bcftools norm -f reference.fasta -o out.vcf in.vcf\n ```\n\n#### 3. Prepare reference genome (fasta) file\nHuman reference fasta file can be downloaded from ensembl/gencode. Make sure the chromosome name matches with GTF annotation file you use.\n\n\n### Example code\n-------------------\n\nCheck [notebooks/example.ipynb](https://github.com/gagneurlab/MMSplice/blob/master/notebooks/example.ipynb)\n\nTo score variants (including indels), we suggest to use primarily the `deltaLogitPSI` predictions, which is the default output. The differential splicing efficiency (dse) model was trained from MMSplice modules and exonic variants from MaPSy, thus only the predictions for exonic variants are calibrated.\n\n```python\n# Import\nfrom mmsplice.vcf_dataloader import SplicingVCFDataloader\nfrom mmsplice import MMSplice, predict_all_table\nfrom mmsplice.utils import max_varEff\n\n# example files\ngtf = 'tests/data/test.gtf'\nvcf = 'tests/data/test.vcf.gz'\nfasta = 'tests/data/hg19.nochr.chr17.fa'\ncsv = 'pred.csv'\n\n# dataloader to load variants from vcf\ndl = SplicingVCFDataloader(gtf, fasta, vcf)\n\n# Specify model\nmodel = MMSplice()\n\n# predict and save to csv file\npredict_save(model, dl, csv, pathogenicity=True, splicing_efficiency=True)\n\n# Or predict and return as df\npredictions = predict_all_table(model, dl, pathogenicity=True, splicing_efficiency=True)\n\n# Summerize with maximum effect size\npredictionsMax = max_varEff(predictions)\n```\n\n## VEP Plugin\n\nThe VEP plugin wraps the prediction function from `mmsplice` python package. Please check documentation of vep plugin [under VEP_plugin/README.md](VEP_plugin/README.md).\n\n\n=======\nHistory\n=======\n\n1.0.0 (2019-07-23)\n------------------\n* Dependicies fixed #16\n* Valide gtf, fasta, vcf chrom annotation #15\n* Ship mmsplice with prebuild exon set. #12\n* Faster variant overlapping with pyranges #11\n* Batch prediction with masking update in exon module\n\n0.1.0 (2018-07-17)\n------------------\n\n* First release on PyPI.\n\n\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/gagneurlab/mmsplice", "keywords": "mmsplice", "license": "MIT license", "maintainer": "", "maintainer_email": "", "name": "mmsplice", "package_url": "https://pypi.org/project/mmsplice/", "platform": "", "project_url": "https://pypi.org/project/mmsplice/", "project_urls": { "Homepage": "https://github.com/gagneurlab/mmsplice" }, "release_url": "https://pypi.org/project/mmsplice/1.0.1/", "requires_dist": [ "setuptools", "scikit-learn (==0.19.2)", "tensorflow (<=1.13.1)", "keras", "kipoi (>=0.4.1)", "pandas", "concise", "pybedtools", "kipoiseq", "pyfaidx", "tqdm", "click", "pyranges" ], "requires_python": "", "summary": "Predict splicing variant effect from VCF", "version": "1.0.1" }, "last_serial": 5573247, "releases": { "0.2.0": [ { "comment_text": "", "digests": { "md5": "fb3af5577c295a2f64e1b14adc8b7b11", "sha256": "75d070a716863ca33b9e96ef6c81eb62fa1d4a1f5c378c0e33179ea53b969a97" }, "downloads": -1, "filename": "mmsplice-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "fb3af5577c295a2f64e1b14adc8b7b11", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 417978, "upload_time": "2018-09-19T08:28:08", "url": "https://files.pythonhosted.org/packages/4c/90/e1260a058e947d4a635341fc7b26a76a29e6a49123cbd23499a38ffcbfcd/mmsplice-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "89382c28da11fb64b8036937689b429c", "sha256": "74741dd6d2a28a4fc60539ac7a0e62aa1e5a1f2f86137fc59145488d27babc5d" }, "downloads": -1, "filename": "mmsplice-0.2.0-py3.6.egg", "has_sig": false, "md5_digest": "89382c28da11fb64b8036937689b429c", "packagetype": "bdist_egg", "python_version": "3.6", "requires_python": null, "size": 466049, "upload_time": "2018-10-05T18:42:57", "url": "https://files.pythonhosted.org/packages/e2/a5/b45c70a08e633364a673422ef3a709d648e4fb9314b7d957863f173c8e77/mmsplice-0.2.0-py3.6.egg" }, { "comment_text": "", "digests": { "md5": "2c607b6c249e577ede4e0cade221053f", "sha256": "ad626d6db5c2c67a2172bb85a859a0727b933852c8c2588329ed802bc247b6ef" }, "downloads": -1, "filename": "mmsplice-0.2.0.tar.gz", "has_sig": false, "md5_digest": "2c607b6c249e577ede4e0cade221053f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 420294, "upload_time": "2018-09-19T08:28:10", "url": "https://files.pythonhosted.org/packages/0b/a0/53b44f34c6145eca37e98eb82d2f5c2f125e7340bbf537f0316ad948792a/mmsplice-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "129869919c99b62d6706c5b31acd3f09", "sha256": "02ba51c7ea161739240f3b5d9ab3750d3ab6fafb81669592114a983391fa0f1b" }, "downloads": -1, "filename": "mmsplice-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "129869919c99b62d6706c5b31acd3f09", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 446123, "upload_time": "2018-10-05T18:42:54", "url": "https://files.pythonhosted.org/packages/b1/45/7fdb9377f6f1f73481b61cce298356fce875deea396c4f3a8793da05ab1c/mmsplice-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "052f74a0c986ad0838a6e7995331a76c", "sha256": "86ef86e3b223acc35590165d507a852a7236237b2c9f7a8ded1620298db893dd" }, "downloads": -1, "filename": "mmsplice-0.2.1.tar.gz", "has_sig": false, "md5_digest": "052f74a0c986ad0838a6e7995331a76c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 448534, "upload_time": "2018-10-07T19:44:03", "url": "https://files.pythonhosted.org/packages/04/dc/75b8214cea697276c1f1a512a3cafc8f135ccf8e85252b16a639cf9621da/mmsplice-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "57bbb810f224ec79359abbb804c57831", "sha256": "41b8f6f6df71ad50168717021755add5cbdf183d7224399ff12309a763be2813" }, "downloads": -1, "filename": "mmsplice-0.2.2.tar.gz", "has_sig": false, "md5_digest": "57bbb810f224ec79359abbb804c57831", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 448529, "upload_time": "2018-10-07T20:03:32", "url": "https://files.pythonhosted.org/packages/1c/49/05c5848779f9f26d3b335b6c0af201fff4896620a0696e4187e2ca0e9a59/mmsplice-0.2.2.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "00fd9867b9f57747a49d8dacd4632b5f", "sha256": "dba9e4acda797f70747a58bfde533d3a7b32232932b130ff4579c7807a8f8920" }, "downloads": -1, "filename": "mmsplice-0.2.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "00fd9867b9f57747a49d8dacd4632b5f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 448272, "upload_time": "2018-10-10T14:50:42", "url": "https://files.pythonhosted.org/packages/d7/66/8f6b318c0ec9fae2edcb188a6b6595d6177b20fab4df90e4eddd68219407/mmsplice-0.2.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "059f3dba4b23df647c55434dfd60e59f", "sha256": "d6947d204330efec653463211cd28f78b577d202aa3403f23c70d82b4056b5df" }, "downloads": -1, "filename": "mmsplice-0.2.4.tar.gz", "has_sig": false, "md5_digest": "059f3dba4b23df647c55434dfd60e59f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 451039, "upload_time": "2018-10-10T14:50:45", "url": "https://files.pythonhosted.org/packages/7b/c1/634b6ad37835e35a94c487b24166c5c4a95c7379e0b0a7364d1896103a93/mmsplice-0.2.4.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "65a003f7c6507ec7d00b605605c295a3", "sha256": "13d9a6b185d8de063d75fc7e164f829935299b3d5caa058dba23cd9905392835" }, "downloads": -1, "filename": "mmsplice-0.2.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "65a003f7c6507ec7d00b605605c295a3", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 448388, "upload_time": "2018-10-17T13:42:28", "url": "https://files.pythonhosted.org/packages/75/1e/574ef7216ab1d1f9f8d6250058b1b3d9ac708cadcc8c05c8d7da6ed341c5/mmsplice-0.2.5-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "4c42822fce368cfb8a0934c2cd76a295", "sha256": "dde05536e16e2a16dcd2e2763a768ffe6dc59ddb626997974493a9301345d5c3" }, "downloads": -1, "filename": "mmsplice-0.2.5.tar.gz", "has_sig": false, "md5_digest": "4c42822fce368cfb8a0934c2cd76a295", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 451258, "upload_time": "2018-10-17T13:42:30", "url": "https://files.pythonhosted.org/packages/7c/ed/7bf13248347626464c61cb3f2dc90246cead71c7fa1faf38d594c87d2d98/mmsplice-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "f34ba144dcff516cff2168df4e46fdce", "sha256": "0ddb82b779f9c469e531f8a469d08040594afbb6b0c7668550c89fd9c428b6ec" }, "downloads": -1, "filename": "mmsplice-0.2.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f34ba144dcff516cff2168df4e46fdce", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 448796, "upload_time": "2018-10-31T18:00:53", "url": "https://files.pythonhosted.org/packages/8d/d5/1d142bf8a1a93d44ee3cc66c7fedc1833bcd4c550eebdda9f272ad60f0b1/mmsplice-0.2.6-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "286fa939fa5944727e40a8da26dbe00f", "sha256": "6b6e2b4b3003318a83802cc46643ec66032fccc511df90a399de034424b16b9f" }, "downloads": -1, "filename": "mmsplice-0.2.6.tar.gz", "has_sig": false, "md5_digest": "286fa939fa5944727e40a8da26dbe00f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 451202, "upload_time": "2018-10-31T18:00:55", "url": "https://files.pythonhosted.org/packages/6a/18/535931f0dcf045f416cc7d3ad99c6d42e50c056ebaa231e44cd8def08b54/mmsplice-0.2.6.tar.gz" } ], "0.2.7": [ { "comment_text": "", "digests": { "md5": "5a00962dbff89a421e0d3f6d2281894f", "sha256": "a0f13d7bd8cde38089c148462dbcdb6358c76b51416d7db97265630727445ff4" }, "downloads": -1, "filename": "mmsplice-0.2.7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "5a00962dbff89a421e0d3f6d2281894f", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 450668, "upload_time": "2018-11-23T16:00:44", "url": "https://files.pythonhosted.org/packages/75/67/c04e48b46c8d32f948b7d4ccd84ef28f209c64fb6986fe776bc989e47cc9/mmsplice-0.2.7-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "041dc24d903055e40b5c702379a69273", "sha256": "e4ab573f7687858edfc75a1694fba159c75c53193d8d3901e51bba1ad5b3b5fe" }, "downloads": -1, "filename": "mmsplice-0.2.7.tar.gz", "has_sig": false, "md5_digest": "041dc24d903055e40b5c702379a69273", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 452038, "upload_time": "2018-11-23T16:00:46", "url": "https://files.pythonhosted.org/packages/b0/d1/4c2215f9e426be3f83400be2966ef785f08497a43059af979619d4b88e7c/mmsplice-0.2.7.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "cce04a8a3feb2510eb782d8e9ee15794", "sha256": "0dea946113101c93b1caeb65cdbaf9482e8310c84cd79af90839676ffec5ab2b" }, "downloads": -1, "filename": "mmsplice-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "cce04a8a3feb2510eb782d8e9ee15794", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 442140, "upload_time": "2019-07-23T15:21:20", "url": "https://files.pythonhosted.org/packages/31/b9/38a8a89183c8bab7d2201fe255cc85e3a8f613205676ee0ad3b300f4d097/mmsplice-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "f9b345334f68d4ad4832d0ae257b45b2", "sha256": "a596796523323d67dcad5a5b4058cf768d93aaea2e6740d8fb8437df2f82e966" }, "downloads": -1, "filename": "mmsplice-1.0.0.tar.gz", "has_sig": false, "md5_digest": "f9b345334f68d4ad4832d0ae257b45b2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 446135, "upload_time": "2019-07-23T15:21:23", "url": "https://files.pythonhosted.org/packages/d7/4f/2c70c2d39b1883a9036db3455dc29d58dd5d34148d0724afe81e29d0eee7/mmsplice-1.0.0.tar.gz" } ], "1.0.1": [ { "comment_text": "", "digests": { "md5": "f5e9b67d59504ebbf1beab11a9f3aa70", "sha256": "e82b37fbfaff0db6df5366137a8a85a52171f9b994bc9113ec25d426d129b93c" }, "downloads": -1, "filename": "mmsplice-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f5e9b67d59504ebbf1beab11a9f3aa70", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 26723317, "upload_time": "2019-07-23T16:06:16", "url": "https://files.pythonhosted.org/packages/c9/f0/e012053d49a32d73b7e71ef0b7541e1f4fbe09e8b81c6a78bd694b395377/mmsplice-1.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d3f123cf1cb7a7a13b1a3fae25bf35c0", "sha256": "1c1de2c0eb0f6e7bd1969f528835f0097c6ca83ac4b7a87f61cf6b7b76369c01" }, "downloads": -1, "filename": "mmsplice-1.0.1.tar.gz", "has_sig": false, "md5_digest": "d3f123cf1cb7a7a13b1a3fae25bf35c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26726948, "upload_time": "2019-07-23T16:06:24", "url": "https://files.pythonhosted.org/packages/99/33/08451b6448006d1f1f0c5906a354f7ad1d2151f535b6b64bc6f5c3f2077d/mmsplice-1.0.1.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f5e9b67d59504ebbf1beab11a9f3aa70", "sha256": "e82b37fbfaff0db6df5366137a8a85a52171f9b994bc9113ec25d426d129b93c" }, "downloads": -1, "filename": "mmsplice-1.0.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f5e9b67d59504ebbf1beab11a9f3aa70", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 26723317, "upload_time": "2019-07-23T16:06:16", "url": "https://files.pythonhosted.org/packages/c9/f0/e012053d49a32d73b7e71ef0b7541e1f4fbe09e8b81c6a78bd694b395377/mmsplice-1.0.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d3f123cf1cb7a7a13b1a3fae25bf35c0", "sha256": "1c1de2c0eb0f6e7bd1969f528835f0097c6ca83ac4b7a87f61cf6b7b76369c01" }, "downloads": -1, "filename": "mmsplice-1.0.1.tar.gz", "has_sig": false, "md5_digest": "d3f123cf1cb7a7a13b1a3fae25bf35c0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26726948, "upload_time": "2019-07-23T16:06:24", "url": "https://files.pythonhosted.org/packages/99/33/08451b6448006d1f1f0c5906a354f7ad1d2151f535b6b64bc6f5c3f2077d/mmsplice-1.0.1.tar.gz" } ] }