GenomicCoordinates is a Julia package designed to handle genomic coordinates efficiently. It allows to:
- convert chromosome names to
Intfor higher performace during comparison and sorting operations - define genomic intervals
- effeciently find overlaps in two vectors of genomic intervals.
using GenomicCoordinates
# convert chromosome names to Int
chr2int("chrX")
# define intervals
i1 = GenomicInterval(1, 0, 200)
i2 = GenomicInterval(1, 201, 400)
i3 = GenomicInterval(1, 401, 600)
gene1 = GenomicInterval(1, 50, 70)
gene2 = GenomicInterval(1, 150, 200)
gene3 = GenomicInterval(1, 350, 400)
# find overlapping intervals
GenomicCoordinates.find_intersections([i1, i2, i3], [gene1, gene2])
# [ [1,2], [3], [] ]