From 8401b7681324f0e13d5edc8cd36fdd394829b8fa Mon Sep 17 00:00:00 2001 From: mpecchi Date: Tue, 7 May 2024 22:16:54 -0400 Subject: [PATCH] tests added --- src/gcms_data_analysis/gcms.py | 8 + .../compounds_properties.xlsx | Bin 6377 -> 6380 bytes tests/data_minimal_case/files_info.xlsx | Bin 9005 -> 5223 bytes tests/data_minimal_case/output/plots/plot.png | Bin 192525 -> 0 bytes tests/test_project_class.py | 723 ++++++++++++++++-- 5 files changed, 653 insertions(+), 78 deletions(-) delete mode 100644 tests/data_minimal_case/output/plots/plot.png diff --git a/src/gcms_data_analysis/gcms.py b/src/gcms_data_analysis/gcms.py index 3da0389..4ecb35f 100644 --- a/src/gcms_data_analysis/gcms.py +++ b/src/gcms_data_analysis/gcms.py @@ -453,6 +453,14 @@ def add_iupac_to_files_and_calibrations(self): def create_tanimoto_and_molecular_weight_similarity_dfs( self, ) -> tuple[pd.DataFrame, pd.DataFrame]: + if not self.files: + self.load_all_files() + if not self.calibrations: + self.load_calibrations() + if self.compounds_properties is None: + self.load_compounds_properties() + if self.dict_names_to_iupacs is None: + self.create_dict_names_to_iupacs() if "iupac_name" not in list(self.files.values())[0].columns: self.add_iupac_to_files_and_calibrations() prop_index_iupac = self.compounds_properties.set_index("iupac_name") diff --git a/tests/data_minimal_case/compounds_properties.xlsx b/tests/data_minimal_case/compounds_properties.xlsx index f62ddbeac6fabddd565afe80a88248e0b42a6d0f..7136ef0f0443b360d30279f99373e3dbfffc1e58 100644 GIT binary patch delta 2410 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 diff --git a/tests/data_minimal_case/files_info.xlsx b/tests/data_minimal_case/files_info.xlsx index ed6c89c6ac0ed66ee010ac9cd1cd36206ddcdaac..e20503a284c94579d2fcedc87772665be33fd25a 100644 GIT binary patch literal 5223 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 diff --git a/tests/data_minimal_case/output/plots/plot.png b/tests/data_minimal_case/output/plots/plot.png deleted file mode 100644 index 5faad1d0caa140e91f7afae3c8d1307a9ac8b420..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 192525 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%0A$948cYKX+AvVwLfn_R1Si(Tz<;0@f(pOa z4pL##aAbOdN02PF1nGqT8`Aw?kN#7J#EhKp*p`%4e*PL$biy0VBDb1g=r|J9)H5x_ zBz2X{XkmAKN-98~yw&t8nA`SyFbC)m2EW_RnTG_j`_L&b%YB$ieK{YynC%k;m|I_a z1@PF4Sv%t|;m2Vyag4iY4=kv7N&71eFQ|!-jR@hUQz#3LQqNG*)~%dF|Jay2Y%8gY zcCm*yfh+f?7`X;{mxtYxM7r!q2T>a=@?gUJW?oLJS@FFX-Rtr76()SK4bB$x_Mi4B zaKQ|a;#XG-iPoQONOR%9sJ{UNROVo~UW2g)&PamEZPlFLRu^{HkuilE!}iI16ySS73%$2>rt;TLS-G_ z5>VUbxXO?6saQ;)ciQHp5EQ71Q>eE4_UC9Fy<_FS;@?NE4Qr;TbN#R83yzI^Kk3u-Y}_5mQ4tgqv*n>o1r+Y9^dI(Dvx@sh-bY(;cO` zY=S!VZ2A)uRKK`-ok@=zp*85m$Hi5_)JDOeIy}DXp_iA?)I%gw`WRKUO6aR5Z0AiL zo+}Mr7l;7fe6r=6=`mfi6Jl0;3_e zmH)mzwJ>BEIK=r)I}25sS{P%L=w~VZfvm2IiJ}giM}>PL(Pj24Y7;l1vj7j9mWB#L zE~`F6X-~vzNr?l%#fB<9)-0#N~>bCxD)bix+tXNkQ15^^~Rc5e&7TY`7j8 z2nhx#X{U&xfOkf4gx#p6BiW-~kL4BJCO)5Yg DvYKGaXeO$~;4+eiW8B0hSpk7@ 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≥Yu*kFg(#r|& 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 MyFigure: + """ """ + if show_total_in_twinx: + plot_twinx: bool = True + else: + plot_twinx: bool = None + default_kwargs = { + "filename": "plot" + parameter, + "out_path": proj.out_path, + "height": 4, + "width": 4, + "grid": proj.plot_grid, + "text_font": proj.plot_font, + "y_lab": project.parameter_to_axis_label[parameter], + "yt_lab": project.parameter_to_axis_label[parameter], + "twinx": plot_twinx, + "masked_unsignificant_data": True, + # "legend": False, + } + # Update kwargs with the default key-value pairs if the key is not present in kwargs + kwargs = {**default_kwargs, **kwargs} + # create folder where Plots are stored + out_path = plib.Path(project.out_path, "plots", files_or_samples) + out_path.mkdir(parents=True, exist_ok=True) + if not aggregate: # then use compounds reports + if files_or_samples == "files": + df_ave = proj.files_reports[parameter].T + df_std = pd.DataFrame() + elif files_or_samples == "samples": + df_ave = proj.samples_reports[parameter].T + df_std = proj.samples_reports_std[parameter].T + else: # use aggregated reports + if files_or_samples == "files": + df_ave = proj.files_aggrreps[parameter].T + df_std = pd.DataFrame() + elif files_or_samples == "samples": + df_ave = proj.samples_aggrreps[parameter].T + df_std = proj.samples_aggrreps_std[parameter].T + + if only_samples_to_plot is not None: + df_ave = df_ave.loc[only_samples_to_plot, :].copy() + if files_or_samples == "samples": + df_std = df_std.loc[only_samples_to_plot, :].copy() + + if rename_samples is not None: + df_ave.index = rename_samples + if files_or_samples == "samples": + df_std.index = rename_samples + + if reorder_samples is not None: + filtered_reorder_samples = [ + idx for idx in reorder_samples if idx in df_ave.index + ] + df_ave = df_ave.reindex(filtered_reorder_samples) + if files_or_samples == "samples": + df_std = df_std.reindex(filtered_reorder_samples) + + if min_y_thresh is not None: + df_ave = df_ave.loc[:, (df_ave > min_y_thresh).any(axis=0)].copy() + if files_or_samples == "samples": + df_std = df_std.loc[:, df_ave.columns].copy() + + if item_to_color_to_hatch is not None: # specific color and hatches to each fg + plot_colors = [ + item_to_color_to_hatch.loc[item, "clr"] for item in df_ave.columns + ] + plot_hatches = [ + item_to_color_to_hatch.loc[item, "htch"] for item in df_ave.columns + ] + else: # no specific colors and hatches specified + plot_colors = colors + plot_hatches = hatches + + myfig = MyFigure( + rows=1, + cols=1, + **kwargs, + ) + if df_std.isna().all().all() or df_std.empty: # means that no std is provided + df_ave.plot( + ax=myfig.axs[0], + kind="bar", + width=0.9, + edgecolor="k", + legend=False, + capsize=3, + color=colors, + ) + else: # no legend is represented but non-significant values are shaded + mask = (df_ave.abs() > df_std.abs()) | df_std.isna() + df_ave[mask].plot( + ax=myfig.axs[0], + kind="bar", + width=0.9, + edgecolor="k", + legend=False, + yerr=df_std[mask], + capsize=3, + color=colors, + label="_nolegend_", + ) + + df_ave[~mask].plot( + ax=myfig.axs[0], + kind="bar", + width=0.9, + legend=False, + edgecolor="grey", + color=colors, + alpha=0.5, + label="_nolegend_", + ) + if show_total_in_twinx: + myfig.axts[0].scatter( + df_ave.index, + df_ave.sum(axis=1).values, + color="k", + linestyle="None", + edgecolor="k", + facecolor="grey", + s=100, + label=yt_sum_label, + alpha=0.5, + ) + if not df_std.empty: + myfig.axts[0].errorbar( + df_ave.index, + df_ave.sum(axis=1).values, + df_std.sum(axis=1).values, + capsize=3, + linestyle="None", + color="grey", + ecolor="k", + label="_nolegend_", + ) + + myfig.save_figure() + return myfig + + +def plot_df_ave_std( + proj: Project, + df_ave: pd.DataFrame, + df_std: pd.DataFrame = pd.DataFrame(), + filename: str = "plot", + show_total_in_twinx: bool = False, + annotate_outliers: bool = True, + min_y_thresh: float | None = None, + only_samples_to_plot: list[str] | None = None, + rename_samples: list[str] | None = None, + reorder_samples: list[str] | None = None, + item_to_color_to_hatch: pd.DataFrame | None = None, + yt_sum_label: str = "total\n(right axis)", + **kwargs, +) -> MyFigure: + + # create folder where Plots are stored + out_path = plib.Path(Project.out_path, "df_plots") + out_path.mkdir(parents=True, exist_ok=True) + if only_samples_to_plot is not None: + df_ave = df_ave.loc[only_samples_to_plot, :].copy() + if not df_std.empty: + df_std = df_std.loc[only_samples_to_plot, :].copy() + + if rename_samples is not None: + df_ave.index = rename_samples + if not df_std.empty: + df_std.index = rename_samples + + if reorder_samples is not None: + filtered_reorder_samples = [ + idx for idx in reorder_samples if idx in df_ave.index + ] + df_ave = df_ave.reindex(filtered_reorder_samples) + if not df_std.empty: + df_std = df_std.reindex(filtered_reorder_samples) + if reorder_samples is not None: + filtered_reorder_samples = [ + idx for idx in reorder_samples if idx in df_ave.index + ] + df_ave = df_ave.reindex(filtered_reorder_samples) + if not df_std.empty: + df_std = df_std.reindex(filtered_reorder_samples) + + if min_y_thresh is not None: + df_ave = df_ave.loc[:, (df_ave > min_y_thresh).any(axis=0)].copy() + if not df_std.empty: + df_std = df_std.loc[:, df_ave.columns].copy() + + if item_to_color_to_hatch is not None: # specific color and hatches to each fg + colors = [item_to_color_to_hatch.loc[item, "clr"] for item in df_ave.columns] + hatches = [item_to_color_to_hatch.loc[item, "htch"] for item in df_ave.columns] + else: # no specific colors and hatches specified + colors = sns.color_palette(color_palette, df_ave.shape[1]) + hatches = htchs + + if show_total_in_twinx: + plot_twinx: bool = True + else: + plot_twinx: bool = False + + if show_total_in_twinx: + legend_x_anchor += 0.14 + yt_lab = y_lab + + myfig = MyFigure( + rows=1, + cols=1, + twinx=plot_twinx, + text_font=Project.plot_font, + y_lab=y_lab, + yt_lab=yt_lab, + y_lim=y_lim, + legend=False, + grid=Project.plot_grid, + **kwargs, + ) + if df_std.isna().all().all() or df_std.empty: # means that no std is provided + df_ave.plot( + ax=myfig.axs[0], + kind="bar", + rot=x_label_rotation, + width=0.9, + edgecolor="k", + legend=False, + capsize=3, + color=colors, + ) + bars = myfig.axs[0].patches # needed to add patches to the bars + n_different_hatches = int(len(bars) / df_ave.shape[0]) + else: # no legend is represented but non-significant values are shaded + mask = (df_ave.abs() > df_std.abs()) | df_std.isna() + + df_ave[mask].plot( + ax=myfig.axs[0], + kind="bar", + rot=x_label_rotation, + width=0.9, + edgecolor="k", + legend=False, + yerr=df_std[mask], + capsize=3, + color=colors, + label="_nolegend", + ) + df_ave[~mask].plot( + ax=myfig.axs[0], + kind="bar", + rot=x_label_rotation, + width=0.9, + legend=False, + edgecolor="grey", + color=colors, + alpha=0.5, + label="_nolegend", + ) + bars = myfig.axs[0].patches # needed to add patches to the bars + n_different_hatches = int(len(bars) / df_ave.shape[0] / 2) + if show_total_in_twinx: + myfig.axts[0].scatter( + df_ave.index, + df_ave.sum(axis=1).values, + color="k", + linestyle="None", + edgecolor="k", + facecolor="grey", + s=100, + label=yt_sum_label, + alpha=0.5, + ) + if not df_std.empty: + myfig.axts[0].errorbar( + df_ave.index, + df_ave.sum(axis=1).values, + df_std.sum(axis=1).values, + capsize=3, + linestyle="None", + color="grey", + ecolor="k", + ) + bar_hatches = [] + # get a list with the hatches + for h in hatches[:n_different_hatches] + hatches[:n_different_hatches]: + for n in range(df_ave.shape[0]): # htcs repeated for samples + bar_hatches.append(h) # append based on samples number + for bar, hatch in zip(bars, bar_hatches): # assign hatches to each bar + bar.set_hatch(hatch) + myfig.axs[0].set(xlabel=None) + if x_label_rotation != 0: + myfig.axs[0].set_xticklabels( + df_ave.index, rotation=x_label_rotation, ha="right", rotation_mode="anchor" + ) + if legend_location is not None: + hnd_ax, lab_ax = myfig.axs[0].get_legend_handles_labels() + if not df_std.empty: + hnd_ax = hnd_ax[: len(hnd_ax) // 2] + lab_ax = lab_ax[: len(lab_ax) // 2] + if legend_labelspacing > 0.5: # large legend spacing for molecules + myfig.axs[0].plot(np.nan, np.nan, "-", color="None", label=" ") + hhhh, aaaa = myfig.axs[0].get_legend_handles_labels() + hnd_ax.append(hhhh[0]) + lab_ax.append(aaaa[0]) + if show_total_in_twinx: + hnd_axt, lab_axt = myfig.axts[0].get_legend_handles_labels() + else: + hnd_axt, lab_axt = [], [] + if legend_location == "outside": # legend goes outside of plot area + myfig.axs[0].legend( + hnd_ax + hnd_axt, + lab_ax + lab_axt, + loc="upper left", + ncol=legend_columns, + bbox_to_anchor=(legend_x_anchor, legend_y_anchor), + labelspacing=legend_labelspacing, + ) + else: # legend is inside of plot area + myfig.axs[0].legend( + hnd_ax + hnd_axt, + lab_ax + lab_axt, + loc=legend_location, + ncol=legend_columns, + labelspacing=legend_labelspacing, + ) + # annotate ave+-std at the top of outliers bar (exceeding y_lim) + if annotate_outliers and (y_lim is not None): # and (not df_std.empty): + _annotate_outliers_in_plot(myfig.axs[0], df_ave, df_std, y_lim) + myfig.save_figure(filename, out_path) + return myfig + + # %% -s_ave, s_std = proj.create_single_sample_from_files( - files_in_sample=[s1, s2], samplename="S" + + +@pytest.fixture +def project(): + test_project = Project( + folder_path=folder_path, + auto_save_to_excel=False, + compounds_to_rename_in_files={"almost oleic acid": "oleic acid"}, + ) + return test_project + + +# Test default parameters +def test_default_parameters(project): + assert proj.column_to_sort_values_in_samples == "retention_time" + assert proj.delta_mol_weight_threshold == 100 + assert proj.acceptable_params == [ + "height", + "area", + "area_if_undiluted", + "conc_vial_mg_L", + "conc_vial_if_undiluted_mg_L", + "fraction_of_sample_fr", + "fraction_of_feedstock_fr", + ] + assert proj.compounds_to_rename_in_files == {"almost oleic acid": "oleic acid"} + + +# Test the `load_files_info` method +def test_load_files_info(project): + files_info = proj.load_files_info() + assert isinstance(files_info, pd.DataFrame) + assert len(files_info) > 0 + + +# Test the `load_all_files` method +def test_load_all_files(project): + files = proj.load_all_files() + assert isinstance(files, dict) + assert len(files) > 0 + + +# Test the `load_class_code_frac` method +def test_load_class_code_frac(project): + class_code_frac = proj.load_class_code_frac() + assert isinstance(class_code_frac, pd.DataFrame) + assert len(class_code_frac) > 0 + + +# Test the `load_calibrations` method +def test_load_calibrations(project): + calibrations = proj.load_calibrations() + assert isinstance(calibrations, dict) + assert len(calibrations) > 0 + + +# Test the `create_list_of_all_compounds` method +def test_create_list_of_all_compounds(project): + compounds = proj.create_list_of_all_compounds() + assert isinstance(compounds, list) + assert len(compounds) > 0 + + +# Test the `create_compounds_properties` method +def test_create_compounds_properties(project): + compounds_properties = proj.create_compounds_properties() + assert isinstance(compounds_properties, pd.DataFrame) + assert len(compounds_properties) > 0 + + +assert_frame_equal( + compounds_properties_created, + compounds_properties_loaded, + check_exact=False, + atol=1e-5, + rtol=1e-5, + check_dtype=False, ) + + +# Test the `create_dict_names_to_iupacs` method +def test_create_dict_names_to_iupacs(project): + dict_names_to_iupacs = proj.create_dict_names_to_iupacs() + assert isinstance(dict_names_to_iupacs, dict) + assert len(dict_names_to_iupacs) > 0 + + +# Test the `add_iupac_to_files_and_calibrations` method +def test_add_iupac_to_files_and_calibrations(project): + files_iupac, calibration_iupac = proj.add_iupac_to_files_and_calibrations() + assert isinstance(files_iupac, dict) + assert isinstance(calibration_iupac, dict) + assert len(files_iupac) > 0 + assert len(calibration_iupac) > 0 + + +# Test the `create_tanimoto_and_molecular_weight_similarity_dfs` method +def test_create_tanimoto_and_molecular_weight_similarity_dfs(project): + + tanimoto_df, mw_similarity_df = ( + proj.create_tanimoto_and_molecular_weight_similarity_dfs() + ) + assert isinstance(tanimoto_df, pd.DataFrame) + assert isinstance(mw_similarity_df, pd.DataFrame) + assert len(tanimoto_df) > 0 + assert len(mw_similarity_df) > 0 + + +# Test the `apply_calib_to_single_file` method +def test_apply_calib_to_single_file(project): + file_name = "S_1" + calibrated_file = proj.apply_calib_to_single_file(file_name) + assert isinstance(calibrated_file, pd.DataFrame) + assert len(calibrated_file) > 0 + + +# Test the `apply_calibration_to_files` method +def test_apply_calibration_to_files(project): + calibrated_files = proj.apply_calibration_to_files() + assert isinstance(calibrated_files, dict) + assert len(calibrated_files) > 0 + + +# Test the `add_stats_to_files_info` method +def test_add_stats_to_files_info(project): + files_info_with_stats = proj.add_stats_to_files_info() + assert isinstance(files_info_with_stats, pd.DataFrame) + assert len(files_info_with_stats) > 0 + + +# Test the `create_samples_info` method +def test_create_samples_info(project): + samples_info, samples_info_std = proj.create_samples_info() + assert isinstance(samples_info, pd.DataFrame) + assert isinstance(samples_info_std, pd.DataFrame) + assert len(samples_info) > 0 + assert len(samples_info_std) > 0 + + +# Test the `create_single_sample_from_files` method +def test_create_single_sample_from_files(project): + files_in_sample = ["S_1", "S_2"] + sample_name = "S" + single_sample = proj.create_single_sample_from_files(files_in_sample, sample_name) + assert isinstance(single_sample, pd.DataFrame) + assert len(single_sample) > 0 + + +# Test the `create_samples_from_files` method +def test_create_samples_from_files(project): + samples, samples_std = proj.create_samples_from_files() + assert isinstance(samples, dict) + assert isinstance(samples_std, dict) + assert len(samples) > 0 + assert len(samples_std) > 0 + + +# Test the `create_files_param_report` method +def test_create_files_param_report(project): + param = "height" + files_param_report = proj.create_files_param_report(param) + assert isinstance(files_param_report, pd.DataFrame) + assert len(files_param_report) > 0 + + +# Test the `create_samples_param_report` method +def test_create_samples_param_report(project): + param = "height" + samples_param_report, samples_param_report_std = proj.create_samples_param_report( + param + ) + assert isinstance(samples_param_report, pd.DataFrame) + assert isinstance(samples_param_report_std, pd.DataFrame) + assert len(samples_param_report) > 0 + assert len(samples_param_report_std) > 0 + + +# Test the `create_files_param_aggrrep` method +def test_create_files_param_aggrrep(project): + param = "height" + files_param_aggrrep = proj.create_files_param_aggrrep(param) + assert isinstance(files_param_aggrrep, pd.DataFrame) + assert len(files_param_aggrrep) > 0 + + +# Test the `create_samples_param_aggrrep` method +def test_create_samples_param_aggrrep(project): + param = "height" + samples_param_aggrrep, samples_param_aggrrep_std = ( + proj.create_samples_param_aggrrep(param) + ) + assert isinstance(samples_param_aggrrep, pd.DataFrame) + assert isinstance(samples_param_aggrrep_std, pd.DataFrame) + assert len(samples_param_aggrrep) > 0 + assert len(samples_param_aggrrep_std) > 0 + + +# Test the `save_files_samples_reports` method +def test_save_files_samples_reports(project): + proj.save_files_samples_reports() + # Add assertions to check if the reports are saved successfully + # Test the default parameters + for subfolder in [ + "", + "files", + "samples", + "files_reports", + "files_aggrreps", + "samples_reports", + "samples_aggrreps", + ]: + assert (folder_path / "output" / subfolder).exists() + assert len(list((folder_path / "output" / subfolder).iterdir())) > 0 + + # Remove the output folder + # shutil.rmtree(folder_path / "output") + + # check that the average between s1 and s2 is the same as s_ave for area for param in proj.acceptable_params: print(f"{param = }") for compound in s1.index.drop("notvalidcomp").drop("dichlorobenzene"): print(f"\t {compound = }") - # print(f"\t\t {s1.loc[compound, param] = }") - # print(f"\t\t {s2.loc[compound, param] = }") - # print(f"\t\t {s_ave.loc[compound, param] = }") if compound not in s2.index: assert np.isclose( s_ave.loc[compound, param], @@ -108,15 +706,6 @@ np.std((s1.loc[compound, param], s2.loc[compound, param]), ddof=1), ) -# %% - -# %% -samples, samples_std = proj.create_samples_from_files() - -# %% -reph = proj.create_files_param_report(param="height") -repc = proj.create_files_param_report(param="conc_vial_mg_L") -# %% # Test that for each file and parameter, values match with the original file in the reports for param in proj.acceptable_params: @@ -153,25 +742,3 @@ # %% - -print(reph) -print(repc) -# %% -repsh, repsh_d = proj.create_samples_param_report(param="height") -repsc, repsc_d = proj.create_samples_param_report(param="conc_vial_mg_L") -print(repsh) -print(repsc) -# %% -aggh = proj.create_files_param_aggrrep(param="height") -aggc = proj.create_files_param_aggrrep(param="conc_vial_mg_L") -print(aggh) -print(aggc) - -aggsh, aggsh_d = proj.create_samples_param_aggrrep(param="height") -aggsc, aggsc_d = proj.create_samples_param_aggrrep(param="conc_vial_mg_L") -print(aggsh) -print(aggsh_d) -print(aggsc) -print(aggsc_d) -# %% -proj.save_files_samples_reports()