From 2bc6ac5e1d3512ad93ddab0df814308dc9536246 Mon Sep 17 00:00:00 2001 From: Michael Marty Date: Tue, 28 Mar 2023 15:24:42 -0700 Subject: [PATCH 01/15] Added DAR recipe for UPP. Version 6.0.2 initial commit --- readme.md | 12 ++- unidec/LipiDec/AddFeaturestoDF.py | 69 ++++++++++-- unidec/UPP.py | 24 ++++- unidec/batch.py | 99 +++++++++++++++++- .../bin/oneapi-license-overview-10-05-22.pdf | Bin 0 -> 298950 bytes unidec/modules/html_writer.py | 13 ++- unidec/modules/matchtools.py | 57 ++++++++++ unidec/modules/unidec_enginebase.py | 15 ++- 8 files changed, 261 insertions(+), 28 deletions(-) create mode 100644 unidec/bin/oneapi-license-overview-10-05-22.pdf diff --git a/readme.md b/readme.md index 95bf6938..4c5e5bd0 100644 --- a/readme.md +++ b/readme.md @@ -28,7 +28,7 @@ You can watch a video tutorial on how to use UniDec here: [https://www.youtube.c UniDec is distributed under a completely open source license. Our hope is that this allows UniDec to be more widely used. If you are interested in including UniDec in another academic or commercial software distribution, -you are welcome to email mtmarty@email.arizona.edu for more information. +you are welcome to email mtmarty@arizona.edu for more information. UniDec source code and compiled binaries are released under a modified BSD License as described below. Note, we ask that you cite us in any publications. Quantitative citation metrics will help grant applications to support future development. @@ -68,6 +68,10 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. Waters DLLs are distributed under the Waters MassLynxSDK EULA license. The Thermo RawFileReader DLLs are distributed under the RawFileReader.doc license. By downloading and using these DLLs, you are accepting those licenses and these terms. Thermo and Waters are indemnified, defended, and held harmless from any claims, including attorneys’ fees, related to the distribution or use of this software. Redistribution of Waters and Thermo libraries is restricted as described in those licenses. Info on other licenses are provided below. +Intel libraries from the oneAPI are distributed under licenses found in the bin folder. + +RDKit libraries are gratefully used for LipiDec and are distributed under the CC-SA license. Please [cite them when using these features](https://www.rdkit.org/docs/Overview.html#citing-the-rdkit). + ## UniDec Compatible File Types UniDec is built to open .txt files using [numpy.loadtxt](http://docs.scipy.org/doc/numpy-1.10.0/reference/generated/numpy.loadtxt.html). @@ -191,9 +195,13 @@ Of course, using the pre-compiled version means you don't need to know Python at ## Change Log +v.6.0.2 + +**Added a new Drug-to-Antibody Ratio (DAR) calculation mode for UPP.** + v.6.0.1 -*Added Noise Removal Tool* to UniDec and UniDecCD. This allows you to select specific noise regions (common in UHMR data) and set them to 0. Try Tools > Select Noise Peaks and the checking "Remove Noise Peaks" in the Advanced Data Processing Parameters. +**Added Noise Removal Tool** to UniDec and UniDecCD. This allows you to select specific noise regions (common in UHMR data) and set them to 0. Try Tools > Select Noise Peaks and the checking "Remove Noise Peaks" in the Advanced Data Processing Parameters. UPP Changes: * Added "Config m/z Peak FWHM", "Config m/z Peak Shape", and "Config Sample Mass Every" parameters. If "Config m/z Peak FWHM" is specified as a float or integer, it will use that and skip the automatic peak width determination. diff --git a/unidec/LipiDec/AddFeaturestoDF.py b/unidec/LipiDec/AddFeaturestoDF.py index a2d49575..263442d0 100644 --- a/unidec/LipiDec/AddFeaturestoDF.py +++ b/unidec/LipiDec/AddFeaturestoDF.py @@ -6,10 +6,10 @@ def get_overall_tails(name): if "|" in name: try: - tname = name.split("|")[0] # Remove before vertical line - tname = tname.split()[1] # Remove after space to get tails - tl = tname.split(":")[0] # Get length - tu = tname.split(":")[1] # Get unsaturation + tname = name.split("|")[0] # Remove before vertical line + tname = tname.split()[1] # Remove after space to get tails + tl = tname.split(":")[0] # Get length + tu = tname.split(":")[1] # Get unsaturation except: return name, -1, -1 try: @@ -23,15 +23,16 @@ def get_overall_tails(name): else: tname = name.split()[1] fas = tname.split("_") - tls=0 - tus=0 + tls = 0 + tus = 0 for f in fas: tl = f.split(":")[0] # Get length try: tu = f.split(":")[1] # Get unsaturation except: - print(f, name) - exit() + print("Unable to parse part: ", f, name) + continue + # exit() try: tl = int(tl) except: @@ -67,6 +68,52 @@ def set_tails(df, name="Metabolite name"): return df +def set_class_name(df, name="Metabolite name"): + df = df.copy(deep=True) + names = df[name].to_numpy() + classes = [] + for n in names: + if "|" in n: + n = n.split("|")[1] + n = n.split()[0] + classes.append(n) + df["Class Name"] = classes + return df + + +def calc_tail_diff(df, class_col="Class Name", tail_col="Tail Lengths", unsat_col="Tail Unsaturation"): + # Calculate average tail lengths and unsaturations for each class + unique_classes = np.unique(df[class_col]) + avg_class_lengths = [] + avg_class_unsat = [] + for c in unique_classes: + avg_class_lengths.append(np.mean(df[df[class_col] == c][tail_col])) + avg_class_unsat.append(np.mean(df[df[class_col] == c][unsat_col])) + + # Subtract each value from the average for that class + tail_diffs = [] + unsat_diffs = [] + for i, row in df.iterrows(): + c = row[class_col] + t = row[tail_col] + u = row[unsat_col] + index = np.where(unique_classes == c)[0][0] + tdiff = t - avg_class_lengths[index] + udiff = u - avg_class_unsat[index] + tail_diffs.append(tdiff) + unsat_diffs.append(udiff) + + df["Tail Length Diff"] = tail_diffs + df["Tail Unsat Diff"] = unsat_diffs + + print('Unique Classes: ', unique_classes) + print('Average Tail Lengths: ', avg_class_lengths) + print('Average Tail Unsaturation: ', avg_class_unsat) + + + return df + + adduct_translator = np.array([["[M+H]+", "[M+H]", "+1", 1, "[M+H]1+"], ["[M+NH4]+", "[M+NH4]", "+1", 1, "[M+NH4]1+"], ["[M+2H]2+", "[M+2H]", "+2", 2, "[M+2H]2+"], @@ -82,7 +129,7 @@ def parse_names(df, namecolumn="Metabolite name", parse_adduct=True): full_names_adduct = [] charges = [] for i, row in df.iterrows(): - #Parse Name + # Parse Name mol_name = row[namecolumn] if "|" in mol_name: names = mol_name.split("|") @@ -93,7 +140,7 @@ def parse_names(df, namecolumn="Metabolite name", parse_adduct=True): simp_names.append(simp_name) full_names.append(full_name) - #Parse Adduct + # Parse Adduct if parse_adduct: prec_adduct = row["Adduct type"] if prec_adduct in adduct_translator[:, 0]: @@ -152,7 +199,7 @@ def isotope_ratios(df): s = np.array(re.split(" |:", sraw)) try: ints = s[1::2].astype(float) - ratio = ints[1]/ints[0] + ratio = ints[1] / ints[0] except: ratio = -1 ratios.append(ratio) diff --git a/unidec/UPP.py b/unidec/UPP.py index b29948ef..49b3b0d0 100644 --- a/unidec/UPP.py +++ b/unidec/UPP.py @@ -123,6 +123,21 @@ def help_frame(self): html_str += array_to_html(recipe_w, cols=["Parameter", "Required", "Description"], rows=None, colors=None, index=False, sortable=False) + html_str += "

Workflow 2: Calculate Drug-to-Antibody Ratio

" \ + "This recipe will calculate the drug-to-antibody ratio for an ADC. " \ + "The column keyword of \"Protein Mass\" defines the mass of the antibody. " \ + "The column keyword of \"Drug Mass\" defines the mass of the drug. " \ + "The column keyword of \"Max Drug\" defines the maximum number of drug molecules to consider. " \ + "UPP will then loop through all possible combinations of drug and antibody " \ + "and see if they match any of the detected peaks. " \ + "If a match is found, it will color the peak green. " \ + "If no match is found, it will color the peak yellow. " \ + "After extracting the height for each peak, UPP will calculate the drug-to-antibody ratio. " \ + "Additional details on keywords are provided below. " + + html_str += array_to_html(recipe_d, cols=["Parameter", "Required", "Description"], rows=None, + colors=None, index=False, sortable=False) + html_str += "" html.SetPage(html_str) @@ -513,17 +528,18 @@ def on_exit(self, event=None): if __name__ == "__main__": app = wx.App() frame = UPPApp() - frame.usedeconbox.SetValue(True) + frame.usedeconbox.SetValue(False) path = "C:\\Data\\Wilson_Genentech\\sequences_short.xlsx" path = "C:\\Data\\Wilson_Genentech\\BsAb\\BsAb test short.xlsx" - + path = "C:\\Data\\Wilson_Genentech\\BsAb\\BsAb test.xlsx" + path = "C:\\Data\\Wilson_Genentech\\DAR\\Biotin UPP template test.xlsx" # frame.on_help_page() # exit() - if False: + if True: frame.load_file(path) # frame.set_dir_tet_box("C:\\Data\\Wilson_Genentech\\Data") # print(df) - # frame.on_run() + frame.on_run() # frame.on_run_selected(rows=[1]) # frame.on_run_selected(rows=[0]) # frame.on_add_files() diff --git a/unidec/batch.py b/unidec/batch.py index a915252f..07d48c0e 100644 --- a/unidec/batch.py +++ b/unidec/batch.py @@ -37,7 +37,13 @@ ["Variable Mod File", False, "The File Name or Path of the Variable Mod File. " "Can be either Excel or CSV. The file should have \"Mass\" and \"Name\" " "columns with these exact headers. If not specified," - " no modifications will be used."], + " no modifications will be used. " + "Note, if a Variable Mod File is provided, it will apply at least one mod " + "to each complex. In other words, if you only have one line in the file, " + "it will act as a global fixed mod (see below) to the whole complex. " + "If you want an option for unmodified, you need to include a line with " + "a mass of 0.0 and a name of \"Unmodified\" or \" \". " + ], ["Fixed Mod File", False, "The File Name or Path of the Fxied Mod File. " "Can be either Excel or CSV. The file should have \"Mass\" and \"Name\" " "columns with these exact headers. Can also have \"Number\" if a " @@ -88,6 +94,14 @@ "Form more details, see https://dx.doi.org/10.1080/19420862.2016.1232217. "] ] +recipe_d = [["Tolerance (Da)", False, "The Tolerance in Da. Default is 50 Da if not specified."], + ["Protein Mass", True, "The Protein Mass in Da"], + ["Drug Mass", True, "The Drug Mass in Da"], + ["Min Drug", False, + "The minimum number of drug molecules to include in the ADC. Default is 0 if not specified."], + ["Max Drug", True, "The maximum number of drug molecules to include in the ADC."] + ] + def find_file(fname, folder, use_converted=True): # If use_converted is true, it will look for the converted file first, then the original. @@ -123,9 +137,9 @@ def find_file(fname, folder, use_converted=True): return fname -def check_for_correct_in_keys(df): +def check_for_word_in_keys(df, word="Correct"): for k in df.keys(): - if "Correct" in k: + if word in k: return True return False @@ -267,6 +281,7 @@ def __init__(self): self.fmoddf = None self.autopw = True self.correct_pair_mode = False + self.dar_mode = False self.time_range = None def run_file(self, file=None, decon=True, use_converted=True, interactive=False): @@ -291,7 +306,9 @@ def run_df(self, df=None, decon=True, use_converted=True, interactive=False): htmlfiles = [] # Check if the "Correct" column is in the DataFrame to start correct pair mode - self.correct_pair_mode = check_for_correct_in_keys(self.rundf) + self.correct_pair_mode = check_for_word_in_keys(self.rundf, "Correct") + # Check for the DAR mode + self.dar_mode = check_for_word_in_keys(self.rundf, "Max Drugs") # if self.correct_pair_mode: # self.rundf = remove_columns(self.rundf, "Height") @@ -335,6 +352,8 @@ def run_df(self, df=None, decon=True, use_converted=True, interactive=False): self.eng.unidec_imports(efficiency=False) self.eng.pick_peaks() + results_string = None + # The First Recipe, correct pair mode if self.correct_pair_mode: # Run correct pair mode @@ -343,8 +362,18 @@ def run_df(self, df=None, decon=True, use_converted=True, interactive=False): # Merge the row back in the df self.rundf = set_row_merge(self.rundf, newrow, [i]) + if self.dar_mode: + # Run DAR mode + newrow = self.run_dar(row) + + # Merge the row back in the df + self.rundf = set_row_merge(self.rundf, newrow, [i]) + + results_string = "The Drug-to-Antibody Ratio (DAR) is: " + str(newrow["DAR"]) + # Generate the HTML report - outfile = self.eng.gen_html_report(open_in_browser=False, interactive=interactive) + outfile = self.eng.gen_html_report(open_in_browser=False, interactive=interactive, + results_string=results_string) htmlfiles.append(outfile) else: # When files are not found, print the error and add empty results @@ -421,6 +450,65 @@ def run_correct_pair(self, row, pks=None): return newrow + def run_dar(self, row, pks=None): + if pks is None: + pks = self.eng.pks + + # Extract the tolerance for peak matching + if "Tolerance (Da)" in row: + try: + self.tolerance = float(row["Tolerance (Da)"]) + except Exception: + pass + + # Read the Protein Mass + if "Protein Mass" in row: + try: + protein_mass = float(row["Protein Mass"]) + except Exception: + print("Error: Protein Mass is not a number. Please specify Protein Mass in the DataFrame.") + return row + else: + print("Error: No Protein Mass Specified. Please specify Protein Mass in the DataFrame.") + return row + + # Read the Drug Mass + if "Drug Mass" in row: + try: + drug_mass = float(row["Drug Mass"]) + except Exception: + print("Error: Drug Mass is not a number. Please specify Drug Mass in the DataFrame.") + return row + else: + print("Error: No Drug Mass Specified. Please specify Drug Mass in the DataFrame.") + return row + + # Read the min and max drugs + if "Min Drugs" in row: + try: + min_drugs = int(row["Min Drugs"]) + except Exception: + print("Error: Min Drugs is not an integer. Please specify Min Drugs in the DataFrame. Using 0.") + min_drugs = 0 + else: + min_drugs = 0 + + if "Max Drugs" in row: + try: + max_drugs = int(row["Max Drugs"]) + except Exception: + print("Error: Max Drugs is not an integer. Please specify Max Drugs in the DataFrame.") + return row + else: + print("Error: No Max Drugs Specified. Please specify Max Drugs in the DataFrame.") + return row + + print("Running DAR Calculation. Min Drugs:", min_drugs, "Max Drugs:", max_drugs, "Protein Mass:", protein_mass, + "Drug Mass:", drug_mass) + dar_val = dar_calc(pks, protein_mass, drug_mass, min_drugs, max_drugs, self.tolerance) + row["DAR"] = dar_val + return row + if __name__ == "__main__": # Example usage @@ -440,6 +528,7 @@ def run_correct_pair(self, row, pks=None): # path = "C:\\Data\\Wilson_Genentech\\BsAb\\BsAb test.xlsx" # path = "C:\\Data\\Wilson_Genentech\\BsAb\\test2.csv" path = "C:\\Data\\Wilson_Genentech\\Test\\BsAb test v2.xlsx" + path = "C:\\Data\\Wilson_Genentech\\DAR\\Biotin UPP template test.xlsx" pd.set_option('display.max_columns', None) batch.run_file(path, decon=True, use_converted=True, interactive=False) diff --git a/unidec/bin/oneapi-license-overview-10-05-22.pdf b/unidec/bin/oneapi-license-overview-10-05-22.pdf new file mode 100644 index 0000000000000000000000000000000000000000..f776c6d9bdaa9fddebfca9d59f21fa53e7e456cf GIT binary patch literal 298950 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

>Qo{0krHK|1lQz??2F+JKI?QpYhf|Va$Jv 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