{ "info": { "author": "Life Epigenetics", "author_email": "info@lifeegx.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Console", "Framework :: Jupyter", "Intended Audience :: Financial and Insurance Industry", "Intended Audience :: Science/Research", "License :: OSI Approved :: MIT License", "Operating System :: MacOS :: MacOS X", "Operating System :: Microsoft :: Windows", "Operating System :: POSIX :: Linux", "Programming Language :: Python :: 3.7", "Topic :: Scientific/Engineering :: Bio-Informatics", "Topic :: Scientific/Engineering :: Medical Science Apps." ], "description": "`methpype` is a python package for processing Illumina methylation array data.\nView on [ReadTheDocs.](https://life-epigenetics-methpype.readthedocs-hosted.com/en/latest/)\n\n[![Readthedocs](https://readthedocs.com/projects/life-epigenetics-methpype/badge/?version=latest)](https://life-epigenetics-methpype.readthedocs-hosted.com/en/latest/) [![image](https://img.shields.io/pypi/l/pipenv.svg)](https://python.org/pypi/pipenv) [![CircleCI](https://circleci.com/gh/LifeEGX/methpype.svg?style=shield)](https://circleci.com/gh/LifeEGX/methpype) [![Build status](https://ci.appveyor.com/api/projects/status/jqhqss0ks58kt4mh?svg=true)](https://ci.appveyor.com/project/life_epigenetics/methpype-ck8v2)\n[![Codacy Badge](https://api.codacy.com/project/badge/Grade/9e4e03c5cbf54c8aa16dd2cf1a440e2f)](https://www.codacy.com?utm_source=github.com&utm_medium=referral&utm_content=LifeEGX/methpype&utm_campaign=Badge_Grade)\n[![Coverage Status](https://coveralls.io/repos/github/LifeEGX/methpype/badge.svg?t=mwigt8)](https://coveralls.io/github/LifeEGX/methpype)\n\n## Methpype Package\n\nThe MethPype package contains both high-level APIs for processing data from local files and low-level functionality allowing you to customize the flow of data and how it is processed.\n\n## Installation\n\nMethPype maintains configuration files for your Python package manager of choice: [conda](https://conda.io), [pipenv](https://pipenv.readthedocs.io/en/latest/), and [pip](https://pip.pypa.io/en/stable/).\n\n```python\npip install methpype\n```\n\n---\n\n## High-Level Processing\n\nThe primary Methpype API provides methods for the most common data processing and file retrieval functionality.\n\n### `run_pipeline`\n\nRun the complete methylation processing pipeline for the given project directory, optionally exporting the results to file.\n\nReturns: A collection of DataContainer objects for each processed sample\n\n```python\nfrom methpype import run_pipeline\n\ndata_containers = run_pipeline(data_dir, array_type=None, export=False, manifest_filepath=None, sample_sheet_filepath=None, sample_names=None)\n```\n\nArgument | Type | Default | Description\n--- | --- | --- | ---\n`data_dir` | `str`, `Path` | - | Base directory of the sample sheet and associated IDAT files\n`array_type` | `str` | `None` | Code of the array type being processed. Possible values are `custom`, `450k`, `epic`, and `epic+`. If not provided, the pacakage will attempt to determine the array type based on the number of probes in the raw data.\n`export` | `bool` | `False` | Whether to export the processed data to CSV\n`manifest_filepath` | `str`, `Path` | `None` | File path for the array's manifest file. If not provided, this file will be downloaded from a Life Epigenetics archive.\n`sample_sheet_filepath` | `str`, `Path` | `None` | File path of the project's sample sheet. If not provided, the package will try to find one based on the supplied data directory path.\n`sample_names` | `str` collection | `None` | List of sample names to process. If provided, only those samples specified will be processed. Otherwise all samples found in the sample sheet will be processed.\n\n### Methpype Command Line Interface (CLI)\n\nMethpype provides a command line interface (CLI) so the package can be used directly in bash/batchfile scripts as part of building your custom processing pipeline.\n\nAll invocations of the MethPype CLI will provide contextual help, supplying the possible arguments and/or options available based on the invoked command. If you specify verbose logging the package will emit log output of DEBUG levels and above.\n\n```Shell\n>>> python -m methpype\n\nusage: methpype [-h] [-v] {process,sample_sheet} ...\n\nUtility to process methylation data from Illumina IDAT files\n\npositional arguments:\n {process,sample_sheet}\n process process help\n sample_sheet sample sheet help\n\noptional arguments:\n -h, --help show this help message and exit\n -v, --verbose Enable verbose logging\n```\n\n---\n\n### Commands\n\nThe MethPype cli provides two top-level commands:\n\n- `process` to process methylation data\n- `sample_sheet` to find/read a sample sheet and output its contents\n\n#### `process`\n\nProcess the methylation data for a group of samples listed in a single sample sheet.\n\nIf you do not provide the file path for the project's sample_sheet the module will try to find one based on the supplied data directory path.\nYou must supply either the name of the array being processed or the file path for the array's manifest file. If you only specify the array type, the array's manifest file will be downloaded from a Life Epigenetics archive.\n\n```Shell\n>>> python -m methpype process\n\nusage: methpype idat [-h] -d DATA_DIR [-a {custom,450k,epic,epic+}]\n [-m MANIFEST] [-s SAMPLE_SHEET]\n [--sample_name [SAMPLE_NAME [SAMPLE_NAME ...]]]\n [--export]\n\nProcess Illumina IDAT files\n\noptional arguments:\n -h, --help show this help message and exit\n -d, --data_dir Base directory of the sample sheet and associated IDAT\n files\n -a, --array_type Type of array being processed\n Choices: {custom,450k,epic,epic+}\n -m, --manifest File path of the array manifest file\n -s, --sample_sheet File path of the sample sheet\n --sample_name Sample(s) to process\n --export Export data to csv\n```\n\n#### `sample_sheet`\n\nFind and parse the sample sheet in a given directory and emit the details of each sample. This is not required for actually processing data.\n\n```Shell\n>>> python -m methpype sample_sheet\n\nusage: methpype sample_sheet [-h] -d DATA_DIR\n\nProcess Illumina sample sheet file\n\noptional arguments:\n -h, --help show this help message and exit\n -d, --data_dir Base directory of the sample sheet and associated IDAT\n files\n```\n\n\n---\n\n## Low-Level Processing\n\nThese are some functions that you can use within methpype. `run_pipeline` calls them for you as needed.\n\n#### `get_sample_sheet`\n\nFind and parse the sample sheet for the provided project directory path.\n\nReturns: A SampleSheet object containing the parsed sample information from the project's sample sheet file\n\n```python\nfrom methpype import get_sample_sheet\n\nsample_sheet = get_sample_sheet(dir_path, filepath=None)\n```\n\nArgument | Type | Default | Description\n--- | --- | --- | ---\n`data_dir` | `str`, `Path` | - | Base directory of the sample sheet and associated IDAT files\n`sample_sheet_filepath` | `str`, `Path` | `None` | File path of the project's sample sheet. If not provided, the package will try to find one based on the supplied data directory path.\n\n#### `get_manifest`\n\nFind and parse the manifest file for the processed array type.\n\nReturns: A Manifest object containing the parsed probe information for the processed array type\n\n```python\nfrom methpype import get_manifest\n\nmanifest = get_manifest(raw_datasets, array_type=None, manifest_filepath=None)\n```\n\nArgument | Type | Default | Description\n--- | --- | --- | ---\n`raw_datasets` | `RawDataset` collection | - | Collection of RawDataset objects containing probe information from the raw IDAT files.\n`array_type` | `str` | `None` | Code of the array type being processed. Possible values are `custom`, `450k`, `epic`, and `epic+`. If not provided, the pacakage will attempt to determine the array type based on the provided RawDataset objects.\n`manifest_filepath` | `str`, `Path` | `None` | File path for the array's manifest file. If not provided, this file will be downloaded from a Life Epigenetics archive.\n\n#### `get_raw_datasets`\n\nFind and parse the IDAT files for samples within a project's sample sheet.\n\nReturns: A collection of RawDataset objects for each sample's IDAT file pair.\n\n```python\nfrom methpype import get_raw_datasets\n\nraw_datasets = get_raw_datasets(sample_sheet, sample_names=None)\n```\n\nArgument | Type | Default | Description\n--- | --- | --- | ---\n`sample_sheet` | `SampleSheet` | - | A SampleSheet instance from a valid project sample sheet file.\n`sample_names` | `str` collection | `None` | List of sample names to process. If provided, only those samples specified will be processed. Otherwise all samples found in the sample sheet will be processed.\n\n\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/LifeEGX/methpype", "keywords": "methylation dna data processing epigenetics illumina", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "methpype", "package_url": "https://pypi.org/project/methpype/", "platform": "", "project_url": "https://pypi.org/project/methpype/", "project_urls": { "Documentation": "https://life-epigenetics-methpype.readthedocs-hosted.com/en/latest/", "Funding": "https://lifeegx.com/", "Homepage": "https://github.com/LifeEGX/methpype", "Source": "https://github.com/lifeEGX/methpype/" }, "release_url": "https://pypi.org/project/methpype/1.0.5/", "requires_dist": [ "numpy", "pandas", "scipy", "statsmodels", "tqdm" ], "requires_python": "", "summary": "Python-based Illumina methylation array preprocessing software", "version": "1.0.5" }, "last_serial": 5642032, "releases": { "1.0.1": [ { "comment_text": "", "digests": { "md5": "2b6b972a69948d40b8d3e08b1985ee28", "sha256": "5b1a485c6319717b61029432ca432b0e89541e001754bcdd161ad6773d9f3f5d" }, "downloads": -1, "filename": "methpype-1.0.1-py3-none-any.whl", "has_sig": false, "md5_digest": "2b6b972a69948d40b8d3e08b1985ee28", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 26964, "upload_time": "2019-06-27T16:00:45", "url": "https://files.pythonhosted.org/packages/66/ee/29ade0c9508ec18134a085a0b0d55dd023f849a9031faab5a121108a9c1a/methpype-1.0.1-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "9b24403ea6986553eb33ac34695cad60", "sha256": "acf192a02388a2eb71fe4ae6d0bac13b174c53fb3bb98f95eaaa9e17b2394597" }, "downloads": -1, "filename": "methpype-1.0.1.tar.gz", "has_sig": false, "md5_digest": "9b24403ea6986553eb33ac34695cad60", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 20709, "upload_time": "2019-06-27T16:00:46", "url": "https://files.pythonhosted.org/packages/00/88/eab68b60ad237ba0f9b69f862b6b92553a9646b4e5620a06e58803fa645d/methpype-1.0.1.tar.gz" } ], "1.0.2": [ { "comment_text": "", "digests": { "md5": "ea8a248a2958a6a41eacd40b77be1ab1", "sha256": "1f746c43d2710242eee1676369b649e33ea54c206ba6b64ac5cedb8846290c92" }, "downloads": -1, "filename": "methpype-1.0.2-py3-none-any.whl", "has_sig": false, "md5_digest": "ea8a248a2958a6a41eacd40b77be1ab1", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 29813, "upload_time": "2019-07-22T21:39:23", "url": "https://files.pythonhosted.org/packages/da/af/dcafeabffdeb1d111acf7eb22cb93bfe9a2247bacded91567c22d19fb419/methpype-1.0.2-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "50f759f7c58d1dffc5d2fb53513d6514", "sha256": "73ff6cd1680c1a90c7ed2490934d6723cb1ee05aef8ffef5f6c1ef7b51ff0375" }, "downloads": -1, "filename": "methpype-1.0.2.tar.gz", "has_sig": false, "md5_digest": "50f759f7c58d1dffc5d2fb53513d6514", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 23450, "upload_time": "2019-07-22T21:39:24", "url": "https://files.pythonhosted.org/packages/17/de/28034efc6c3a0160aa03e543db07e77496f79574f40a4898f4bb02054da6/methpype-1.0.2.tar.gz" } ], "1.0.3": [ { "comment_text": "", "digests": { "md5": "426e90a55eabd5314a5b58fafd5e2de8", "sha256": "aeab9cae261356a6f161c3a8d330f2ddcbeac6834da95c70a09eb2d8deaed97f" }, "downloads": -1, "filename": "methpype-1.0.3-py3-none-any.whl", "has_sig": false, "md5_digest": "426e90a55eabd5314a5b58fafd5e2de8", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 32566, "upload_time": "2019-07-23T22:36:17", "url": "https://files.pythonhosted.org/packages/b2/4b/faaf2954af6ccf6900dd67497b82b85929abd67a85ffb0ed7dade6647c62/methpype-1.0.3-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "a963ea05373d11c6f0ca05a96bc36b53", "sha256": "cdf82d9c3667b5d614c7ca1f0a4087291850db8a17090b121ad5b3bc2bc22e10" }, "downloads": -1, "filename": "methpype-1.0.3.tar.gz", "has_sig": false, "md5_digest": "a963ea05373d11c6f0ca05a96bc36b53", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26908, "upload_time": "2019-07-23T22:36:19", "url": "https://files.pythonhosted.org/packages/12/03/6a63e824ef6af5f73f1c2d2ef1ae123cde913a3cc8476dba6c116581ae94/methpype-1.0.3.tar.gz" } ], "1.0.4": [ { "comment_text": "", "digests": { "md5": "0c626b19a3816aba84f7b967a2223aea", "sha256": "4af99481a067a75a1fa14baf21372519b39ce208cce879b61dc7a6d80ab9c2a8" }, "downloads": -1, "filename": "methpype-1.0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "0c626b19a3816aba84f7b967a2223aea", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 32512, "upload_time": "2019-07-24T20:04:04", "url": "https://files.pythonhosted.org/packages/ec/db/73e7746d3b859ec2fb696cefba7d8c3cabb1388385f20cf718842426c35a/methpype-1.0.4-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "2b0a7033217b9e60d023ca18a4d6eff7", "sha256": "2ceb4120a29937b5129cf248673dc1bc76f04f160ca4b21a7bed105fac46b172" }, "downloads": -1, "filename": "methpype-1.0.4.tar.gz", "has_sig": false, "md5_digest": "2b0a7033217b9e60d023ca18a4d6eff7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 26793, "upload_time": "2019-07-24T20:04:06", "url": "https://files.pythonhosted.org/packages/81/c8/81adeb3c3c943aeab15e4e2a8e7d5bd94272133f77d4993f68545d9c5478/methpype-1.0.4.tar.gz" } ], "1.0.5": [ { "comment_text": "", "digests": { "md5": "a00fcc0cdcf345586b57e6673aabccd0", "sha256": "49ba020f4860c8f8a07b77bf30cd9f1f354edb568ae5bbd30c9121716baa9411" }, "downloads": -1, "filename": "methpype-1.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "a00fcc0cdcf345586b57e6673aabccd0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 33793, "upload_time": "2019-08-06T22:27:40", "url": "https://files.pythonhosted.org/packages/0b/64/7ae7aa61bc1e7b30505dcb49b8dad31c8b94565be30f0d69fe0de2e3ace5/methpype-1.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ac7048143039c5552786e82d8e96003e", "sha256": "1445b6e5bcf5fc8c7cad6d1e86f88e9878a8e49c8a77de6c5d1f3193a0b35518" }, "downloads": -1, "filename": "methpype-1.0.5.tar.gz", "has_sig": false, "md5_digest": "ac7048143039c5552786e82d8e96003e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28115, "upload_time": "2019-08-06T22:27:42", "url": "https://files.pythonhosted.org/packages/87/ea/f14a9fb11b0e41bed6dbd007aa231cbe7721af39244a4c34e98b1e14b64e/methpype-1.0.5.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a00fcc0cdcf345586b57e6673aabccd0", "sha256": "49ba020f4860c8f8a07b77bf30cd9f1f354edb568ae5bbd30c9121716baa9411" }, "downloads": -1, "filename": "methpype-1.0.5-py3-none-any.whl", "has_sig": false, "md5_digest": "a00fcc0cdcf345586b57e6673aabccd0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 33793, "upload_time": "2019-08-06T22:27:40", "url": "https://files.pythonhosted.org/packages/0b/64/7ae7aa61bc1e7b30505dcb49b8dad31c8b94565be30f0d69fe0de2e3ace5/methpype-1.0.5-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ac7048143039c5552786e82d8e96003e", "sha256": "1445b6e5bcf5fc8c7cad6d1e86f88e9878a8e49c8a77de6c5d1f3193a0b35518" }, "downloads": -1, "filename": "methpype-1.0.5.tar.gz", "has_sig": false, "md5_digest": "ac7048143039c5552786e82d8e96003e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 28115, "upload_time": "2019-08-06T22:27:42", "url": "https://files.pythonhosted.org/packages/87/ea/f14a9fb11b0e41bed6dbd007aa231cbe7721af39244a4c34e98b1e14b64e/methpype-1.0.5.tar.gz" } ] }