Mepylome
Python toolkit for parsing, processing, and analysis of Illumina methylation array IDAT files
Install / Use
/learn @brj0/MepylomeREADME
Mepylome: Methylation Array Analysis Toolkit
Mepylome is an efficient Python toolkit tailored for parsing, processing, and analyzing methylation array IDAT files. Serving as a versatile library, Mepylome supports a wide range of methylation analysis tasks. It also includes an interactive GUI that enables users to generate UMAP plots and CNV plots (Copy Number Variation) directly from collections of IDAT files.
Publication
This library is described in the following peer-reviewed publication:
https://doi.org/10.1002/aisy.202500778
Features
- Parsing of IDAT files
- Extraction of methylation signals
- Calculation of Copy Number Variations (CNV) with visualization using plotly.
- Support for the following Illumina array types: 450k, EPIC, EPICv2, MSA48
- Significantly faster compared to minfi and conumee2.
- Methylation analysis tool with a graphical browser interface for UMAP
analysis, CNV plots and supervised classification
- Can be run from the command line with minimal setup or customized through a Python script
- CN-summary plots
Documentation
The mepylome documentation, including installation instructions, tutorial and API, is available at https://mepylome.readthedocs.io/
Usage
Methylation extraction and copy number variation plots
from pathlib import Path
from mepylome import CNV, MethylData
# Sample
analysis_dir = Path("/path/to/idat/directory")
sample_file = analysis_dir / "200925700125_R07C01"
# CNV neutral reference files
reference_dir = Path("/path/to/reference/directory")
# Get methylation data
sample_methyl = MethylData(file=sample_file)
reference_methyl = MethylData(file=reference_dir)
# Beta value
betas = sample_methyl.betas
# Print overview of processed data
print(sample_methyl)
# CNV anylsis
cnv = CNV.set_all(sample_methyl, reference_methyl)
# Visualize CNV in the browser
cnv.plot()
Methylation analysis: Command-line interface and GUI
<img alt="Mepylome Logo" src="https://raw.githubusercontent.com/brj0/mepylome/main/docs/images/screenshot.png">Basic usage:
Mepylome provides a command-line interface for launching a GUI and performing methylation analysis. Ensure you have an analysis directory, a CNV reference directory, and an annotation file (located within the analysis directory). Use the following command to initiate the analysis:
mepylome --analysis_dir /path/to/idats --reference_dir /path/to/ref
If you want to perform a quick test, use:
mepylome --tutorial
This command downloads sample IDAT files and provides a demonstration of the package's functionality.
You can try the tutorial directly in Google Colab-without downloading or installing anything-by clicking the link below. Please note that GUI support is limited in Colab.
See https://mepylome.readthedocs.io/ for details.
Contributing
Contributions are welcome! If you have any bug reports, feature requests, or suggestions, please open an issue or submit a pull request.
License
This project is licensed under the MIT license.
Acknowledgements
Mepylome is strongly influenced by minfi and conumee2. Some functionalities, such as the manifest handler and parser, are adapted from methylprep.
Related Skills
node-connect
344.4kDiagnose OpenClaw node connection and pairing failures for Android, iOS, and macOS companion apps
claude-opus-4-5-migration
99.2kMigrate prompts and code from Claude Sonnet 4.0, Sonnet 4.5, or Opus 4.1 to Opus 4.5
frontend-design
99.2kCreate distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics.
model-usage
344.4kUse CodexBar CLI local cost usage to summarize per-model usage for Codex or Claude, including the current (most recent) model or a full model breakdown. Trigger when asked for model-level usage/cost data from codexbar, or when you need a scriptable per-model summary from codexbar cost JSON.
