Compute epigenetic age from DNA methylation arrays using PyAging clocks from GEO accessions or local files.
Epigenetic age workflows are difficult to reproduce because preprocessing and clock inputs differ across tools and publications. This skill standardizes a PyAging-first pipeline from ingestion to report generation, with explicit reproducibility outputs.
--geo-id) or local methylation file (--input).--geo-id (example: GSE139307)--input (.pkl, .pickle, .csv, .tsv, , ).csv.gz.tsv.gz--output--clocksDemo fixture provenance and checksum are documented in skills/methylation-clock/data/PROVENANCE.md.
Install optional methylation-clock dependency (not part of the global base requirements):
pip install pyaging>=0.1
# Demo
python skills/methylation-clock/methylation_clock.py \
--input skills/methylation-clock/data/GSE139307_small.csv.gz \
--output /tmp/methylation_clock_demo
# GEO input
python skills/methylation-clock/methylation_clock.py \
--geo-id GSE139307 \
--output /tmp/methylation_clock_geo
# Local methylation file
python skills/methylation-clock/methylation_clock.py \
--input my_methylation.pkl \
--clocks Horvath2013,AltumAge,PCGrimAge,GrimAge2,DunedinPACE \
--output /tmp/methylation_clock_local
methylation_clock_report/
├── report.md
├── figures/
│ ├── clock_distributions.png
│ └── clock_correlation.png
├── tables/
│ ├── predictions.csv
│ ├── prediction_summary.csv
│ ├── missing_features.csv
│ └── clock_metadata.json
└── reproducibility/
├── commands.sh
├── environment.yml
└── checksums.sha256
skills/methylation-clock/methylation_clock.py.rnaseq-de for transcriptomic-aging contrasts and equity-scorer for cohort context.