Hi Mi,
Hopefully I can clear up a couple of your questions! In terms of going from PD to MSstatsPTM, we do not have a direct converter right now. I have included a brief piece of code that uses the MSstatsTMT converter to put the raw data into MSstatsPTM format. If you have an example phospho PD dataset you can share, I would be happy to work on building a converter directly into MSstatsPTM.
1. The "PTM" and "Protein" datasets should really be two separate MS runs, one phosphorylated and the other not. The non-phosphorylated run is used to adjusted the modified peptides for changes in protein abundance. If you do not have a unmodified MS run, the package can still be run with the "PTM" data only, you just will not be able to do a protein level adjustment..
2. MSstatsPTM is the correct package and can handle TMT experiments now.
3. The versioning is a little different due to Bioconductor's latest release. All packages in Bioconductor v3.12 (the newest version) require R v4.1. I would recommend upgrading your R to version v4.1 and then upgrading the MSstats packages. You should just be able to reinstall MSstatsPTM as it's dependencies include the other packages.
Let me know if you have any more questions!
Best,
Devon
------------------------------------------------------------------------------------------------------------------------------------------
# Add site into ProteinName column
raw_ptm_df$ProteinName <- paste(raw_ptm_df$ProteinName, raw_ptm_df$Site, sep = "_")
# Run MSstatsTMT Converters
PTM.data <- MSstatsTMT::PDtoMSstatsTMTFormat(raw_ptm_df, annotation)
PROTEIN.data <- MSstatsTMT::PDtoMSstatsTMTFormat(raw_protein_df,annotation) # If Protein data not available just skip this part
# Combine into one list
raw.input <- list(PTM = PTM.data,
PROTEIN = PROTEIN.data) # Use PROTEIN = NULL if protein data not available