cbroeckl / RAMClustR

Assigning precursor-product ion relationships in indiscriminant MS/MS data
MIT License
12 stars 16 forks source link

Question about why MSMS spectra don't read in #28

Closed eterlova closed 1 year ago

eterlova commented 2 years ago

Hello @cbroeckl and all,

I know I already asked about it, but want to double check.

I am working with Waters MS/MSe data, which I converted into mzML format keeping all three channels in, so my MS and MSMS data are contained in a single mzML file. Then I processed that with XCMS3, which runs RT alignment and grouping on MS data, but then applies it to the MSMS layer as well.

Now I am trying to prepare my data for annotation using RAMClustR. I read the data in using rc.get.xcms.data, which asks for a name tag to the MSMS files, which I don't have since MSe data is in the same mzML files as the MS data. So I just skipped this parameter, which I think resulted in RAMClustR using only MS data for processing and preparing the spectra.

Is there a way around this? Or should I re-convert my data separating MS and MSe into different mzML files?

Thanks for all your help! Best, Lisa

hechth commented 2 years ago

Hi Lisa,

if you use XCMS for the processing, doesn't it return you an xcmsObject which you can directly pass into the ramclustr top level wrapper function? I think this should then also contain the MSMS data.

Best, Helge

eterlova commented 2 years ago

@hechth Hi Helge,

Do you mean rc.get.xcms.data function? I too thought that it supposed to read in both MS and MSe spectra, but when I run it, I get this:

RC <- RAMClustR::rc.get.xcms.data(
  xcmsObj = xdata,
  ExpDes = ExpDes,
  taglocation = "pheno",
  mzdec = 4)

> str(RC)
List of 19
 $ merger     : logi(0) 
 $ height     : logi(0) 
 $ order      : logi(0) 
 $ labels     : logi(0) 
 $ method     : logi(0) 
 $ call       : logi(0) 
 $ dist.method: logi(0) 
 $ ExpDes     :List of 2
  ..$ design    :'data.frame':  5 obs. of  1 variable:
  .. ..$ value: chr [1:5] "JT2-VF29_alpha" "Tetradesmus.adustus" "whole_cell_metabolome" "ElizavetaTerlova" ...
  ..$ instrument:'data.frame':  14 obs. of  1 variable:
  .. ..$ value: chr [1:14] "Waters Acquity UPLC" "Waters Synapt G2-Si q-TOF Mass Spectrometer" "Waters_Acquity_UPLC_HSS_T3_column(2.1x150mm,1.8μm,#186003540)" "0.1%formic_acid_in_Optima_grade_water" ...
 $ history    :List of 1
  ..$ input: chr "RAMClustR version 1.2.4 in R version 4.1.2 (2021-11-01)) was used to normalize, filter, and group features into"| __truncated__
 $ phenoData  :'data.frame':    27 obs. of  8 variables:
  ..$ sample.names.Sample_name : chr [1:27] "/Volumes/T7/Data_centroided/DA_metabolomics2021_sample_050.mzML" "/Volumes/T7/Data_centroided/DA_metabolomics2021_sample_111.mzML" "/Volumes/T7/Data_centroided/DA_metabolomics2021_sample_127.mzML" "/Volumes/T7/Data_centroided/DA_metabolomics2021_sample_143.mzML" ...
  ..$ sample.names.Strain      : chr [1:27] "JT2-VF29" "JT2-VF29" "JT2-VF29" "JT2-VF29" ...
  ..$ sample.names.Desiccation : chr [1:27] "Alpha" "Alpha" "Alpha" "Alpha" ...
  ..$ sample.names.PhysState   : chr [1:27] "HalfWay" "Rehydrated10" "Hydrated" "HalfWay" ...
  ..$ sample.names.Barcode     : chr [1:27] "50" "111" "127" "143" ...
  ..$ sample.names.sample_group: chr [1:27] "JT2_HalfWay" "JT2_Rehydrated10" "JT2_Hydrated" "JT2_HalfWay" ...
  ..$ filenames                : chr [1:27] "DA_metabolomics2021_sample_050.mzML" "DA_metabolomics2021_sample_111.mzML" "DA_metabolomics2021_sample_127.mzML" "DA_metabolomics2021_sample_143.mzML" ...
  ..$ filepaths                : chr [1:27] "/home/FCAM/eterlova/2021DA_metabolomes/ZA17_JT2_CCAP_alpha_data/Data_centroided/DA_metabolomics2021_sample_050.mzML" "/home/FCAM/eterlova/2021DA_metabolomes/ZA17_JT2_CCAP_alpha_data/Data_centroided/DA_metabolomics2021_sample_111.mzML" "/home/FCAM/eterlova/2021DA_metabolomes/ZA17_JT2_CCAP_alpha_data/Data_centroided/DA_metabolomics2021_sample_127.mzML" "/home/FCAM/eterlova/2021DA_metabolomes/ZA17_JT2_CCAP_alpha_data/Data_centroided/DA_metabolomics2021_sample_143.mzML" ...
 $ params     :List of 1
  ..$ rc.get.xcms.data: Named chr [1:3] "filepaths" "4" "TRUE"
  .. ..- attr(*, "names")= chr [1:3] "taglocation" "mzdec" "ensure.no.na"
 $ st         : num 2.4
 $ MSdata     : num [1:27, 1:8968] 68.7 137.7 NA NA NA ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : chr [1:27] "DA_metabolomics2021_sample_050.mzML" "DA_metabolomics2021_sample_111.mzML" "DA_metabolomics2021_sample_127.mzML" "DA_metabolomics2021_sample_143.mzML" ...
  .. ..$ : chr [1:8968] "541.9064_56.966" "490.9277_57.2" "217.9897_58.272" "410.9231_58.338" ...
 $ MSdata_raw : num [1:27, 1:8968] 68.7 137.7 NA NA NA ...
  ..- attr(*, "dimnames")=List of 2
  .. ..$ : chr [1:27] "DA_metabolomics2021_sample_050.mzML" "DA_metabolomics2021_sample_111.mzML" "DA_metabolomics2021_sample_127.mzML" "DA_metabolomics2021_sample_143.mzML" ...
  .. ..$ : chr [1:8968] "541.9064_56.966" "490.9277_57.2" "217.9897_58.272" "410.9231_58.338" ...
 $ frt        : num [1:8968] 57 57.2 58.3 58.3 58.4 ...
 $ fmz        : num [1:8968] 542 491 218 411 427 ...
 $ featnames  : chr [1:8968] "541.9064_56.966" "490.9277_57.2" "217.9897_58.272" "410.9231_58.338" ...
 $ xcmsOrd    : int [1:8968] 5711 5185 1117 4320 4492 5025 6106 4222 5173 6053 ...
 $ msint      : num [1:8968] 81.9 79.1 298.2 613.9 162.6 ...
 - attr(*, "class")= chr "hclust"

