I was trying to find a way to find overlaps between two genomic ranges. I found a post at Biostars but it couldn't consider the chromosome information. For example:
library(IRanges) df1 = data.frame(chr = c("chr1", "chr12"), start = c(10000, 10000), end = c(20000, 20000)) df2 = data.frame(chr = rep("chr1", 4), posn = c(100, 12000, 15000, 250000), x = rep(1, 4), y = rep(2, 4), z = rep(3, 4)) df1.ir = IRanges(start = df1$start, end = df1$end, names = df1$chr) df2.ir = IRanges(start = df2$posn, end = df2$posn, names = df2$chr) df1.it = NCList(df1.ir) overlap_it = findOverlaps(df2.ir, df1.it) print(overlap_it)
It returns the overlap from both chromosomes. I am wondering if there is a way to keep the chromosome information intact.