Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

TMT-Integrator doesn't allow for negative mass PTM's #1954

Open
ethangilmore opened this issue Dec 19, 2024 · 4 comments
Open

TMT-Integrator doesn't allow for negative mass PTM's #1954

ethangilmore opened this issue Dec 19, 2024 · 4 comments
Assignees

Comments

@ethangilmore
Copy link

log_2024-12-18_21-19-59.txt

After trying to run TMT-Integrator with the Mod Tag field set to K(-73.156) I got the following error:

java.lang.IllegalArgumentException: Missing the site localization column.
Missing '' column. Please check if the column is in the psm tables.
at tmtintegrator.integrator.PsmPreProcessor.checkIndex(PsmPreProcessor.java:405)
at tmtintegrator.integrator.PsmPreProcessor.validateColumns(PsmPreProcessor.java:383)
at tmtintegrator.integrator.PsmPreProcessor.getColumnIndex(PsmPreProcessor.java:194)
at tmtintegrator.integrator.PsmPreProcessor.checkPsmFile(PsmPreProcessor.java:105)
at tmtintegrator.integrator.PsmPreProcessor.checkPsmAndBuildIndex(PsmPreProcessor.java:42)
at tmtintegrator.TMTIntegrator.run(TMTIntegrator.java:63)
at tmtintegrator.TMTIntegrator.main(TMTIntegrator.java:48)

After a little investigation into the code I found that the regex to extract the mass in Constants.java doesn't match negative values:

public static final Pattern MOD_TAG_PATTERN = Pattern.compile("([A-Z])\((\d+\.\d+)\)");

There may be more to this but I haven't been able to recompile and test it. Thanks!

@fcyu fcyu self-assigned this Dec 19, 2024
@fcyu
Copy link
Member

fcyu commented Dec 19, 2024

Thanks you for reporting the bug. I have fixed it and here is the pre-released version: TMT-Integrator-6.0.4.zip

Could you unzip it to where the original TMT-Integrator is, restart FragPipe, and try again?

Let me know if there are any further questions.

Thanks,

Fengchao

@Shinya-Watanabe
Copy link

Thanks Fengchao! TMT-integrator-6.0.4 worked, but values in start and end columns are incorrect. Here's the same peptide level tmt-integrator output from 6.0.4 and 5.0.9.
abundance_single-site_MD.zip

Also, I wonder if you are going add the function to merge multiple PTM mod columns to generate multi_site and single_site outputs. Here's the reason.

I looked for modifications on HCK:156.11504 in TMT11 samples and tested two methods below.
Method 1 (everything in var mods):
variable mods: HCK:156.11504, C:57.02146, K:229.16293

Method 2 (Fixed mods and var mods (-fix mods)):
variable mods: H:156.11504, C:99.09358, K:-73.04789
fixed mods: C:57.02146, K:229.16293

There results were substantially different, and method 1 requires data cleaning to remove non-modified C and K which should not in the sample as these modifications occurred during sample prep. Method 2 was very efficient (2-3 times faster) as it does not search theoretically unlikely existing sequences and identified greater number of modified peptides in ionquant and tmt integrator (after cleaning for method 1). However, I need to run TMT-integrator as many as the number of var mods for PTMs in method 2. Therefore it would be helpful if multiple mods can be passed to "mod tag" like H(156.11504), C(99.09358), K(-73.04789) although these are in separate columns in psm.tsv. Here's the tests I did and summary xlsx files where I added some columns to sort.

Let me know if you have any thoughts on this.
single_site_comparison.zip
output_test_156.zip
output_test_156_99_73.zip

Best,
Shinya

@fcyu
Copy link
Member

fcyu commented Dec 20, 2024

Thanks for the test and feedback.

TMT-integrator-6.0.4 worked, but values in start and end columns are incorrect. Here's the same peptide level tmt-integrator output from 6.0.4 and 5.0.9.

We changed the definition of the "start" and "end" for the site report in the new version. They are the start and end of the site, not the peptide because there might be different peptides for the same site (e.g., A0A0G2JY53_H157 Myh15 A0A0G2JY53 RSEAPPhIFAVANhAFQDMLRNGENQSILFTGESGSGK;SEAPPhIFAVANhAFQDMLRNGENQSILFTGESGSGK)

Therefore it would be helpful if multiple mods can be passed to "mod tag" like H(156.11504), C(99.09358), K(-73.04789) although these are in separate columns in psm.tsv.

Yes, I agree with you. The person implementing the initial version of TMT-Integerator didn't consider these cases, but we have the plan to add this support.

Thanks,

Fengchao

@Shinya-Watanabe
Copy link

Thanks! Sounds great! We are looking forward to those functions.

Best,
Shinya

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants