summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--python-methylprep.spec289
-rw-r--r--sources1
3 files changed, 291 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..fd244c8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/methylprep-1.7.1.tar.gz
diff --git a/python-methylprep.spec b/python-methylprep.spec
new file mode 100644
index 0000000..0490d14
--- /dev/null
+++ b/python-methylprep.spec
@@ -0,0 +1,289 @@
+%global _empty_manifest_terminate_build 0
+Name: python-methylprep
+Version: 1.7.1
+Release: 1
+Summary: Python-based Illumina methylation array preprocessing software
+License: MIT
+URL: https://github.com/FOXOBioScience/methylprep
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/6b/58/677b958474072bccae801805608fb8a700ebdafdda7fc86c2e5a66ce165a/methylprep-1.7.1.tar.gz
+BuildArch: noarch
+
+Requires: python3-pyparsing
+Requires: python3-numpy
+Requires: python3-pandas
+Requires: python3-scipy
+Requires: python3-statsmodels
+Requires: python3-tqdm
+Requires: python3-bs4
+Requires: python3-lxml
+Requires: python3-requests
+Requires: python3-methylcheck
+Requires: python3-pytest
+Requires: python3-pytest-mock
+Requires: python3-matplotlib
+Requires: python3-scikit-learn
+Requires: python3-openpyxl
+Requires: python3-coverage
+
+%description
+`methylprep` is a python package for processing Illumina methylation array data.
+View on [ReadTheDocs.](https://life-epigenetics-methylprep.readthedocs-hosted.com/en/latest/)
+
+[![tests](https://github.com/FoxoTech/methylprep/workflows/tests/badge.svg)](https://github.com/FoxoTech/methylprep/actions/workflows/ci.yml) [![Readthedocs](https://readthedocs.com/projects/life-epigenetics-methylprep/badge/?version=latest)](https://life-epigenetics-methylprep.readthedocs-hosted.com/en/latest/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![CircleCI](https://circleci.com/gh/FoxoTech/methylprep.svg?style=shield)](https://circleci.com/gh/FoxoTech/methylprep) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/e7228cfdfd714411bda7d6f8d6656630)](https://www.codacy.com/gh/FoxoTech/methylprep/dashboard?utm_source=github.com&utm_medium=referral&utm_content=FoxoTech/methylprep&utm_campaign=Badge_Grade) [![Coverage Status](https://coveralls.io/repos/github/FoxoTech/methylprep/badge.svg?t=mwigt8)](https://coveralls.io/github/FoxoTech/methylprep) [![PyPI-Downloads](https://img.shields.io/pypi/dm/methylprep.svg?label=pypi%20downloads&logo=PyPI&logoColor=white)](https://pypi.org/project/methylprep/)
+
+## Methylprep is part of the methylsuite
+
+![](https://raw.githubusercontent.com/FoxoTech/methylprep/master/docs/methyl-suite.png)
+
+`methylprep` is part of the [methylsuite](https://pypi.org/project/methylsuite/) of python packages that provide functions to process and analyze DNA methylation data from Illumina's Infinium arrays (27k, 450k, and EPIC, as well as mouse arrays). The `methylprep` package contains functions for processing raw data files from arrays and downloading/processing public data sets from GEO (the NIH Gene Expression Omnibus database repository), or from ArrayExpress. It contains both a command line interface (CLI) for processing data from local files, and a set of functions for building a custom pipeline in a jupyter notebook or python scripting environment. The aim is to offer a standard process, with flexibility for those who want it.
+
+`methylprep` data processing has also been tested and benchmarked to match the outputs of two popular R packages: [sesame](https://bioconductor.org/packages/release/bioc/html/sesame.html) (v1.10.4) and [minfi](https://bioconductor.org/packages/release/bioc/html/minfi.html) (v1.38).
+
+## Methylsuite package components
+
+You should install all three components, as they work together. The parts include:
+
+- `methylprep`: (this package) for processing `idat` files or downloading GEO datasets from NIH. Processing steps include
+ - infer type-I channel switch
+ - NOOB (normal-exponential convolution on out-of-band probe data)
+ - poobah (p-value with out-of-band array hybridization, for filtering lose signal-to-noise probes)
+ - qualityMask (to exclude historically less reliable probes)
+ - nonlinear dye bias correction (AKA signal quantile normalization between red/green channels across a sample)
+ - calculate beta-value, m-value, or copy-number matrix
+ - large batch memory management, by splitting it up into smaller batches during processing
+
+- `methylcheck`: for quality control (QC) and analysis, including
+ - functions for filtering out unreliable probes, based on the published literature
+ - Note that `methylprep process` will exclude a set of unreliable probes by default. You can disable that using the --no_quality_mask option from CLI.
+ - sample outlier detection
+ - array level QC plots, based on Genome Studio functions
+ - a python clone of Illumina's Bead Array Controls Reporter software (QC)
+ - data visualization functions based on `seaborn` and `matplotlib` graphic libraries.
+ - predict sex of human samples from probes
+ - interactive method for assigning samples to groups, based on array data, in a Jupyter notebook
+
+- `methylize` provides more analysis and interpretation functions
+ - differentially methylated probe statistics (between treatment and control samples)
+ - volcano plots (which probes are the most different?)
+ - manhattan plots (where in genome are the differences?)
+
+## Installation
+
+`methylprep` maintains configuration files for your Python package manager of choice: [pipenv](https://pipenv.readthedocs.io/en/latest/) or [pip](https://pip.pypa.io/en/stable/). Conda install is coming soon.
+
+```shell
+>>> pip install methylprep
+```
+
+or if you want to install all three packages at once:
+```shell
+>>> pip install methylsuite
+```
+
+## Tutorials and Guides
+If you're new to DNA methylation analysis, we recommend reading through [this introduction](docs/introduction/introduction.md) in order get the background knowledge needed to best utilize `methylprep` effectively. Otherwise, you're ready to use `methylprep` for:
+<br>
+
+- processing [your own methylation data](docs/general_walkthrough.md#processing-your-own-data)
+- downloading [unprocessed data](docs/general_walkthrough.md#downloading-from-geo) (like IDAT files) from GEO.
+- downloading [preprocessed data](docs/special_cases.md#using-beta-bake-for-preprocessed-data) (like beta values) from GEO.
+- building a composite dataset [using control samples](docs/special_cases.md#building-a-composite-dataset-using-meta-data) from GEO.
+- building a composite dataset from GEO data [with any keyword you choose](docs/special_cases.md#building-a-composite-dataset-with-alert-and-composite) (e.g. combining all GEO datasets that have methylation data from patients with brain cancer).
+
+<!-- Add link to methods paper when available -->
+
+
+
+
+%package -n python3-methylprep
+Summary: Python-based Illumina methylation array preprocessing software
+Provides: python-methylprep
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-methylprep
+`methylprep` is a python package for processing Illumina methylation array data.
+View on [ReadTheDocs.](https://life-epigenetics-methylprep.readthedocs-hosted.com/en/latest/)
+
+[![tests](https://github.com/FoxoTech/methylprep/workflows/tests/badge.svg)](https://github.com/FoxoTech/methylprep/actions/workflows/ci.yml) [![Readthedocs](https://readthedocs.com/projects/life-epigenetics-methylprep/badge/?version=latest)](https://life-epigenetics-methylprep.readthedocs-hosted.com/en/latest/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![CircleCI](https://circleci.com/gh/FoxoTech/methylprep.svg?style=shield)](https://circleci.com/gh/FoxoTech/methylprep) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/e7228cfdfd714411bda7d6f8d6656630)](https://www.codacy.com/gh/FoxoTech/methylprep/dashboard?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=FoxoTech/methylprep&amp;utm_campaign=Badge_Grade) [![Coverage Status](https://coveralls.io/repos/github/FoxoTech/methylprep/badge.svg?t=mwigt8)](https://coveralls.io/github/FoxoTech/methylprep) [![PyPI-Downloads](https://img.shields.io/pypi/dm/methylprep.svg?label=pypi%20downloads&logo=PyPI&logoColor=white)](https://pypi.org/project/methylprep/)
+
+## Methylprep is part of the methylsuite
+
+![](https://raw.githubusercontent.com/FoxoTech/methylprep/master/docs/methyl-suite.png)
+
+`methylprep` is part of the [methylsuite](https://pypi.org/project/methylsuite/) of python packages that provide functions to process and analyze DNA methylation data from Illumina's Infinium arrays (27k, 450k, and EPIC, as well as mouse arrays). The `methylprep` package contains functions for processing raw data files from arrays and downloading/processing public data sets from GEO (the NIH Gene Expression Omnibus database repository), or from ArrayExpress. It contains both a command line interface (CLI) for processing data from local files, and a set of functions for building a custom pipeline in a jupyter notebook or python scripting environment. The aim is to offer a standard process, with flexibility for those who want it.
+
+`methylprep` data processing has also been tested and benchmarked to match the outputs of two popular R packages: [sesame](https://bioconductor.org/packages/release/bioc/html/sesame.html) (v1.10.4) and [minfi](https://bioconductor.org/packages/release/bioc/html/minfi.html) (v1.38).
+
+## Methylsuite package components
+
+You should install all three components, as they work together. The parts include:
+
+- `methylprep`: (this package) for processing `idat` files or downloading GEO datasets from NIH. Processing steps include
+ - infer type-I channel switch
+ - NOOB (normal-exponential convolution on out-of-band probe data)
+ - poobah (p-value with out-of-band array hybridization, for filtering lose signal-to-noise probes)
+ - qualityMask (to exclude historically less reliable probes)
+ - nonlinear dye bias correction (AKA signal quantile normalization between red/green channels across a sample)
+ - calculate beta-value, m-value, or copy-number matrix
+ - large batch memory management, by splitting it up into smaller batches during processing
+
+- `methylcheck`: for quality control (QC) and analysis, including
+ - functions for filtering out unreliable probes, based on the published literature
+ - Note that `methylprep process` will exclude a set of unreliable probes by default. You can disable that using the --no_quality_mask option from CLI.
+ - sample outlier detection
+ - array level QC plots, based on Genome Studio functions
+ - a python clone of Illumina's Bead Array Controls Reporter software (QC)
+ - data visualization functions based on `seaborn` and `matplotlib` graphic libraries.
+ - predict sex of human samples from probes
+ - interactive method for assigning samples to groups, based on array data, in a Jupyter notebook
+
+- `methylize` provides more analysis and interpretation functions
+ - differentially methylated probe statistics (between treatment and control samples)
+ - volcano plots (which probes are the most different?)
+ - manhattan plots (where in genome are the differences?)
+
+## Installation
+
+`methylprep` maintains configuration files for your Python package manager of choice: [pipenv](https://pipenv.readthedocs.io/en/latest/) or [pip](https://pip.pypa.io/en/stable/). Conda install is coming soon.
+
+```shell
+>>> pip install methylprep
+```
+
+or if you want to install all three packages at once:
+```shell
+>>> pip install methylsuite
+```
+
+## Tutorials and Guides
+If you're new to DNA methylation analysis, we recommend reading through [this introduction](docs/introduction/introduction.md) in order get the background knowledge needed to best utilize `methylprep` effectively. Otherwise, you're ready to use `methylprep` for:
+<br>
+
+- processing [your own methylation data](docs/general_walkthrough.md#processing-your-own-data)
+- downloading [unprocessed data](docs/general_walkthrough.md#downloading-from-geo) (like IDAT files) from GEO.
+- downloading [preprocessed data](docs/special_cases.md#using-beta-bake-for-preprocessed-data) (like beta values) from GEO.
+- building a composite dataset [using control samples](docs/special_cases.md#building-a-composite-dataset-using-meta-data) from GEO.
+- building a composite dataset from GEO data [with any keyword you choose](docs/special_cases.md#building-a-composite-dataset-with-alert-and-composite) (e.g. combining all GEO datasets that have methylation data from patients with brain cancer).
+
+<!-- Add link to methods paper when available -->
+
+
+
+
+%package help
+Summary: Development documents and examples for methylprep
+Provides: python3-methylprep-doc
+%description help
+`methylprep` is a python package for processing Illumina methylation array data.
+View on [ReadTheDocs.](https://life-epigenetics-methylprep.readthedocs-hosted.com/en/latest/)
+
+[![tests](https://github.com/FoxoTech/methylprep/workflows/tests/badge.svg)](https://github.com/FoxoTech/methylprep/actions/workflows/ci.yml) [![Readthedocs](https://readthedocs.com/projects/life-epigenetics-methylprep/badge/?version=latest)](https://life-epigenetics-methylprep.readthedocs-hosted.com/en/latest/) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![CircleCI](https://circleci.com/gh/FoxoTech/methylprep.svg?style=shield)](https://circleci.com/gh/FoxoTech/methylprep) [![Codacy Badge](https://app.codacy.com/project/badge/Grade/e7228cfdfd714411bda7d6f8d6656630)](https://www.codacy.com/gh/FoxoTech/methylprep/dashboard?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=FoxoTech/methylprep&amp;utm_campaign=Badge_Grade) [![Coverage Status](https://coveralls.io/repos/github/FoxoTech/methylprep/badge.svg?t=mwigt8)](https://coveralls.io/github/FoxoTech/methylprep) [![PyPI-Downloads](https://img.shields.io/pypi/dm/methylprep.svg?label=pypi%20downloads&logo=PyPI&logoColor=white)](https://pypi.org/project/methylprep/)
+
+## Methylprep is part of the methylsuite
+
+![](https://raw.githubusercontent.com/FoxoTech/methylprep/master/docs/methyl-suite.png)
+
+`methylprep` is part of the [methylsuite](https://pypi.org/project/methylsuite/) of python packages that provide functions to process and analyze DNA methylation data from Illumina's Infinium arrays (27k, 450k, and EPIC, as well as mouse arrays). The `methylprep` package contains functions for processing raw data files from arrays and downloading/processing public data sets from GEO (the NIH Gene Expression Omnibus database repository), or from ArrayExpress. It contains both a command line interface (CLI) for processing data from local files, and a set of functions for building a custom pipeline in a jupyter notebook or python scripting environment. The aim is to offer a standard process, with flexibility for those who want it.
+
+`methylprep` data processing has also been tested and benchmarked to match the outputs of two popular R packages: [sesame](https://bioconductor.org/packages/release/bioc/html/sesame.html) (v1.10.4) and [minfi](https://bioconductor.org/packages/release/bioc/html/minfi.html) (v1.38).
+
+## Methylsuite package components
+
+You should install all three components, as they work together. The parts include:
+
+- `methylprep`: (this package) for processing `idat` files or downloading GEO datasets from NIH. Processing steps include
+ - infer type-I channel switch
+ - NOOB (normal-exponential convolution on out-of-band probe data)
+ - poobah (p-value with out-of-band array hybridization, for filtering lose signal-to-noise probes)
+ - qualityMask (to exclude historically less reliable probes)
+ - nonlinear dye bias correction (AKA signal quantile normalization between red/green channels across a sample)
+ - calculate beta-value, m-value, or copy-number matrix
+ - large batch memory management, by splitting it up into smaller batches during processing
+
+- `methylcheck`: for quality control (QC) and analysis, including
+ - functions for filtering out unreliable probes, based on the published literature
+ - Note that `methylprep process` will exclude a set of unreliable probes by default. You can disable that using the --no_quality_mask option from CLI.
+ - sample outlier detection
+ - array level QC plots, based on Genome Studio functions
+ - a python clone of Illumina's Bead Array Controls Reporter software (QC)
+ - data visualization functions based on `seaborn` and `matplotlib` graphic libraries.
+ - predict sex of human samples from probes
+ - interactive method for assigning samples to groups, based on array data, in a Jupyter notebook
+
+- `methylize` provides more analysis and interpretation functions
+ - differentially methylated probe statistics (between treatment and control samples)
+ - volcano plots (which probes are the most different?)
+ - manhattan plots (where in genome are the differences?)
+
+## Installation
+
+`methylprep` maintains configuration files for your Python package manager of choice: [pipenv](https://pipenv.readthedocs.io/en/latest/) or [pip](https://pip.pypa.io/en/stable/). Conda install is coming soon.
+
+```shell
+>>> pip install methylprep
+```
+
+or if you want to install all three packages at once:
+```shell
+>>> pip install methylsuite
+```
+
+## Tutorials and Guides
+If you're new to DNA methylation analysis, we recommend reading through [this introduction](docs/introduction/introduction.md) in order get the background knowledge needed to best utilize `methylprep` effectively. Otherwise, you're ready to use `methylprep` for:
+<br>
+
+- processing [your own methylation data](docs/general_walkthrough.md#processing-your-own-data)
+- downloading [unprocessed data](docs/general_walkthrough.md#downloading-from-geo) (like IDAT files) from GEO.
+- downloading [preprocessed data](docs/special_cases.md#using-beta-bake-for-preprocessed-data) (like beta values) from GEO.
+- building a composite dataset [using control samples](docs/special_cases.md#building-a-composite-dataset-using-meta-data) from GEO.
+- building a composite dataset from GEO data [with any keyword you choose](docs/special_cases.md#building-a-composite-dataset-with-alert-and-composite) (e.g. combining all GEO datasets that have methylation data from patients with brain cancer).
+
+<!-- Add link to methods paper when available -->
+
+
+
+
+%prep
+%autosetup -n methylprep-1.7.1
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-methylprep -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 1.7.1-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..7594a40
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+8eec7745bc2c72c7564abc5f6eeeb694 methylprep-1.7.1.tar.gz