BACKGROUND
one-dimensional nmr
metabolomics has become an important technique in the context of systems biology to characterize changes in metabolite composition and concentration in biological systems such as cells, tissues or in bio-fluids.
one-dimensional  nmr spectra used in the context of metabolomics contain hundreds of signals arising from 50- <dig> metabolites.
to utilize this wealth of information in the context of statistical analysis, consistent and accurate processing of the data is paramount.
this includes phase correction of complex nmr signals to pure absorption line shapes and consistent baseline correction across series of spectra, along with various linear and non-linear scaling algorithms and spectral alignment .
scaling includes linear scaling algorithms, specifically total spectral area scaling and probabilistic quotient normalization  <cit> .
among non-linear scaling algorithms it includes the generalized logarithmic transformation , pareto or autoscaling  <cit> , used prior to statistical processing.
excellent reproducibility within series of spectra is essential for subsequent statistical analysis using multivariate algorithms such as principal component analysis  or pls-da, but also for univariate analysis and signal integration.
to become accessible to a broader range of users in a translational setting, metabolomics software needs to provide intuitive and transparent control over all processing steps, without limiting more sophisticated uses.
this need has been addressed by a batch processing interface, suitable to handle larger series of spectra with standard processing parameters, with an option to create user editable scripts allowing more sophisticated changes and providing access to algorithms from other packages.
two-dimensional nmr spectra
the fundamental requirements for spectral processing of two-dimensional  nmr spectra, such as j-resolved or hsqc spectra, are similar to those for 1d-nmr spectra.
owing to the reduced congestion in 2d spectra and the smaller number of data points, algorithms such as baseline correction are easier to implement.
2d spectra also present additional opportunities, especially for the assignment of metabolites depending on user driven decisions for ambiguous signals.
this requires a spectral library, ideally one that has been recorded for the same field strength and sample conditions .
metabolab implements an easy mechanism to add spectral data for metabolites taken from databases.
assignment decisions will often depend on the size of signal intensities in relation to other signals of the same metabolite, facilitated by the display of intensity values for picked peaks within regions of interests for the resonances of the metabolite of interest.
metabolab also includes a simple mechanism to transfer peak lists between spectra and automatically adjusts small shifts of signals arising from ph variations.
RESULTS
objectives
metabolab is based on the previously developed nmrlab software  <cit> , which is a general purpose software tool for multidimensional nmr data processing similar to other freely available software  <cit> .
metabolab aims to facilitate post-processing steps necessary to prepare nmr spectra for statistical analysis similar to the script based software prometab  <cit> .
the major objectives for the metabolab software design were,
<dig>  to create a simple and transparent software interface providing access to state-of-the-art algorithms,
<dig>  to provide automated or graphically facilitated algorithms, e.g.
for phase correction, spectral referencing, glog transform optimisation, baseline correction of series of spectra,
<dig>  to create a graphical batch processing interface,
<dig>  to enable data output for statistical packages such as pls toolbox ,
<dig>  to enable semi-automated assignment of 2d-hsqc spectra,
<dig>  to provide tools capable of generating peak lists and intensities for series of spectra.
one-dimensional nmr spectra processing and batch processing
metabolab includes the processing of the original spectrometer data , followed by common processing steps.
the free induction decay  is fourier transformed, phase corrected and referenced, a robust automated algorithm is included for phase correction, which has worked well for most spectra acquired with the bruker 'baseopt' acquisition parameter.
automated referencing to chemical shift standards such as tms, tmsp or dss is available.
if no chemical shift standard has been added referencing is performed on the assumption that the transmitter offset has been set to the water frequency  <cit> .
for batch processing of nmr series of nmr spectra a script builder generates scripts using standard processing steps including zero filling, several algorithms for post acquisition water suppression  <cit> , apodization functions, phase correction , dc offset correction, gibbs multiplication and referencing.
the file selection mechanism allows the simultaneous choice of nmr data from different directories.
the script builder composes a matlab script, which can be further edited and executed.
this script will read all the selected fids and process them subsequently .
processing scripts can similarly be composed for 2d spectra.
parameter sets for 2d j-resolved and for hsqc spectra have been included.
for a series of 2d j-resolved spectra a projection using either the skyline or summation algorithm along the frequency axis can be applied after optionally calculating a tilted 2d spectrum.
apodization functions default to either exponential multiplication for 1d spectra or square cosine for 2d spectra.
a window function composed of a shifted sine multiplied by an exponential  is also available for 2d j-resolved spectra.
metabolab: metabolomics post-processing
metabolomics nmr data analysis requires additional post-processing applied to the data series in order to remove distortions causing artifacts in subsequent statistical data analysis or quantification.
post-processing includes spectral alignment , various algorithms for baseline correction, the scaling of spectra , bucketing and data export for subsequent multivariate statistical analysis.
the graphical user interface  allows for the exclusion of spectra and the assignment of classes, which can be displayed in different colors.
an interface is provided to transfer data and spectral classes into the commercially available pls toolbox software .
the metabolab graphical user interface provides easy access to post-processing tasks.
even on modern spectrometers the spectral baseline is often not ideally flat or shows a small dc offset.
such distortions typically may arise from the use of digital filters in the context of oversampling or from imperfections in the water suppression.
moreover, small baseline distortions in high-resolution 1d spectra are enhanced by non-linear scaling algorithms such as the glog transform  <cit> , pareto or autoscaling, which are typically used to enhance small signals in spectra.
metabolab includes various algorithms with automated determination of baseline points for baseline correction  <cit> .
however, parametrization of these algorithms is often difficult and tends to cause artifacts at the edge of peaks.
best results are achieved by manually picking baseline points on the series of nmr spectra, using common zeros in all or most spectra, followed by calculating a spline function to model the baseline for each individual spectrum.
the advantage of this is that exactly the same spline points can be used for all spectra, thus reducing the variability between spectra.
facilitated by a graphical interface this helps to minimize distortions introduced by the baseline correction.
metabolab includes a new algorithm to compute an optimized glog parameter that maximizes the variance in the spectral series of nmr spectra.
for sufficiently large data sets this algorithm yields good glog parameters.
metabolab also allows manual modification of glog parameters and facilitates its adjustment by updating the display of processed spectra in real time.
graphical assignment tool
the assignment tool presents itself as a graphical user interface to assign signals in 2d-hsqc spectra based on metabolite peak lists in a spectral library .
metabolab contains a limited number of assigned metabolites from public databases  <cit>  but provides an easy method to add additional metabolites.
the software allows for small differences in chemical shifts in a spectrum compared to those in the library and searches for the closest local maximum .
the chemical structure including atom numbering of the carbon nuclei is displayed for an individual metabolite .
for ambiguous assignments alternative assignments available in the spectral library can be displayed along with peak intensities.
duplicate assignments are highlighted by color.
CONCLUSIONS
metabolab has been designed to provide an intuitive user-friendly software for metabolomics data processing and analysis, which is equally usable for non-expert users as for users interested in further data analysis within matlab.
the software is designed to process series of nmr spectra in the most reproducible manner.
the software can be used via its graphical user interface but providing access to all data structures from within the matlab environment.
all functions in metabolab/nmrlab are scriptable and scripts can be generated by a graphical front-end.
baseline correction, phase correction, alignment and scaling tools were designed for optimal processing of larger series of spectra.
metabolab also provides a link to the matlab based statistical data analysis software pls toolbox.
the software can be downloaded from http://www.nmrlab.org.uk.
this website also contains online manuals and tutorial videos.

 one-dimensional nmr metabolomics has become an important technique in the context of systems biology to characterize changes in metabolite composition and concentration in biological systems such as cells, tissues or in bio-fluids. one-dimensional nmr spectra used in the context of metabolomics contain hundreds of signals arising from 50- metabolites. to utilize this wealth of information in the context of statistical analysis, consistent and accurate processing of the data is paramount. this includes phase correction of complex nmr signals to pure absorption line shapes and consistent baseline correction across series of spectra, along with various linear and non-linear scaling algorithms and spectral alignment. scaling includes linear scaling algorithms, specifically total spectral area scaling and probabilistic quotient normalization. among non-linear scaling algorithms it includes the generalized logarithmic transformation, pareto or autoscaling, used prior to statistical processing. excellent reproducibility within series of spectra is essential for subsequent statistical analysis using multivariate algorithms such as principal component analysis or pls-da, but also for univariate analysis and signal integration. to become accessible to a broader range of users in a translational setting, metabolomics software needs to provide intuitive and transparent control over all processing steps, without limiting more sophisticated uses. this need has been addressed by a batch processing interface, suitable to handle larger series of spectra with standard processing parameters, with an option to create user editable scripts allowing more sophisticated changes and providing access to algorithms from other packages. two-dimensional nmr spectra the fundamental requirements for spectral processing of two-dimensional nmr spectra, such as j-resolved or hsqc spectra, are similar to those for 1d-nmr spectra. owing to the reduced congestion in 2d spectra and the smaller number of data points, algorithms such as baseline correction are easier to implement. 2d spectra also present additional opportunities, especially for the assignment of metabolites depending on user driven decisions for ambiguous signals. this requires a spectral library, ideally one that has been recorded for the same field strength and sample conditions. metabolab implements an easy mechanism to add spectral data for metabolites taken from databases. assignment decisions will often depend on the size of signal intensities in relation to other signals of the same metabolite, facilitated by the display of intensity values for picked peaks within regions of interests for the resonances of the metabolite of interest. metabolab also includes a simple mechanism to transfer peak lists between spectra and automatically adjusts small shifts of signals arising from ph variations.  objectives metabolab is based on the previously developed nmrlab software, which is a general purpose software tool for multidimensional nmr data processing similar to other freely available software. metabolab aims to facilitate post-processing steps necessary to prepare nmr spectra for statistical analysis similar to the script based software prometab. the major objectives for the metabolab software design were, to create a simple and transparent software interface providing access to state-of-the-art algorithms, to provide automated or graphically facilitated algorithms, e.g. for phase correction, spectral referencing, glog transform optimisation, baseline correction of series of spectra, to create a graphical batch processing interface, to enable data output for statistical packages such as pls toolbox, to enable semi-automated assignment of 2d-hsqc spectra, to provide tools capable of generating peak lists and intensities for series of spectra. one-dimensional nmr spectra processing and batch processing metabolab includes the processing of the original spectrometer data, followed by common processing steps. the free induction decay is fourier transformed, phase corrected and referenced, a robust automated algorithm is included for phase correction, which has worked well for most spectra acquired with the bruker'baseopt' acquisition parameter. automated referencing to chemical shift standards such as tms, tmsp or dss is available. if no chemical shift standard has been added referencing is performed on the assumption that the transmitter offset has been set to the water frequency. for batch processing of nmr series of nmr spectra a script builder generates scripts using standard processing steps including zero filling, several algorithms for post acquisition water suppression, apodization functions, phase correction, dc offset correction, gibbs multiplication and referencing. the file selection mechanism allows the simultaneous choice of nmr data from different directories. the script builder composes a matlab script, which can be further edited and executed. this script will read all the selected fids and process them subsequently. processing scripts can similarly be composed for 2d spectra. parameter sets for 2d j-resolved and for hsqc spectra have been included. for a series of 2d j-resolved spectra a projection using either the skyline or summation algorithm along the frequency axis can be applied after optionally calculating a tilted 2d spectrum. apodization functions default to either exponential multiplication for 1d spectra or square cosine for 2d spectra. a window function composed of a shifted sine multiplied by an exponential is also available for 2d j-resolved spectra. metabolab: metabolomics post-processing metabolomics nmr data analysis requires additional post-processing applied to the data series in order to remove distortions causing artifacts in subsequent statistical data analysis or quantification. post-processing includes spectral alignment, various algorithms for baseline correction, the scaling of spectra, bucketing and data export for subsequent multivariate statistical analysis. the graphical user interface allows for the exclusion of spectra and the assignment of classes, which can be displayed in different colors. an interface is provided to transfer data and spectral classes into the commercially available pls toolbox software. the metabolab graphical user interface provides easy access to post-processing tasks. even on modern spectrometers the spectral baseline is often not ideally flat or shows a small dc offset. such distortions typically may arise from the use of digital filters in the context of oversampling or from imperfections in the water suppression. moreover, small baseline distortions in high-resolution 1d spectra are enhanced by non-linear scaling algorithms such as the glog transform, pareto or autoscaling, which are typically used to enhance small signals in spectra. metabolab includes various algorithms with automated determination of baseline points for baseline correction. however, parametrization of these algorithms is often difficult and tends to cause artifacts at the edge of peaks. best results are achieved by manually picking baseline points on the series of nmr spectra, using common zeros in all or most spectra, followed by calculating a spline function to model the baseline for each individual spectrum. the advantage of this is that exactly the same spline points can be used for all spectra, thus reducing the variability between spectra. facilitated by a graphical interface this helps to minimize distortions introduced by the baseline correction. metabolab includes a new algorithm to compute an optimized glog parameter that maximizes the variance in the spectral series of nmr spectra. for sufficiently large data sets this algorithm yields good glog parameters. metabolab also allows manual modification of glog parameters and facilitates its adjustment by updating the display of processed spectra in real time. graphical assignment tool the assignment tool presents itself as a graphical user interface to assign signals in 2d-hsqc spectra based on metabolite peak lists in a spectral library. metabolab contains a limited number of assigned metabolites from public databases but provides an easy method to add additional metabolites. the software allows for small differences in chemical shifts in a spectrum compared to those in the library and searches for the closest local maximum. the chemical structure including atom numbering of the carbon nuclei is displayed for an individual metabolite. for ambiguous assignments alternative assignments available in the spectral library can be displayed along with peak intensities. duplicate assignments are highlighted by color.  metabolab has been designed to provide an intuitive user-friendly software for metabolomics data processing and analysis, which is equally usable for non-expert users as for users interested in further data analysis within matlab. the software is designed to process series of nmr spectra in the most reproducible manner. the software can be used via its graphical user interface but providing access to all data structures from within the matlab environment. all functions in metabolab/nmrlab are scriptable and scripts can be generated by a graphical front-end. baseline correction, phase correction, alignment and scaling tools were designed for optimal processing of larger series of spectra. metabolab also provides a link to the matlab based statistical data analysis software pls toolbox. the software can be downloaded from http://www.nmrlab.org.uk. this website also contains online manuals and tutorial videos. 
