ococrook / hdxmsqc

A package for performing quality control of hydrogen-deuterium exchange mass-spectrometry data
Apache License 2.0
0 stars 0 forks source link

SequenceCheck not flagging for overlapped peptides #6

Closed nlgittens closed 9 months ago

nlgittens commented 2 years ago

A reminder for myself to anonymise some HDX data to send over consisting of a series of overlapping peptides (10-15 residues long with only 1 aa overhang) in which one amongst them is clearly inconsistent, but SequenceCheck = 0 across all. Tried to do this quickly a couple of days ago with just this subset of 3 peptides, but then had trouble with the script in generating the qctable to check the same result would be generated. Perhaps it might be easier for me to just send across the data anyway?

ococrook commented 2 years ago

This might be tricky if there is only 1 overhang, would be good to see the example. I imagine enough noise adds up that over 15 residues "compatible" might be difficult to assert accurately

nlgittens commented 2 years ago

I just uploaded a small subset of all overlapping peptide data for this segment to the fileshare containing both HDSite and HDExaminer data. Peptide 5-13 should be flagged as inconsistent for most of the states with an uptake close to 0% D. Unfortunately I haven't been able to validate that I can reproduce the same result with this subset because I get an issue in csCorr step for some reason.

Error in .out[seq.int(maxch), ] : incorrect number of dimensions

Could you check both that tis works in hdxmsqc, and you still get 0 SequenceCheck flags (and if so, why?)

ococrook commented 2 years ago

Hi Nathan,

I think this is a bug, these should be flagged by the current algorithm. I think the problem is hdxmsqc read the labels of the mAbs as timepoints.

If you load in your data as mycsv then relabel the numbers as:

mycsv$Protein.State <- mycsv$Protein.State %>% str_remove_all(c("1" = "one", "2" = "two", "3" = "three", "4" = "four", "5" = "five", "6" = "six"))

that will replace the numbers with words and then it should work