## ----message=FALSE------------------------------------------------------------ library(plyranges) df <- data.frame(start = 1:5, width = 5) as_iranges(df) # alternatively with end df <- data.frame(start = 1:5, end = 5:9) as_iranges(df) ## ----------------------------------------------------------------------------- df <- data.frame(seqnames = c("chr1", "chr2", "chr2", "chr1", "chr2"), start = 1:5, width = 5) as_granges(df) # strand can be specified with `+`, `*` (mising) and `-` df$strand <- c("+", "+", "-", "-", "*") as_granges(df) ## ----include=FALSE------------------------------------------------------------ dir <- system.file(package = "HelloRangesData", "extdata/") genome <- as_granges(read.delim(file.path(dir, "hg19.genome"), header = FALSE), seqnames = V1, start = 1L, width = V2) gwas <- read_bed(file.path(dir, "gwas.bed"), genome_info = genome) exons <- read_bed(file.path(dir, "exons.bed"), genome_info = genome) ## ----------------------------------------------------------------------------- exons exons %>% group_by(seqnames) %>% summarise(n = n()) ## ----------------------------------------------------------------------------- exons <- exons %>% mutate(tx_id = sub("_exon.*", "", name)) ## ----------------------------------------------------------------------------- olap <- join_overlap_inner(gwas, exons) olap ## ----------------------------------------------------------------------------- olap %>% group_by(name.x, tx_id) %>% summarise(n = n()) ## ----------------------------------------------------------------------------- left_ss <- flank_left(exons, 2L) right_ss <- flank_right(exons, 2L) all_ss <- interweave(left_ss, right_ss, .id = "side") all_ss ## ----------------------------------------------------------------------------- sessionInfo()