rformassspectrometry / MetaboAnnotation

High level functionality to support and simplify metabolomics data annotation.
https://rformassspectrometry.github.io/MetaboAnnotation/
15 stars 9 forks source link

Comparing isotope pattern #16

Open michaelwitting opened 3 years ago

michaelwitting commented 3 years ago

Hi,

I thought one other important aspect would be to compare two isotope pattern (e.g. one measured and one simulated) against each other. We could use the matchedSpectra here, assuming that the supplied spectra are MS1 spectra. We would need a scoring function for the isotope pattern matching, since the dotproduct would not work here. What would be a good place for that? MsCoreUtils or MetaboCoreUtils? I'm searching for a fitting scoring function, e.g. adopting the one from Rdisop

Best,

Michael

jorainer commented 3 years ago

Hm, I guess isotope matching would also be important for proteomics and MS in general, thus MsCoreUtils might be the place to go.

michaelwitting commented 3 years ago

I will check the C++ code from Rdisop. I guess it can be tweaked...

stanstrup commented 3 years ago

As far as I remember the Rdisop score some times gives weird result where a worse match is scored higher... So perhaps it is not a good reference implementation...

michaelwitting commented 3 years ago

I know that in Sirius there is a good implementation. Maybe we can check their code. I have a meeting with Sebastian Böcker tomorrow, so I can ask about the exact algorithm behind it.

jorainer commented 3 years ago

Just thinking out loud:

note that @andreavicini is currently refining our approach to find likely isotopologues in an MS1 spectrum.

michaelwitting commented 3 years ago

The dotproduct would overestimate similarity, since it would be mainly driven by the monoisotope, which is the highest peak. It was originally develope for GC-MS, where you have a lot of peaks distributed over a m/z range, each peak with some contribution to the spectrum. I guess we really need here another score, but I'm opne for any suggestion.

stanstrup commented 3 years ago

There is a suggestion here I think: https://www.ncbi.nlm.nih.gov/pmc/articles/PMC4321342/#__sec4title