Comments (4)
Hi Boris,
This and DIA in general is on the 'long-term TODO list', so at the moment not really supported. We mainly use DDA data here, but I have gotten quite some DIA requests lately. OpenMS has OpenSWATH, which might make sense to integrate at some moment perhaps, but I didn't really study it deeply so far. There are more tools out there to align DIA data, but again I don't have experience with these yet.
I am always open to PRs though ;-)
from patroon.
Hi Rick,
That will be great to have such king of DIA Swath tools in the package are they are existing for OpenMS (a you say) and XCMS (we are more XCMS user here).
We are already looking forward to see the next version of the package.
Best
Boris
from patroon.
Hi Rick,
Sorry for this re-openning. I just discussed with some colleagues about a project where I am involved and where we have swath data. So, do you think that it will be potentially an option to implement a XCMS reconstruction for MS2 into patRoon or outside PatRoon and then re-injecting the result in the workflow? Or should I look for a completely separate worflow?
Thank you for the answer
from patroon.
Hi Boris,
Sorry from my late reply, just came back from holidays!
I gave it some more thoughts, and perhaps we can find a way to make use of the XCMS DIA data handling.
In principle, patRoon should be able to load all the MS/MS data, it's just not able (yet) to correlate the fragments to the right features. So I was thinking of the following approach:
- Perform a patRoon workflow and get the features as usual through XCMS.
- Convert the patRoon objects to XCMS objects with
getXCMSnExp()
- Let XCMS do its magic for SWATH
- Get the peak lists with patRoon. I think you can just set
precursorMzWindow
to the SWATH window size. If this for some reason fails (please let me know), then you could also set it toNULL
. - Use the
delete()
function to remove any mass peaks not present in the XCMS spectra data. - Continue with patRoon as usual.
The tricky part is step 5: here somehow we need to find the right spectral data for each feature group from patRoon, e.g. in pseudocode:
mslists <- delete(mslists, j = function(pl, grp, ana, type) {
# pl is a single peak list (data.table with mz, intensity, ...)
# grp is the name of the feature group
# ana is the analysis (NULL if the peak lists is for the whole feature group)
# type is MS or MSMS
if (type != "MSMS")
return(TRUE) # don't delete any peaks in MS data
# some function that needs to be implemented, and will return a table from the XCMS DIA spectrum
plXCMS <- getXCMSSpec(grp, ana)
pl <- data.table::copy(pl)
# mark all mass peaks that are within the XCMS spectrum as well (5 mDa tolerance)
pl[, inXCMS := any(abs(mz - plXCMS$mz) <= 0.005)]
return(pl$inXCMS == FALSE) # and remove all others
})
So what we need is to somehow cookup the getXCMSSpec()
function from the example above. I have zero experience with XCMS/SWATH (thanks for letting me know it exists ;-), so perhaps you could give this an initial go?
Thanks,
Rick
from patroon.
Related Issues (20)
- MS2Quant: "Error in if (fingerprints != "") { : the condition has length > 1" HOT 2
- Error: Docker RStudio-server, unable to connect to service HOT 2
- Load a previous group features list HOT 2
- Filtering MS/MS Peaks with Characteristic Fragment Ions HOT 5
- Selection of several adducts HOT 3
- Error: graphics device error in Docker HOT 4
- Request: Reduce cache size HOT 2
- Error: newProject()/Tp Screening unable to add parent suspect list HOT 5
- Handbook: Inconsistency for labelled Isotopes HOT 1
- Suggestion: 'conc'-column in newProject() HOT 2
- Error: Finding features using XCMS HOT 4
- Using data processing code with already annotated csv file HOT 1
- error with generateCompounds( ) - could not run MetFrag HOT 4
- Error: plotVenn() with featureGroupsComparison HOT 8
- merge generateCompounds from different tools HOT 6
- Error: report with compoundsConsensus fails HOT 1
- Report generation occasionally fails HOT 10
- findFeatures Error - Error in if (!recentFFM) settings <- c(settings, `-algorithm:epd:masstrace_snr_filtering` = boolToChr(traceSNRFiltering)) : missing value where TRUE/FALSE needed HOT 4
- Advice for validating non-target analysis with known compounds
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from patroon.