Closed wernber closed 9 years ago
Currently, HighResPrecursorMassCorrector only assigns the precursor peak to the nearest MS1 mass trace peak (similar is done in ProteoWizard). It would be a nice feature to implement (optional) charge correction, too. Probably something simple as:
Currently we do not seem to have very good, independent code for charge deconvolution in OpenMS (as far as I can tell). The code we have seems to be spread around multiple feature finders (SuperHirn, Centroided, Raw, Metabo) so this might be an opportunity to consolidate some of these efforts and try to put algorithmic components of charge deconvolution into a separate class in OpenMS.
Hannes
On 1 July 2014 10:28, timosachsenberg notifications@github.com wrote:
Currently, HighResPrecursorMassCorrector only assigns the precursor peak to the nearest MS1 mass trace peak (similar is done in ProteoWizard). It would be a nice feature to implement (optional) charge correction, too. Probably something simple as:
- find mono-isotopic peak
- determine matching isotopic peaks for charges e.g. z-2 to z+2
- assign new charge if it matches better than instrument assigned charge (z) could work.
— Reply to this email directly or view it on GitHub https://github.com/OpenMS/OpenMS/issues/877#issuecomment-47630033.
I did some literature search and assembled a list of potentially interesting articles.
Note, that there is always a distinction between low and high-resolution data. In some cases the source code is available...
References:
Mayampurath AM, Jaitly N, Purvine SO, Monroe ME, Auberry KJ, Adkins JN, Smith RD. DeconMSn: a software tool for accurate parent ion monoisotopic mass determination for tandem mass spectra. Bioinformatics. 2008 Apr 1;24(7):1021-3. doi: 10.1093/bioinformatics/btn063. Epub 2008 Feb 26. PubMed PMID: 18304935; PubMed Central PMCID: PMC2720627.
source code: http://ncrr.pnl.gov/software/ http://www.proteomicsresource.org/.
Yuan ZF, Liu C, Wang HP, Sun RX, Fu Y, Zhang JF, Wang LH, Chi H, Li Y, Xiu LY, Wang WP, He SM. pParse: a method for accurate determination of monoisotopic peaks in high-resolution mass spectra. Proteomics. 2012 Jan;12(2):226-35. doi: 10.1002/pmic.201100081. Epub 2011 Dec 20. PubMed PMID: 22106041.
Tabb DL, Shah MB, Strader MB, Connelly HM, Hettich RL, Hurst GB. Determination of peptide and protein ion charge states by Fourier transformation of isotope-resolved mass spectra. J Am Soc Mass Spectrom. 2006 Jul;17(7):903-15. Epub 2006 May 19. PubMed PMID: 16713712.
Zhang Z, Marshall AG. A universal algorithm for fast and automated charge state deconvolution of electrospray mass-to-charge ratio spectra. J Am Soc Mass Spectrom. 1998 Mar;9(3):225-33. PubMed PMID: 9879360.
Liu X, Inbar Y, Dorrestein PC, Wynne C, Edwards N, Souda P, Whitelegge JP, Bafna V, Pevzner PA. Deconvolution and database search of complex tandem mass spectra of intact proteins: a combinatorial approach. Mol Cell Proteomics. 2010 Dec;9(12):2772-82. doi: 10.1074/mcp.M110.002766. Epub 2010 Sep 20. PubMed PMID: 20855543; PubMed Central PMCID: PMC3101958.
Victor KG, Murgai M, Lyons CE, Templeton TA, Moshnikov SA, Templeton DJ. MAZIE: a mass and charge inference engine to enhance database searching of tandem mass spectra. J Am Soc Mass Spectrom. 2010 Jan;21(1):80-7. doi: 10.1016/j.jasms.2009.09.007. Epub 2009 Sep 17. PubMed PMID: 19850495; PubMed Central PMCID: PMC2818324.
Carvalho PC, Xu T, Han X, Cociorva D, Barbosa VC, Yates JR 3rd. YADA: a tool for taking the most out of high-resolution spectra. Bioinformatics. 2009 Oct 15;25(20):2734-6. doi: 10.1093/bioinformatics/btp489. Epub 2009 Aug 14. PubMed PMID: 19684088; PubMed Central PMCID: PMC3140806.
Hi Werner
This list looks very informative and it might be worthwhile to look into this into greater detail. When implementing one of these algorithms, one might also consider the application to metabolomics where maybe (I dont know that much) determination of the monoisotopic peak might be slightly different but also of high interest. Implementing any of these algorithms might be a task for an interested student. However I dont know whether there are currently enough resources to attempt this.
@timosachsenberg this might be something that one could envision as a sub-task of the searching work that you are currently doing? maybe a simple heuristic as you suggested would already get us quite far ... do you already have some ideas on that direction? You do seem to have code that does this on MS2 level deisotopeAndSingleChargeMSSpectrum
- how generalizeable is that code? How hard would it be to include a mapping step back to MS1 ?
Hi Hannes,
Thank you for your comment.
De-isotoping and correct charge determination is in my eyes advantageous for both MS1 and MS2 level.
Stephan Aiche found some discrepancies to other MS-Tools (particular MaxQuant), when looking in detail at misassigned peptide charge states for the calculation of the precursor purity in a particular spectrum.
I am pretty much convinced, that precursor charge correction and as well as charge correction at the MS2 level will be improve (significantly) the outcome of subsequent database search engines (less false positives) as well as the result of quantification results for isobaric labeling techniques.
Best,
Werner
As I currently need to analyze a data set with many of these misassigned precursor I will give it a try.
Great!!! As I stated above, there are significant improvements possible by implementing a good correction algorithm. Thus the overall OpenMS pipeline will benefit from that!
Good luck and looking forward to hear news above the progress....
Werner
I worked on such a corrector for some time. @timosachsenberg, contact me concerning this. In my opinion, it is already working quite well.
Great! Then we might have multiple options which is a good thing. I implemented a feature based correction. It corrects precursor mass and charge to the mono-isotopic trace if it matches the mass traces of a nearby features. Several options exist:
see: https://github.com/timosachsenberg/OpenMS/tree/feature/correct_precurosr_to_feature
only tests are missing
I am happy to test it, but first would have to go back to my old analysis, beginning of next year would be possible...
Hi, I created a branch with the correct to feature code included: https://github.com/OpenMS/OpenMS/pull/1129 I also added several test cases that I manually validated. Maybe @jpfeuffer can also test his implementation against it.
@jpfeuffer You had some additional correction algorithms. Do you plan to include them oder should we close this issue?
Yes I had an algorithm for charge-only correction. Since it works on MS2 alone it generally performed worse than yours. I'm not sure if it is really needed and the interface (as tool) is still rudimentary. Probably close.
ok close for now
@timosachsenberg @hroest @jpfeuffer what is the method you finally implemented for precursor charge correction. I would like to give a try with our data.
@ypriverol
https://abibuilder.informatik.uni-tuebingen.de/archive/openms/Documentation/release/latest/html/TOPP_HighResPrecursorMassCorrector.html you can put in a featureXML and it will use it to correct the charge and mass
It happens not rarely, that the (Thermo) instruments software determines an incorrect charge state for a particular precursor.
It has been shown in the past, that this misassignment leads to a reduced identification rate during database searching. In contrast using a precursor charge correction tool (MSDecon etc.) can significantly improve the identification.
Questions:
(1) Is there any OpenMS tool able to perform this task of precursor charge correction ?
(2) If no, wouldn’t it be useful to add this feature to the PeakPickerHiRes or HighResPrecursorMassCorrector tools ?
(3) Furthermore, relating to the increased number of MS1-high—MS2-high resolution measurements, wouldn’t it be useful for MS2 scans as well ?