Open cpanse opened 4 years ago
???
TODO(@cpanse): check extract list of a peak attributes with the flag for reference, similar to noise.
...directly measure and quantify human breath metabolites.
Since we don’t generally have LC connected to our Q Exactive, we
do all our data analysis using our in-house MATLAB scripts. In
past two years, I wrote some C++ scripts (with my limited
knowledge of
C++) using MSFileReader to directly and quickly extract XICs from
thermo’s Raw files for downstream analysis.
But recently, one of our collaborator in Zurich used few of our
m/z of interest as Lock mass during few patient measurement. Now
as you know these m/z are removed by default from the thermo’s
raw file and converted mzXMLs. So I am unable to extract XIC for
these said masses (I can however see very nice traces in Xcalibur
when I check “include reference and exception peaks”).
I tried contacting Thermo, but they told me that MSFilereader is
old and I should use new RawFileReader (which I am unable to do
due to my limited understanding of .NET, dlls and C).
When I searched on internet I found your R package RawDiag, which
uses thermos’s new RawFileReader but there also I can’t see XIC
of my m/z of interest, I guess because by default include
“IncludeReferenceAndExceptionData” is set to false there.
1. So could you please help me set
IncludeReferenceAndExceptionData (it’s a function inside
thermo’s new
RawFileReader) to true in RawDiag, so I can get XICs for my m/z s
of interest?
Or
2. Could you tell me how can make
IncludeReferenceAndExceptionData (A function also inside
thermo’s
MSFileReader) works
I am attaching two of my source code, one of them works and other
one where I added IncludeReferenceAndExceptionData doesn’t
(*_InProcess.cpp), and I can’t figure out why?
Reference Data is most likely a lock mass. Lock mass related parameters are:
"NumberofLockMasses"
[46] "LockMass1mZ" "LockMass2mZ" "LockMass3mZ"
[49] "LMSearchWindowppm" "LMSearchWindowmmu" "NumberofLMFound"
[52] "LastLockingsec" "LMmZCorrectionppm"
using https://bioconductor.org/packages/tartare/ as test data
# library(tartare)
R> rawfile
[1] "/Users/cp/tartare/20190716_004_PierceHeLa.raw"
R> which(S$NumberofLMFound > 0)
[1] 92 93 99 105 111 117 123
A code peace from JS UsingRawFileReader.doc, page 21:
/// Gets Flagging information (such as saturated) for each peak
/// </summary>
PeakOptions[] Flags { get; }
@cpanse You might try what is returned.
https://github.com/cpanse/MsBackendRawFileReader/blob/63d90b342cce3552b51ccca73b2adcad1eadc3b6/src/MsBackendRawFileReader.cs#L59
R --no-save < code.R
ACK Kapil.Singh@ukbb.ch