{ "info": { "author": "Brent Pedersen", "author_email": "bpederse@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Topic :: Scientific/Engineering :: Bio-Informatics" ], "description": "Fast Pedigree::VCF QC\n---------------------\n\n\n\npeddy compares familial-relationships and sexes as reported in a [PED/FAM file](https://www.cog-genomics.org/plink2/formats#fam)\nwith those inferred from a VCF.\n\nIt samples the VCF at about 25000 sites (plus chrX) to accurately estimate **relatedness**, **IBS0**, **heterozygosity**, **sex** and **ancestry**. It uses 2504 thousand genome samples as backgrounds to calibrate the relatedness calculation and to make ancestry predictions.\n\nIt does this very quickly by sampling, by using C for computationally intensive parts, and by parallelization.\n\nIf you use peddy, please cite [Pedersen and Quinlan, Who\u2019s Who? Detecting and Resolving Sample Anomalies in Human DNA\nSequencing Studies with Peddy, The American Journal of Human Genetics (2017),\nhttp://dx.doi.org/10.1016/j.ajhg.2017.01.017](http://www.cell.com/action/showFullTextImages?pii=S0002-9297(17)30017-4)\n\n\n[![Anaconda-Server Badge](https://anaconda.org/bioconda/peddy/badges/installer/conda.svg)](https://conda.anaconda.org/bioconda)\n[![PyPI version](https://badge.fury.io/py/peddy.svg)](http://badge.fury.io/py/peddy)\n[![Documentation Status](https://readthedocs.org/projects/peddy/badge/?version=latest)](http://peddy.readthedocs.org/en/latest/?badge=latest)\n\n\n\nQuickstart\n----------\n\nSee installation below.\n\nMost users will only need to run as a command-line tool with a ped and VCF, e.g:\n\n```\npython -m peddy -p 4 --plot --prefix ceph-1463 data/ceph1463.vcf.gz data/ceph1463.ped\n```\n\nThis will use 4 cpus to run various checks and create **ceph-1463.html** which\nyou can open in any browser to interactively explore your data.\n\nIt will also create create 4 csv files and 4 QC plots.\nThese will indicate:\n\n+ discrepancies between ped-reported and genotype-inferred relations\n+ discrepancies between ped-reported and genotype-inferred sex\n+ samples with higher levels of HET calls, lower depth, or more variance in b-allele-frequency (ref / (ref + alt )) for het calls.\n+ an ancestry prediction based on projection onto the thousand genomes principal components\n\nFinally, it will create a new file ped files `ceph1463.peddy.ped` that also lists\nthe most useful columns from the `het-check` and `sex-check`. Users can **first\nlook at this extended ped file for an overview of likely problems**.\n\nSee [the docs](http://peddy.readthedocs.io/en/latest/) for a walk-through and thorough explanation of each plot.\n\nhg38 or custom sites\n--------------------\n\nBy default, peddy uses hg19/GRCh37. It can be forced to use sites for hg38 by passing `--sites hg38`.\nTo create custom sites, have a look at [the sites files included with peddy](https://github.com/brentp/peddy/blob/master/peddy/GRCH37.sites) along\nwith the corresponding .bin.gz which is just the raw binary alternate counts (gt_types) from thousand-genomes that have been written as uint8\nand gzipped.\n\n\nSpeed\n-----\n\nBecause of the sampling approach and parallelization, `peddy` is very fast.\nWith 4 CPUs, on the 17-member *CEPH1643* pedigree whole-genome VCF, peddy can run the het-check and PCA in ~ 8 seconds. The pedigree check comparing all vs.\nall samples run in 3.6 seconds.\nIt finishes the full set of checks in about 20 seconds.\n\nIn comparison [KING](http://people.virginia.edu/~wc9c/KING/manual.html) runs\nin 14 seconds (it is **extremely fast**); the time including the conversion\nfrom VCF to binary ped is 85 seconds.\n\nOn larger datasets, with hundreds or thousands of samples, it can be beneficial to add as many\ncores as possible; for smaller datasets with dozens of samples about 4 processors reduces the\ncomputation time as much as 8 or more would.\n\n\nValidation\n----------\n\nThe results between peddy and KING are comparable, but peddy does better on\ncohorts where most samples are related. See the figure below where the peddy\nrelatedness estimate is closer to the actual than KING which over-estimates relatedness.\n\n![Peddy Vs KING](https://raw.githubusercontent.com/brentp/peddy/master/docs/_static/peddy-v-king.png \"Comparison with KING\")\n\nPeddy uses the KING algorithm for calculating relatedness and so they\nmatch quite well.\nPeddy also runs PCA on the 2504 samples from 1000 genomes,\nthen fitting an SVM and predicting ancestry in addition to\ncalculating relatedness among all pairwise combinations of the 17 samples.\n\nWarnings and Checks\n-------------------\n\nOn creating a pedigree object (via Ped('some.ped'). `peddy` will print warnings to STDERR as appropriate like:\n\n```\npedigree warning: '101811-101811' is dad but has female sex\npedigree warning: '101897-101897' is dad but has female sex\npedigree warning: '101896-101896' is mom of self\npedigree warning: '102110-102110' is mom but has male sex\npedigree warning: '102110-102110' is mom of self\npedigree warning: '101381-101381' is dad but has female sex\npedigree warning: '101393-101393' is mom but has male sex\n\nunknown sample: 102498-102498 in family: K34175\nunknown sample: 11509-11509 in family: K567331\nunknown sample: 5180-5180 in family: K8565\n```\n\nInstallation\n------------\n\n## Conda\nNearly all users should install using conda in the anaconda python distribution. This means\nhave your own version of python easily installed via:\n\n```\nINSTALL_PATH=~/anaconda\nwget http://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh\n# or wget http://repo.continuum.io/miniconda/Miniconda2-latest-MacOSX-x86_64.sh\nbash Miniconda2-latest* -fbp $INSTALL_PATH\nPATH=$INSTALL_PATH/bin:$PATH\n\nconda update -y conda\nconda config --add channels bioconda\n\nconda install -y peddy\n```\n\nThis should install all dependencies so you can then run peddy with 4 processes as:\n\n```\npython -m peddy --plot -p 4 --prefix mystudy $VCF $PED\n```\n\n## Github\n\n```\ngit clone https://github.com/brentp/peddy\ncd peddy\npip install -r requirements.txt\npip install --editable .\n```\n\nrun with \n\n```\npeddy --plot -p 4 --prefix mystudy $VCF $PED\n```\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "", "keywords": "", "license": "", "maintainer": "", "maintainer_email": "", "name": "peddy", "package_url": "https://pypi.org/project/peddy/", "platform": "", "project_url": "https://pypi.org/project/peddy/", "project_urls": null, "release_url": "https://pypi.org/project/peddy/0.4.3/", "requires_dist": null, "requires_python": "", "summary": "pleasingly pythonic pedigree manipulation", "version": "0.4.3" }, "last_serial": 4500113, "releases": { "0.0.1": [ { "comment_text": "", "digests": { "md5": "89223fcb7c7859726cc420e6106444f6", "sha256": "ec7cc2edae402c6c7460109c42050aa790dc9865c535bf5d45888027369e8e67" }, "downloads": -1, "filename": "peddy-0.0.1.tar.gz", "has_sig": false, "md5_digest": "89223fcb7c7859726cc420e6106444f6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 1806, "upload_time": "2015-07-20T14:56:25", "url": "https://files.pythonhosted.org/packages/5a/ef/f4bb9186ccfc3a7658f6243bf102483a64f463d306fd35b0448eb111896d/peddy-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "6f1e2aa51a6b9682987683050b205170", "sha256": "a2298c34f68f3c1985a5743ad3c919ecd56041d038d518e660219d075656454a" }, "downloads": -1, "filename": "peddy-0.0.2.tar.gz", "has_sig": false, "md5_digest": "6f1e2aa51a6b9682987683050b205170", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 6993, "upload_time": "2015-07-27T19:56:33", "url": "https://files.pythonhosted.org/packages/e2/73/e7fc749a374205bbe44d55a52bd7ae3874ec965eddc00fd15b55da0f315e/peddy-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "ab2cef69a8dac078e34a1edac54afbfa", "sha256": "372c57bb180d858f3c635be09e46f1878a4fc355ac9c3c3aff2b65788ed54c4d" }, "downloads": -1, "filename": "peddy-0.0.3.tar.gz", "has_sig": false, "md5_digest": "ab2cef69a8dac078e34a1edac54afbfa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 13858, "upload_time": "2015-09-25T15:23:31", "url": "https://files.pythonhosted.org/packages/22/be/07b3f1c3aa25c09709205f7047db5e722ac163a1864b2de157b5c9b773d0/peddy-0.0.3.tar.gz" } ], "0.0.4": [ { "comment_text": "", "digests": { "md5": "2b7cf78a40cad61d622fa6b52bd02fd7", "sha256": "c7a0abb53c0646521d1691fb59eb28b101274efc551b93cdda1a3d8fa768001d" }, "downloads": -1, "filename": "peddy-0.0.4.tar.gz", "has_sig": false, "md5_digest": "2b7cf78a40cad61d622fa6b52bd02fd7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 15117, "upload_time": "2015-09-28T19:55:33", "url": "https://files.pythonhosted.org/packages/e6/6a/15cf59ddf0d963e016b18829138ba424364d2e9c8bcfc8d50522e5e8439f/peddy-0.0.4.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "53f037297cf05e0c0175854e54e5c86b", "sha256": "c0be0c526ed9b1b7407fda76c10f6377ac03644c2224a4a1adca7d13db08528f" }, "downloads": -1, "filename": "peddy-0.1.1.tar.gz", "has_sig": false, "md5_digest": "53f037297cf05e0c0175854e54e5c86b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37150, "upload_time": "2016-05-05T22:05:34", "url": "https://files.pythonhosted.org/packages/4c/8c/f93bef71f923852fcf8d96ac613353fb84494d355ca003d01f2cb0d6d42a/peddy-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "805ad72c41660a9f8f89eaa2a22b85b0", "sha256": "2c45a466f493ffd4a5e3a83fabe2824e9df2964ea50ef7b7b7b62941bae0e29d" }, "downloads": -1, "filename": "peddy-0.1.2.tar.gz", "has_sig": false, "md5_digest": "805ad72c41660a9f8f89eaa2a22b85b0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37836, "upload_time": "2016-05-09T16:58:34", "url": "https://files.pythonhosted.org/packages/a9/7a/b929cbc75531b1824ee1ede885f275c175bb829f44e7755b9700d8e1c8dd/peddy-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "dc188d45fca972a4d0299c101917b801", "sha256": "03c5914dfa374ef8e06d9eeec75f96fc209b8288ac018cee31f4716bb39e15de" }, "downloads": -1, "filename": "peddy-0.1.3.tar.gz", "has_sig": false, "md5_digest": "dc188d45fca972a4d0299c101917b801", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37810, "upload_time": "2016-05-09T18:08:45", "url": "https://files.pythonhosted.org/packages/d7/f6/bdedf371fe7e6a107e10c3b9bea26862b320fa4f5fdb06f22430c4d8f510/peddy-0.1.3.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "75e0a8178a6cc1e9cea16707c2b5cdd0", "sha256": "913306310a4b42916b3651c4b6c4cb8d1a444e4ee82f26cc4913895e71390de6" }, "downloads": -1, "filename": "peddy-0.1.5.tar.gz", "has_sig": false, "md5_digest": "75e0a8178a6cc1e9cea16707c2b5cdd0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9941982, "upload_time": "2016-05-31T14:57:00", "url": "https://files.pythonhosted.org/packages/17/f6/57752c59ff3fbf6a2c25addf5df469e8f07443503b8bce909f14676182d8/peddy-0.1.5.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "45da50b9067d3202a4b2e7cc1b5efdb3", "sha256": "1d4d393bef49e4ea5ed63961079d1c8e152de6407a77e9ead65b4232185d8a35" }, "downloads": -1, "filename": "peddy-0.2.0.tar.gz", "has_sig": false, "md5_digest": "45da50b9067d3202a4b2e7cc1b5efdb3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9942788, "upload_time": "2016-06-16T20:31:47", "url": "https://files.pythonhosted.org/packages/f6/75/56fce81c3d5784ab02201a0a7821234cd1a7bcf301717a48645b5ef2b0bc/peddy-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "4bc675d8b1983e23f3a1131e695f35ec", "sha256": "1709fc86185876eda93082df74607da2d3aa66445471027e82e16970b1888973" }, "downloads": -1, "filename": "peddy-0.2.1.tar.gz", "has_sig": false, "md5_digest": "4bc675d8b1983e23f3a1131e695f35ec", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9942882, "upload_time": "2016-06-18T21:23:25", "url": "https://files.pythonhosted.org/packages/9a/67/ae0acd6ae899c932cb85d39dd44695de5bc6e4bb4a331ef4e4c11270c0ad/peddy-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "dde64a7452b12b3b35108d7c4522d2dd", "sha256": "2f9b0250c5af2ecfc5aa91f74af03fc678ce8ce2798d7d83959640254fb95444" }, "downloads": -1, "filename": "peddy-0.2.2.tar.gz", "has_sig": false, "md5_digest": "dde64a7452b12b3b35108d7c4522d2dd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9942900, "upload_time": "2016-06-21T17:05:05", "url": "https://files.pythonhosted.org/packages/9d/62/edf7ea52440408103f6045ff30e10d9aa5f9d1b18b5533dd499d9487c64d/peddy-0.2.2.tar.gz" } ], "0.2.5": [ { "comment_text": "", "digests": { "md5": "f2da7eef26c0a80fbce3279b7fb9d2eb", "sha256": "a93812a73146a29c71a7cf249198299dce19f47a154415788eb321f85375574e" }, "downloads": -1, "filename": "peddy-0.2.5.tar.gz", "has_sig": false, "md5_digest": "f2da7eef26c0a80fbce3279b7fb9d2eb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9943807, "upload_time": "2016-08-17T16:57:47", "url": "https://files.pythonhosted.org/packages/fc/66/acc5dc46d6380b93fa3742035feaf750d1ff832bf22ad6b634a84599e4a9/peddy-0.2.5.tar.gz" } ], "0.2.6": [ { "comment_text": "", "digests": { "md5": "88dc2347914a7780901fba4b54e53ebf", "sha256": "58fc19d4463c2b001ddecaef63c1c2426daf0300b1db9fb655bbbf444845cf6c" }, "downloads": -1, "filename": "peddy-0.2.6.tar.gz", "has_sig": false, "md5_digest": "88dc2347914a7780901fba4b54e53ebf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9943813, "upload_time": "2016-08-22T18:24:59", "url": "https://files.pythonhosted.org/packages/04/dd/e30aa74df2954d6e7caba6ee88d850f7e1ce97d9c0a08605fd006b3ad6f6/peddy-0.2.6.tar.gz" } ], "0.2.7": [ { "comment_text": "", "digests": { "md5": "c868b75cf74dbd46aad1da78f565e018", "sha256": "ac71a3d06c5286e9a90333dbaf5f6cfba0c54ecf2e218b29144e0e2fd3ad5df8" }, "downloads": -1, "filename": "peddy-0.2.7.tar.gz", "has_sig": false, "md5_digest": "c868b75cf74dbd46aad1da78f565e018", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9943818, "upload_time": "2016-08-22T19:34:51", "url": "https://files.pythonhosted.org/packages/40/43/276c3cd7e5049de7434c44edc1fd7f6933cf914469c495ab652b796b0b09/peddy-0.2.7.tar.gz" } ], "0.2.9": [ { "comment_text": "", "digests": { "md5": "7870c4eb11fc359c02df5b7f22b6b467", "sha256": "44050309e046983a2276ec2d909b1c7214c11648e7ee04205e30bf5033d6d771" }, "downloads": -1, "filename": "peddy-0.2.9.tar.gz", "has_sig": false, "md5_digest": "7870c4eb11fc359c02df5b7f22b6b467", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9944101, "upload_time": "2016-12-22T15:01:46", "url": "https://files.pythonhosted.org/packages/52/da/6afa439499143ac509eb2eceb217e9d6c4665e0c3d0e5efc5c088edf34f5/peddy-0.2.9.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "1ee438d14f099cd4c245f56f959196cf", "sha256": "25dc80ed20a03b299fa1436342a57979f8a61921c57ab6d8d1a7aa0d0f07ad00" }, "downloads": -1, "filename": "peddy-0.3.1.tar.gz", "has_sig": false, "md5_digest": "1ee438d14f099cd4c245f56f959196cf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9941982, "upload_time": "2017-07-20T18:45:20", "url": "https://files.pythonhosted.org/packages/d4/82/d07914352d59f01ee97feaaea91b695a8761b1265fe43656237b5469c02a/peddy-0.3.1.tar.gz" } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "9e75480bfff954baedc0ed7c0826d7be", "sha256": "47eb1d40ce3a8fa952c6d3d615869066e9e61c4eb4791e42c3c027478a98bebf" }, "downloads": -1, "filename": "peddy-0.3.2.tar.gz", "has_sig": false, "md5_digest": "9e75480bfff954baedc0ed7c0826d7be", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9944415, "upload_time": "2017-08-18T15:55:57", "url": "https://files.pythonhosted.org/packages/c1/98/96fd23d9d14215145cd1333cf534be97d5b7413521b42c77f7e3732f0507/peddy-0.3.2.tar.gz" } ], "0.3.3": [ { "comment_text": "", "digests": { "md5": "7dab4250e46597023f4f97c73dec9823", "sha256": "9a5aed59959a7a2d7f2c235236a9b75dc02f3bb41481d5552bba8103e6cfa523" }, "downloads": -1, "filename": "peddy-0.3.3.tar.gz", "has_sig": false, "md5_digest": "7dab4250e46597023f4f97c73dec9823", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9944539, "upload_time": "2018-03-06T22:52:36", "url": "https://files.pythonhosted.org/packages/48/ec/16f8ac7d8d8288a5315a5daf019d06cac90495f4e46e3584a1c349c11a4b/peddy-0.3.3.tar.gz" } ], "0.3.4": [ { "comment_text": "", "digests": { "md5": "555395957bf7d47a795ffec87fb7b2d4", "sha256": "446db180a498ad406933422c66262be1ea65ea580f635cc426ef701f5e1866da" }, "downloads": -1, "filename": "peddy-0.3.4.tar.gz", "has_sig": false, "md5_digest": "555395957bf7d47a795ffec87fb7b2d4", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9944626, "upload_time": "2018-03-22T16:46:42", "url": "https://files.pythonhosted.org/packages/20/fb/4fee4b0c5a22c936386630b2516e15644f9b7e06f5f32105c74e8e0150c4/peddy-0.3.4.tar.gz" } ], "0.3.5": [ { "comment_text": "", "digests": { "md5": "e1b1cf3009b2418f6a1ea4d65ff905cb", "sha256": "ed1653a233289fa28c67dd6008c1d430fbc60684d71f3a8c69e85ffec392fcbb" }, "downloads": -1, "filename": "peddy-0.3.5.tar.gz", "has_sig": false, "md5_digest": "e1b1cf3009b2418f6a1ea4d65ff905cb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9944626, "upload_time": "2018-04-16T18:35:10", "url": "https://files.pythonhosted.org/packages/ad/d9/a50db143a581dd83c5e44d8256d386aef69ca3a97121d8c328d160942cfd/peddy-0.3.5.tar.gz" } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "0fccb52f49ee35c2c88a2a77b21fca2d", "sha256": "bea8842b37d6e4bd4ba1f54cc12cfdffefd8e4558ab1adc1edebaf6f174e5398" }, "downloads": -1, "filename": "peddy-0.4.1.tar.gz", "has_sig": false, "md5_digest": "0fccb52f49ee35c2c88a2a77b21fca2d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12160633, "upload_time": "2018-05-30T22:16:39", "url": "https://files.pythonhosted.org/packages/71/6d/9aa44bbfe10ac9f9c13f80a0fb0c6ce2718daeaa611f5da7a56de9f2e854/peddy-0.4.1.tar.gz" } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "6c451722500c08d393805d89c05e0721", "sha256": "9f32aebbe5e537f0f66d0ac46cee95dd4aed70778419e5c502dd7091bfc97d77" }, "downloads": -1, "filename": "peddy-0.4.3.tar.gz", "has_sig": false, "md5_digest": "6c451722500c08d393805d89c05e0721", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12160538, "upload_time": "2018-11-18T16:00:41", "url": "https://files.pythonhosted.org/packages/66/0f/d90c9221094dacbbf152c2207fb70b349893c2b0bbef34f115638f252510/peddy-0.4.3.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "6c451722500c08d393805d89c05e0721", "sha256": "9f32aebbe5e537f0f66d0ac46cee95dd4aed70778419e5c502dd7091bfc97d77" }, "downloads": -1, "filename": "peddy-0.4.3.tar.gz", "has_sig": false, "md5_digest": "6c451722500c08d393805d89c05e0721", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12160538, "upload_time": "2018-11-18T16:00:41", "url": "https://files.pythonhosted.org/packages/66/0f/d90c9221094dacbbf152c2207fb70b349893c2b0bbef34f115638f252510/peddy-0.4.3.tar.gz" } ] }