Overview Design Implementation Algorithm Installation Instructions FAQs Acknowledgement


          (Windows) I cannot double click to start MetaboMiner?

          What type of inputs does MetaboMiner accept?

          How to get input for MetaboMiner?

          How to process 2D NMR spectra?

          What is the suggested way to perform compound identification?

          How to process the query peaks from some automatic peak picking program?

          How to choose a reference library?

          How to manually remove artifacts from the auto-picked peaks?

          How to interpret the automatic search result?

          How to set up a spectral image for annotation?

          I tried to load my spectra image, but it was blank?

          How to add/delete/edit peaks in the library?

          How to edit the reference peaks to fit my spectrum?

          How to add new compounds to the library?

          How to manually pick peaks?

          How to perform peak assignments?

          How to use the graphics options?

  1. (Windows) I cannot double click to start MetaboMiner?

    You first need to check if your computer have Java Runtime Environment (JRE) installed. If not, here is a detailed instruction.

    If this is not the case, then your operating system does not associate .jar file with the corresponding Java program (javaw.exe). To create such an association, here is a link to a detailed instruction

  2. What type of inputs does MetaboMiner accept?

    • Peak list data (two or three columns separated by space, comma or semicolon); The first two columns should be the x and y coordinates of the peak. The third column is optional. When provided, it should be peak intensity or peak height values. More column will be ignored.

    • High-resolution spectral images (currently only support png format).

  3. How to get input for MetaboMiner?

    The peak list used for MetaboMiner is usually produced from an automatic peak-picking program such as Sparky , Bruker's AMIX , NMRPipe , etc. However, the process cannot be performed blindly. An iterative process is recommended in order to get most peak signals and to avoid obvious artifacts. In our evaluation, MetaboMiner can handle up to 5,000 peaks efficiently. Most artifacts in TOCSY spectra can be eliminated using the built-in automatic peak processing procedure.

    As for the spectral image, most spectra processing programs provide options to save the processed spectrum as postscript. Programs such as ImageMagick , ps2png can be directly used for this purpose. Alternatively, you can first convert the postscript into a pdf document using ps2pdf, then convert pdf into png format using pdf2png.

  4. How to process 2D NMR spectra?

    There are many ways to process a 2D NMR spectra. We have outlined the steps using the popular NMRPipe package and NMRDraw (the companion graphical interface for NMRPipe). The example processing scripts shown below are examples of those used to generate the input data used in the paper and should work in the majority of cases. However, it the phasing values used will differ from the ones shown below and will need to be calculated for each individual spectrum.

    1. Step 1. Convert the Varian or Bruker acquired data into NMRDraw readable format.

      Open NMRDraw in the directory containing the Varian or Bruker fid and procar files. Convert the raw fid data into NMRDraw readable format using the following steps:

      1. Right Click and select "Convert Varian" or "Convert Bruker" from the Proc menu.
      2. Click "Read Parameters" in the new TCL window.
      3. Confirm and/or change any of the yellow highlighted boxes.
      4. Click "Clear Script" then "Update Script" to make the changes to the conversion script. These updates should be visible on the fly within the "Conversion script text".
      5. Once you are satisfied that the proper input variables are correct, click "Save Script" to save the script then "Execute script". A new terminal should appear in which the script runs.

         An example of scripts generated on an 800MHz instrument are shown:
      var2pipe -in ./fid -noaswap  \
        -xN              2048  -yN               512  \
        -xT              1024  -yT               256  \
        -xMODE        Complex  -yMODE        Complex  \
        -xSW        11990.408  -ySW        11990.408  \
        -xOBS         799.805  -yOBS         799.805  \
        -xCAR           4.873  -yCAR           4.873  \
        -xLAB              H1  -yLAB           H-ind  \
        -ndim               2  -aq2D          States  \
        -out ./test.fid -verb -ov
      sleep 5
    2. Step 2: Process the NMR spectrum.

      1. Start by loading up the nmrpipe generated "*.fid" file.
      2. With the cursor on the empty spectrum window, enter "S" and select the fid file.
      3. Select "h" to draw a horizontal trace, then change the 'Y' value (located in the top menu underneath the "Draw" and "1D' menu selections) to 1 in order to select the first horizontal trace.
      4. Right click the "Proc" menu and select "Auto-Process 1D". The user should now has an unphased 1D spectrum of the t2 dimension.
      5. Now change the Phasing to 'On' and adjust the P0 and P1 sliders accordingly to acheive a flat baseline with positive peaks. Record the P0 and P1 values for later use.
      6. Now right click on the "File" menu and choose "Macro Edit".
      7. Right click on the "Process 2D" menu and select "Basic 2D".
      8. Comment out the lines from the transpose function (indicated by the line containing "-fn TP") down to, but NOT including, the final command that writes out the processes spectrum (indicated by "-out test.ft2") by adding a pound sign (#) in front of each line to be not read in the script.
      9. In the first part of the spectrum processing script (that part not yet commented out) change the -p0 and -p1 phasing values to those determined previously. If the -p1 value is anything but 0, also apply circular point shifting by changing the -c value from 0.5 to 1 in the preceeding sinebell apodization function (indicated by the line containing "-fn SP").
      10. For example if the -fn PS line applies any -p1 phasing such as:
        | nmrPipe  -fn PS -p0 118.60 -p1 10.00 -di -verb       \
        the the preceding "-fn SP" line would be changed from 
        | nmrPipe  -fn SP -off 0.45 -end 0.95 -pow 2 -c 0.5    \
        | nmrPipe  -fn SP -off 0.45 -end 0.95 -pow 2 -c 1.0    \
      11. You can now save the script and execute it from the menu button located at the top of the NMR processing macro window. Once complete, the user can select the newly created "*.ft2" file and draw it out. At this point, a 2D spectum with only an interfogram of the t1 dimension has been created.
      12. Now draw a vertical trace by placing the cursor in the spectral display window and selecting "v".
      13. Left click the mouse and drag the vertical trace to any of the interferograms and process it by right clicking on the "Proc" menu and again selecting "Auto-Process 1D".
      14. Now find the -p0 and -p1 phasing values for the t1 dimension as outlined above. Again, record these values and reopen the NMRDraw Processing Macro window.
      15. Uncomment the lines previously commented out (the user now obviously realizes these lines were necessary to process the t1 dimension).
      16. Adjust the -p0 and -p1 values accordingly, then re-save and re-execute the new script. The test.ft2 file will be overwritten, but needs to be reloaded and redrawn to be viewed.

         An example of a 2D NMR processing script is shown below:
      # Basic 2D Phase-Sensitive Processing:
      #   Cosine-Bells are used in both dimensions.
      #   Use of "ZF -auto" doubles size, then rounds to power of 2.
      #   Use of "FT -auto" chooses correct Transform mode.
      #   Imaginaries are deleted with "-di" in each dimension.
      #   Phase corrections should be inserted by hand.
      nmrPipe -in test.fid \
      | nmrPipe  -fn SP -off 0.5 -end 0.99 -pow 1 -c 0.5    \
      | nmrPipe  -fn ZF -auto                               \
      | nmrPipe  -fn FT -auto                               \
      | nmrPipe  -fn PS -p0 -63.00 -p1 0.00 -di -verb       \
      | nmrPipe  -fn TP                                     \
      | nmrPipe -fn LP -fb                                  \
      | nmrPipe  -fn SP -off 0.5 -end 0.99 -pow 2 -c 0.5    \
      | nmrPipe  -fn ZF -auto                               \
      | nmrPipe  -fn FT -auto                               \
      | nmrPipe  -fn PS -p0 11.5 -p1 0.00 -di -verb         \
      | nmrPipe -fn TP                                      \
      | nmrPipe -fn POLY -auto                              \
      -ov -out test.ft2

    At this point, the user should have a perfectly phased 2D NMR spectrum. Various functions can also be employed and altered to further improve the quality of the spectrum. As suggested above, the authors refer readers to the respective manuals, tutorials and help files supplied by those programs for complete and detailed usage.

  5. What is the suggested way to perform compound identification?

    First perform automatic metabolite screening using the automatically picked peaks, then refine the identified compounds by examining the spectral images, if necessary.

  6. How to process the query peaks from some automatic peak picking program?

    1. Go to the process view (the default view when MetaboMiner starts) or click the "Search" menuItem in the "Console" Menu
    2. Copy and paste the peak list into the text area by clicking the "Paste" button
    3. Set the parameters - experiment type, library, and options to clean the artifacts
    4. Click the "Process" button to start processing the query peaks (may take a while).
    5. Examine the processed the result displayed on the right panel. If necessary, you can manually select and delete artifacts by visual examination of the peak patterns.
    6. You are now ready to search the library with "cleaned" data.

  7. How to choose a reference library?

    The choice of reference library is also very important. User should select a compound library that match their sample type. If it is not available, the generic library can be used. However, user are suggested to create a customized compound library according to the metabolite composition of the biofluids of interests.

  8. How to manually remove artifacts from the auto-picked peaks?

    MetaboMiner has built-in algorithms to process the query peaks. However, it is easy to manually delete the artifacts by visually examine the displayed synthetic spectra. Simply select the peaks you want to delete, right click anywhere on the spectra, and choose "Remove" from the pop-up menu. If you edited the original spectra, you will be prompted to re-process the edited query peak to have the same effect on the processed data. You can choose not to do any process by checking off the checkbox of the processing options.

  9. How to interpret the automatic search result?

    The compound identification is based on the 'minimal signature' peaks as discussed. A compound can be identified only if 1) it is in the reference library; and 2) its peaks are unique enough to form minimal signatures. For TOCSY library, there are still some common metabolites not covered. For example, the TOCSY spectra of some metabolites contain only a single peak that overlap with other more abundant compound species. These compounds will not be marked as present even they have matches. By utilizing the innate symmetrical peak patterns found in TOCSY spectra, the number of false positive peaks could be substantially reduced. But for certain compounds like serine and citrate, their cross peaks are very close to the diagonal line. These compounds often turn out to be false positives. For HSQC spectra, no obvious spectral pattern can be employed to help remove artifacts, the problem of false positive is more serious than TOCSY. The search result reports not only the matched peaks but also when it is being identified. "R" means the compound was identified during the reverse search process; while 'F' means it was identified during the forward search process. The latter should be treated with caution since it searches with an expanded threshold than the reverse search process which uses an adaptive threshold based on the uniqueness score of the peak. Users need to examine the raw scores and the matched patterns or peak intensities to make their own judgments.

  10. How to set up a spectral image for annotation?

    Go to the annotation view by one of the two following ways:

    • Click the "Refine" button in the SearchView, or
    • Under the "Console" menu, click "Annotate" menu item

    Inside the annotation view:

    1. From the tool bar of the annotation view, select the "Load Image" button to load your spectral image.
    2. Click on the "Set Axis" button, a blue rectangle will show up along with an input panel at the bottom of the panel.
    3. Drag the edge of the rectangle to fit the boundaries of the spectrum as close as possible (zoom in for finer adjustment)
    4. Enter the range values for each axis at the bottom panel and then click "OK";
    5. The spectrum is now set up and ready for annotation.

    Note, after you click 'OK', the blue rectangle will be anchored to the boundaries where you dragged. To active the blue rectangle, you need to click the "Set Axis" button again, then double click any side of the rectangle, the frame will be draggable.

  11. I tried to load my spectra image, but it was blank

    This is usually caused by the memory limit on the JVM (Java Virtual Machine) when loading large image files. To get around this problem, you can either try to retart the program or

    1. Linux users, try to increase the memory allocation by starting MetaboMiner as
      >java -Xmx512m -jar MetaboMiner.jar
    2. For Windows users, it is more difficult to change the JVM settings. We are creating an installer for Windows' user. Please email the author to obtain a copy.

  12. How to add/delete/edit compound peaks in the library ?

    Go to the "Library"->"Browse" menu, and select the target library. Select the compound on the list and click the "Edit" button, the peak editor will be displayed. Users can add/delete or edit peak positions from this window.

  13. How to add new compounds to the library ?

    Go to the "Library"->"Browse" sub-menu, now select the Library of interests. Clicking on the "Add" button on the bottom of the compound list. Users can either create a new compound object from scratch or export a compound from a different library. In both cases, the uniqueness values will be updated when users finish editing the library.

  14. How to manually pick peaks?

    This function is only for picking peaks that produced by compounds in the library, but not covered by its current reference peaks. Basically, you are doing peak picking and peak assignment at the same time. if you want to perform general purpose peak picking without assignment, Sparky ,or NMRPipe should be used for such task. You can only insert peaks for compounds that are available in the library. If it is not in the library, you have to first create a new compound as described. From the compound list on the left panel, first you need to select the compound that generates the peak, then right click the peak position on the spectrum and select "Insert" from the popup window. A synthetic peak will be inserted on the spot. For TOCSY experiment, the program will also generate the corresponding symmetrical peak (and diagonal peaks if they are not already exist) to complete the spin system.

  15. How to edit compound reference spectra to match my spectrum?

    If you want to make permanent changes to the library, go to the library view and edit the compound in the library view.

    If you intend to edit the current reference peaks to fit your experimental spectra, load the spectra image to the annotate view and set up axis properly. You can simply drag the corresponding peaks to the real peak position to correct the chemical shift difference. To introduce new peaks, you need to insert a peak to the current spectrum. To remove a reference peak, simple right click the peak and choose "Remove". Please note, this edited compound spectra only for the current session.

  16. How to perform peak assignments?

    Peak assignments can be performed in two places - at the library view or the annotate view. To perform peak assignment for library compounds, go to the library view, select the compound, then double click a peak on the synthetic spectrum, a small text editor will be displayed. Users can enter the peak assignment or other comment in the text box. Click anywhere on the Spectrum to save the assignment after you finish. To assign peaks in a spectrum, load the spectra image in the annotation view, first make sure that there is a synthetic peak on the peak position (the peak should be generated by the current library compound). Double click the synthetic peak to enter your assignments. Click anywhere on the Spectrum to save the assignment when it is finished.

  17. How to use the graphics options?

    There are three graphics options available to change peak size, peak shape, and peak color. When peak intensities are used and the 'intensity' display option is checked, the query peaks can only be in green background color (the added peaks will be in cyan). When the 'intensity' option is not checked, different background colors can be specified. When annotating a spectral image, user should increase peak size and use solid circle shape to enhance their visibilities because of the usually strong background.

Last updated:   May 25, 2008
Contact:   Jianguo Xia   780-4925786