libfbi: a C++ implementation for fast box intersection and application to sparse mass spectrometry data

Bioinformatics. 2011 Apr 15;27(8):1166-7. doi: 10.1093/bioinformatics/btr084. Epub 2011 Feb 16.

Abstract

Motivation: Algorithms for sparse data require fast search and subset selection capabilities for the determination of point neighborhoods. A natural data representation for such cases are space partitioning data structures. However, the associated range queries assume noise-free observations and cannot take into account observation-specific uncertainty estimates that are present in e.g. modern mass spectrometry data. In order to accommodate the inhomogeneous noise characteristics of sparse real-world datasets, point queries need to be reformulated in terms of box intersection queries, where box sizes correspond to uncertainty regions for each observation.

Results: This contribution introduces libfbi, a standard C++, header-only template implementation for fast box intersection in an arbitrary number of dimensions, with arbitrary data types in each dimension. The implementation is applied to a data aggregation task on state-of-the-art liquid chromatography/mass spectrometry data, where it shows excellent run time properties.

Availability: The library is available under an MIT license and can be downloaded from http://software.steenlab.org/libfbi.

Contact: marc.kirchner@childrens.harvard.edu

Supplementary information: Supplementary data are available at Bioinformatics online.

Publication types

  • Research Support, Non-U.S. Gov't

MeSH terms

  • Algorithms*
  • Chromatography, Liquid
  • Mass Spectrometry / methods*
  • Software