yguitton / metams Goto Github PK
View Code? Open in Web Editor NEWdata processing for MS-based metabolomics
data processing for MS-based metabolomics
Suppose you have a couple of blank samples and no DB - you'd probably want to eliminate all spectra found in the blanks from the data. Works fine if you have a DB - if you don't and you create a DB from all spectra in the blanks (but nothing else) then the matching with the database throws an error.
Solution: add a check if the number of entries in the DB is larger than zero (after removing the irrelevants). Will add this as soon as Bioconductor completes the switch to git. In matchSamples2DB we need to check (in addition??) if rt.matches > 0
Todo: add a parser for MSP files generated by MoNa or Riken, Golm
Todo: add additional Tags in metaMS identification outputs
example Riken MSP
NAME: CITRIC ACID-TETRA-TMS; EI-B; MS
EXACTMASS: 480.1851098
FORMULA: C18H40O7Si4
SMILES: CSi(C)OC(=O)CC(CC(=O)OSi(C)C)(OSi(C)C)C(=O)OSi(C)C
ONTOLOGY: Tricarboxylic acids and derivatives
INCHIKEY: VFGAVMGYDWDESE-UHFFFAOYSA-N
RETENTIONTIME: -1
RETENTIONINDEX: 1788.907
QUANTMASS: 75
IONMODE: Positive
COLLISIONENERGY: 70eV
LICENSE: CC BY-SA
Comment:
Num Peaks: 141
Even though this is for GC, three of the built-in settings are for LC/MS. The only one for GC is for a triple-quad detector. How do you construct settings for a TOF or single quad?
Hi,
I'm working with @yguitton on W4M and we have just update our workflow with your tool "metaMS". But we are actually facing a problem and we hope that you could answer us about it :
the problem is about tests, we compare our output on peakTable but these peakTable are not really the same whereas we executed exactly the same command line... I have just seen that in your test you compare the number of columns and lines, the names but not the results in your peakTable.
So is it normal that numbers in peakTable changed ? Is it possible to explain that changes ?
Thanks for your answer !
Cheers,
Julien
Sometimes alcanes used for RI should be re-injected between samples series and then we can't compare those samples using metaMS runGC because only one RIstandards files is allowed.
can we modify runGC in order to use several files (for example one for the samples from the first batch and one for the samples from the second )
if (!is.null(RIstandards))
allSamples.msp <- lapply(allSamples.msp, addRI,
RIstandards, isMSP = FALSE)
Thanks
Yann
I am getting an error in the runGC function, when it gets to the following part:
ann.df <- getAnnotationMat(exp.msp = allSamples.msp, pspectra = PseudoSpectra,
allMatches = allSam.matches)
It throws an error:
"Error in if (relI < 0) { : missing value where TRUE/FALSE needed"
I was trying to troubleshoot it on my own, by going through the function line by line, but I can't find the 'relInt' function that seems to be causing the problem.
We were working to add a ndigit parameter for HRMS but the RelInt function use this :
common.masses <- pat[pat[, 1] %in% refpat[, 1], 1]
expI <- pat[pat[, 1] %in% refpat[, 1], 2]
DBI <- refpat[refpat[, 1] %in% pat[, 1], 2]
This compare exact masses but in HRMS it could be better with a mass tolerance deviation maybe ?
Add a function to remove common contaminating ions (amu: 73, 84, 147,149, 207, 221) from mzML files or from first metaMS::runGC outputs
A simple workaround is to first identify unknowns in a small subset of, say, 10 samples. This should be relatively quick. These can then be converted into a "real" database and the remaining unknowns can be identified much more quickly. If necessary a second round could be done.
Hi Ron,
I am working on GC-MS data and tried to create some EICs and pspectra plot using the annotation slot.
It works quite fine,but for some unknown reasons it seems that sometimes some of the pspectra number noted in $annotation$fileX [,"pattern"] are not the right ones.
when i manually correct the $annotation (ie change the pspectra number in annotation) all my plots are ok,
in one of my test i add a pspectra associated to a 0 intensity inthe PeakTable but if i am right a 0 in PeakTable means not annotated peak (not enough features or too low signal?
Have you seen such strange things? can it be due to one of my settings?
Note: The resGC$PeakTable seems ok
All the best,
Yann Guitton
Would be nice to add entropy and other "new" MS spectra scoring function in metaMS (especially fro HRMS)
Hello,
Love the software. However there is one issue that I have encountered multiple times when performing runGC. When matching runGC to a database, the program fails on this error:
I had been able to bypass this error previously by decreasing [email protected]. This is not working with my current dataset.
I am sure other uses have encountered this error. I am not the most computer savy so if anyone that can explain why metaMS is failing on this error I would appreciate it. Also, any suggestions on working around this error, or settings that can be modified to decrease the likelihood of this error would be appreciated.
Am using metaMS v1.12
R 3.4.1
Analyzing GCMS data from carbohydrates (fairly clean starting material, multiple internal controls, often targeting 2-4 monosaccharides in any experiment).
Can provide data and database I have generated if that will help.
Many thanks!
Hi Ron,
Is it on your todo list to make metaMS compatible with xcms 3.0 ?
i'm asking because i would like to use your package functionalities with high resolution GCMS data and i think that centwave would be more adapted.
Regards
Yann
I have regular questions about spectral search against NIST DB with metaMS. If you have access to your own copy of NIST DB on your local computer you can work with the outpout of to.msp
function.
And read it with your MSsearch program (see http://application.sb-roscoff.fr/download/w4m/howto/w4m_HowToUseNIST_V01.pdf.
I will work on a new function for metaMS that will facilitate those steps in R
Hi
error when using Use RI as filter optioWarning message:
replacing previous import 'xcms::plot' by 'graphics::plot' when loading 'CAMERA'
Note: you might want to set/adjust the 'sampclass' of the returned xcmSet object before proceeding with the analysis.
< -------- Experiment of 42 samples ------------------------------------ >
< -------- Instrument: GALAXY.GC --------------------------------------- >
< -------- Annotation using database of 1 spectra ---------------------- >
< -------- Using xcmsSet object - only doing annotation ---------------- >
< -------- Removing artefacts () --------------------------------------- >
< -------- Matching with database of standards ------------------------- >
Error in h(simpleError(msg, call)) :
error in evaluating the argument 'x' in selecting a method for function 'which': non-numeric argument to binary operator
Calls: runGC ... lapply -> FUN -> which -> outer -> .handleSimpleError -> h
Execution haltedn
Todo: add a parser for MSP files generated by MoNa or Riken, Golm
Todo: add additional Tags in metaMS identification outputs
example Riken MSP
NAME: CITRIC ACID-TETRA-TMS; EI-B; MS
EXACTMASS: 480.1851098
FORMULA: C18H40O7Si4
SMILES: CSi(C)OC(=O)CC(CC(=O)OSi(C)C)(OSi(C)C)C(=O)OSi(C)C
ONTOLOGY: Tricarboxylic acids and derivatives
INCHIKEY: VFGAVMGYDWDESE-UHFFFAOYSA-N
RETENTIONTIME: -1
RETENTIONINDEX: 1788.907
QUANTMASS: 75
IONMODE: Positive
COLLISIONENERGY: 70eV
LICENSE: CC BY-SA
Comment:
Num Peaks: 141
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.