Skip to main content
Topic: Targeted (and consistent) peak detection with XCMS (Read 5778 times) previous topic - next topic

Targeted (and consistent) peak detection with XCMS

Hello,

We have been using XCMS to automate our high throughput analysis pipeline. We use multiple columns in various settings in the lab, and consistent peak detection using centWave has proved to be very challenging. Most of our datasets contain real peaks with very different widths, and centWave often finds partial or co-joined peaks. Furthermore, when signals are weak, centWave throws away perfectly good peaks.  Peak quantification using standard curves is impossible to achieve w/o consistent, reliable peaks.

We have therefore made some changes to XCMS centWave, to enable targeted peak detection. With these changes, we can now define targets manually, where a target is a Mz range, a Rt range, and a peak width range. Targets are translated to ROIs, and we run slightly modified centWave algorithm on these manually constructed ROIs. In practice, this has produced peak sets matching targeted peak detection results from vendor software. However, unlike XCMS, vendor software cannot be automated and is hard to configure when number of targets becomes very large.

Our updates to XCMS, along with more detailed descriptions of what changed, are now in this github repository: https://github.com/benjiec/xcms

We welcome feedback, hope these changes may prove to be useful to some of you, and are willing to help incorporating appropriate changes to the main XCMS source tree.

Thanks,

Benjie

Re: Targeted (and consistent) peak detection with XCMS

Reply #1
Sounds cool!

However, I don't know if you saw but xcms was recently set up on github: https://github.com/sneumann/xcms
Your best bet to get your changes in the official XCMS is to submit them as a pull request based on the official github version.
Blog: stanstrup.github.io

Re: Targeted (and consistent) peak detection with XCMS

Reply #2
Thanks for the pointer. I didn't know about the recent github move. That's awesome. Will make a fork and a pull request.

Re: Targeted (and consistent) peak detection with XCMS

Reply #3
Any chance to get this into XCMS? XCMS is currently being overhauled so perhaps now is the right time...

EDIT: I wonder if benjie still reads this? Seems it is a few years since he logged in.
EDIT2: Anyone else has a good idea of how to use XCMS for targeted peak picking? Right now there doesn't seem to be any straight forward method apart for picking all peaks and filtering afterwards. Eventually findmzROI can be used and ROI.list supplied directly but that seems rather convoluted...
Blog: stanstrup.github.io


Re: Targeted (and consistent) peak detection with XCMS

Reply #5
Hi,
Just curious if there has been any updates on this. We are using XCMS with GC-Orbitrap data, and are trying to overcome poor detection of low abundance, targeted peaks. They are sufficient for quantification using the vendor software, but are not present in the XCMS feature table. We are now trying to incorporate Benjie's excellent modifications into our workflow, but just wanted to check and see if it has been added to the official XCMS package. Thanks in advance.