-
Notifications
You must be signed in to change notification settings - Fork 6
Description
Hello,
I have been experimenting with cliqueMS in order to extend and hopefully improve the current adduct/isotope annotation workflows of patRoon. In some tests I noticed a strange assignment:
cliqueMS::getPeaklistanClique(cliques)[c(65, 667), 1:14]
mz mzmin mzmax rt rtmin rtmax maxo into sample cliqueGroup isotope mass1 an1 score1
CP0065 135.0026 135.0011 135.0028 10.149 5.746998 13.14600 132680 1029481 1 78 M1 [3] 246.0092 [M+Na]+ 29.9298
CP0667 268.9984 268.9973 268.9990 10.149 5.746998 16.14402 2085620 8225859 1 78 M0 [3] 246.0092 [M+Na]+ 29.9298Checking the isotopes table:
cliques@isotopes[cliques@isotopes$feature %in% c(65, 667), ]
feature charge grade cluster
3 65 2 1 3
10 667 1 0 3So feature 65 is assigned a charge of two, 667 a charge of one. The isotope cluster assignment appears to be done in isoTest isIsotope(double mz1, double mz2, int maxCharge, ...). This function only corrects charges (z values) when comparing features with different charge. However, I would expect that multiply charged ions with LC-MS are typically caused by multiple additions of adducts, eg [M+Hn]n+. Hence, for comparing m/z values across charges an additional correction has to be done, depending on the adduct. Since this information is not yet available when assigning isotope clusters, perhaps it would be better to only cluster isotopes with equal charge?
Another issue in this example is the assignment of [M+Na]+ to both the singly and doubly charged features (and again, [M+2Na]2+ would yield a very different ion mass).
Regards,
Rick