a graphical user interface provides easy access to all steps of data processing via a script builder to generate matlab scripts, providing an option to alter code manually. the combination of an intuitive graphical user interface along with advanced data processing algorithms facilitates the use of metabolab in a broader metabolomics context. despite wide-spread use of nuclear magnetic resonance in metabolomics for the analysis of biological samples there is a lack of graphically driven, publicly available software to process large one and two-dimensional nmr data sets for statistical analysis. algorithms within metabolab help to optimize the flow of metabolomics data preparation for statistical analysis. it includes tools for batch processing and gives access to a wealth of algorithms available in the matlab framework. the analysis of two-dimensional spectra is facilitated by the use of a spectral library derived from publicly available databases which can be extended readily.
 despite wide-spread use of nuclear magnetic resonance in metabolomics for the analysis of biological samples there is a lack of graphically driven, publicly available software to process large one and two-dimensional nmr data sets for statistical analysis.  here we present metabolab, a matlab based software package that facilitates nmr data processing by providing automated algorithms for processing series of spectra in a reproducible fashion. a graphical user interface provides easy access to all steps of data processing via a script builder to generate matlab scripts, providing an option to alter code manually. the analysis of two-dimensional spectra is facilitated by the use of a spectral library derived from publicly available databases which can be extended readily. the software allows to display specific metabolites in small regions of interest where signals can be picked. to facilitate the analysis of series of two-dimensional spectra, different spectra can be overlaid and assignments can be transferred between spectra. the software includes mechanisms to account for overlapping signals by highlighting neighboring and ambiguous assignments.  the metabolab software is an integrated software package for nmr data processing and analysis, closely linked to the previously developed nmrlab software. it includes tools for batch processing and gives access to a wealth of algorithms available in the matlab framework. algorithms within metabolab help to optimize the flow of metabolomics data preparation for statistical analysis. the combination of an intuitive graphical user interface along with advanced data processing algorithms facilitates the use of metabolab in a broader metabolomics context. 