## ----setup, include=FALSE----------------------------------------------------- knitr::opts_chunk$set(collapse = TRUE, comment = "#>") library(RBedMethyl) ## ----ingest------------------------------------------------------------------- # Example bedMethyl-like content (small for illustration; headerless) lines <- c( paste("chr1", 0, 1, "m", 0, "+", 0, 1, 0, 10, 0.5, 5, 5, 0, 0, 0, 0, 0, sep = "\t"), paste("chr1", 10, 11, "m", 0, "+", 10, 11, 0, 20, 0.25, 5, 15, 0, 0, 0, 0, 0, sep = "\t"), paste("chr2", 0, 1, "m", 0, "-", 0, 1, 0, 8, 0.375, 3, 5, 0, 0, 0, 0, 0, sep = "\t") ) bed <- tempfile(fileext = ".bed") writeLines(lines, bed) bm <- readBedMethyl(bed, mod = "m", fields = c("coverage", "pct", "mod_reads")) bm ## ----summarize---------------------------------------------------------------- regions <- GenomicRanges::GRanges( seqnames = c("chr1", "chr2"), ranges = IRanges::IRanges(start = c(1, 1), end = c(12, 2)) ) summarizeByRegion(bm, regions) ## ----coercion----------------------------------------------------------------- # RangedSummarizedExperiment rse <- as(bm, "RangedSummarizedExperiment") rse # bsseq (if installed) if (requireNamespace("bsseq", quietly = TRUE) && methods::hasMethod("coerce", c("RBedMethyl", "BSseq"))) { bs <- as(bm, "BSseq") bs } else { message("bsseq is not installed or BSseq coercion is unavailable; skipping BSseq coercion.") } ## ----session-info------------------------------------------------------------- sessionInfo()