fjoin: simple and efficient computation of feature overlaps.
Sets of biological features with genome coordinates (e.g., genes and promoters) are a particularly common form of data in bioinformatics today. Accordingly, an increasingly important processing step involves comparing coordinates from large sets of features to find overlapping feature pairs. This paper presents fjoin, an efficient, robust, and simple algorithm for finding these pairs, and a downloadable implementation. For typical bioinformatics feature sets, fjoin requires O(n log(n)) time (O(n) if the inputs are sorted) and uses O(1) space. The reference implementation is a stand-alone Python program; it implements the basic algorithm and a number of useful extensions, which are also discussed in this paper.
Richardson
Joel E
JE
The Jackson Laboratory, Mouse Genome Informatics, Bar Harbor, Maine 04609, USA. jer@informatics.jax.org
D000465:Algorithms; D019295:Computational Biology / Q000379:methods*; D010363:Pattern Recognition, Automated / Q000379:methods*; D012984:Software