Notice that RC$MSMS does not exist

Best, Lisa

hechth commented 2 years ago

Hi Lisa,

would it be possible for you to share the xdata object (as R object) or to provide the output of how this object looks like?

Best, Helge

eterlova commented 2 years ago

Absolutely! And thanks a lot for looking into this! Best, Lisa eterlova_QaboutRAMCLustRandMSe.zip

cbroeckl commented 2 years ago

Hello @eterlova - i was out of town last week, sorry for the slow response. i had forgotten that you were using files with MS and MSe in the same file. There are some slight tweaks to the script i had provide that would be necessary to get this to work. I am still digging out of a backlog, but will try to get a solution posted over the next day or two. @hetchth - thanks for jumping in...

eterlova commented 2 years ago

@cbroeckl Thanks a lot!

hechth commented 2 years ago

@cbroeckl If you already have a small script ready to solve the problem we can also try to get a comprehensive solution to include it in the general reading and writing framework!

@eterlova sorry for not following up on my initial comment - things got hectic and I simply forgot - my apologies for that.

cbroeckl commented 2 years ago

In names(RC) you should see an MSMSdata listed. This listed name means MSe data is present.


From: Elizaveta Terlova @.> Sent: Sunday, June 26, 2022 9:42:54 AM To: cbroeckl/RAMClustR @.> Cc: Broeckling,Corey @.>; Mention @.> Subject: Re: [cbroeckl/RAMClustR] Question about why MSMS spectra don't read in (Issue #28)

Caution: EXTERNAL Sender

@cbroecklhttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fcbroeckl&data=05%7C01%7Ccorey.broeckling%40colostate.edu%7C32acbb7aad124f2ed39508da578a89fd%7Cafb58802ff7a4bb1ab21367ff2ecfc8b%7C0%7C0%7C637918549781466914%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=rlPhbqpzpOL0U1Xbu48RWGDGqWmemRKkUK6Y4zmyL5o%3D&reserved=0 Before I report success, should I see a "$ MS2" in the RC object if MSe spectra are read in?

I managed to do pick peaking and grouping for both MS1 and MSe in XCMS, and now RAMClustR retains many more peaks than before, but I still don't see that it read in MSe data

— Reply to this email directly, view it on GitHubhttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fcbroeckl%2FRAMClustR%2Fissues%2F28%23issuecomment-1166568201&data=05%7C01%7Ccorey.broeckling%40colostate.edu%7C32acbb7aad124f2ed39508da578a89fd%7Cafb58802ff7a4bb1ab21367ff2ecfc8b%7C0%7C0%7C637918549781466914%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=p0VkB0maP92XYEQeMz9ISsCHEJnPv1gpi5zKIV%2F3%2BZQ%3D&reserved=0, or unsubscribehttps://nam10.safelinks.protection.outlook.com/?url=https%3A%2F%2Fgithub.com%2Fnotifications%2Funsubscribe-auth%2FABF257IU4UNU4FVKYGXNWTLVRB27VANCNFSM5VGFR4QA&data=05%7C01%7Ccorey.broeckling%40colostate.edu%7C32acbb7aad124f2ed39508da578a89fd%7Cafb58802ff7a4bb1ab21367ff2ecfc8b%7C0%7C0%7C637918549781466914%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=x6VVUfehi7GSf8N2H9RtH6%2FMpnLR56aAaJOr1pGnJME%3D&reserved=0. You are receiving this because you were mentioned.Message ID: @.***>

hechth commented 1 year ago

@eterlova could you resolve your problem by now? Or what is the current status?