--- title: "07 - Differentially methylated regions (1kb tiles)" output: html_document --- ```{r setup, include=FALSE} knitr::opts_chunk$set(eval = FALSE, message = FALSE, warning = FALSE) library(methylKit); library(data.table) ``` Region-level, memory-efficient complement to the per-CpG DMLs. Tile the genome into non-overlapping 1 kb windows (>= 3 covered CpGs each) and re-run the same three contrasts. ```{r tile} filt <- readRDS("methylRaw_filtered.rds") tiles <- tileMethylCounts(filt, win.size = 1000, step.size = 1000, cov.bases = 3) saveRDS(tiles, "tiles.rds") # ~441,760 windows/sample ``` ```{r dmr} meta <- fread("sample_metadata.csv") run_dmr <- function(tiles, meta, idx, treat, label, qv = 0.01, md = 15) { sub <- reorganize(tiles, sample.ids = as.list(meta$sampleID[idx]), treatment = treat) m <- unite(sub, destrand = FALSE) dm <- calculateDiffMeth(m, mc.cores = 4) all <- as.data.table(getData(dm)) dmr <- all[qvalue < qv & abs(meth.diff) >= md] fwrite(all, paste0("dmr_", label, "_all.csv.gz")); fwrite(dmr, paste0("dmr_", label, ".csv")) data.table(contrast = label, windows = nrow(all), n_DMR = nrow(dmr), hyper = sum(dmr$meth.diff > 0), hypo = sum(dmr$meth.diff < 0)) } d1 <- run_dmr(tiles, meta, 1:12, c(rep(0,6),rep(1,6)), "pH_within_2N") d2 <- run_dmr(tiles, meta, 13:24, c(rep(0,6),rep(1,6)), "pH_within_3N") # ploidy main sub <- reorganize(tiles, sample.ids = as.list(meta$sampleID), treatment = c(rep(0,12),rep(1,12))) m <- unite(sub, destrand = FALSE); dm <- calculateDiffMeth(m, mc.cores = 4) all3 <- as.data.table(getData(dm)); dmr3 <- all3[qvalue < 0.01 & abs(meth.diff) >= 15] fwrite(all3, "dmr_ploidy_main_all.csv.gz"); fwrite(dmr3, "dmr_ploidy_main.csv") d3 <- data.table(contrast="ploidy_main", windows=nrow(all3), n_DMR=nrow(dmr3), hyper=sum(dmr3$meth.diff>0), hypo=sum(dmr3$meth.diff<0)) dmr_summary <- rbind(d1, d2, d3); fwrite(dmr_summary, "dmr_summary.csv") dmr_summary[] ``` Expected: pH within 2N ~1,954 DMRs (mostly hyper); pH within 3N ~2,760 (mostly hypo); ploidy main ~198. Reproduces the ploidy-dependent pH direction flip at the region level.