From 6db6af6fd40f6b01cd385c0e6f59d7fdaf77b23a Mon Sep 17 00:00:00 2001 From: Peter Yoachim Date: Tue, 10 Dec 2024 14:54:12 -0800 Subject: [PATCH 1/2] update some stats to make analyzing scheduler_note values easier --- rubin_sim/maf/batches/col_map_dict.py | 1 + rubin_sim/maf/batches/glance_batch.py | 25 +++++++++++++++++++--- rubin_sim/maf/stackers/general_stackers.py | 20 +++++++++++++++++ 3 files changed, 43 insertions(+), 3 deletions(-) diff --git a/rubin_sim/maf/batches/col_map_dict.py b/rubin_sim/maf/batches/col_map_dict.py index 8077d7d7..e57b8c1f 100644 --- a/rubin_sim/maf/batches/col_map_dict.py +++ b/rubin_sim/maf/batches/col_map_dict.py @@ -40,6 +40,7 @@ def col_map_dict(dict_name=None): ] col_map["metadataAngleList"] = ["rotSkyPos"] col_map["scheduler_note"] = "scheduler_note" + col_map["scheduler_note_root"] = "scheduler_note_root" elif dict_name == "opsimv4": col_map = {} diff --git a/rubin_sim/maf/batches/glance_batch.py b/rubin_sim/maf/batches/glance_batch.py index 2dded7d8..0f5ad31e 100644 --- a/rubin_sim/maf/batches/glance_batch.py +++ b/rubin_sim/maf/batches/glance_batch.py @@ -364,16 +364,35 @@ def glanceBatch( # stats from the scheduler_note column if "scheduler_note" in colmap.keys(): - displayDict = {"group": "Basic Stats", "subgroup": "Percent stats"} + displayDict = {"group": "Basic Stats", "subgroup": "Percent root stats"} metric = metrics.StringCountMetric( - col=colmap["scheduler_note"], percent=True, metric_name="Percents", clip_end=True + col=colmap["scheduler_note_root"], percent=True, metric_name="Percents", clip_end=False ) sql = "" slicer = slicers.UniSlicer() bundle = metric_bundles.MetricBundle(metric, slicer, sql, display_dict=displayDict) bundle_list.append(bundle) + displayDict["subgroup"] = "Count root Stats" + metric = metrics.StringCountMetric( + col=colmap["scheduler_note_root"], metric_name="Counts", clip_end=False + ) + bundle = metric_bundles.MetricBundle(metric, slicer, sql, display_dict=displayDict) + bundle_list.append(bundle) + + # For pairs and twilights + if "scheduler_note" in colmap.keys(): + displayDict = {"group": "Basic Stats", "subgroup": "Percent stats"} + metric = metrics.StringCountMetric( + col=colmap["scheduler_note"], percent=True, metric_name="Percents", clip_end=False + ) + sql = ( + "scheduler_note like 'pair%%' or scheduler_note like 'twilight%%' or scheduler_note like 'blob%%'" + ) + slicer = slicers.UniSlicer() + bundle = metric_bundles.MetricBundle(metric, slicer, sql, display_dict=displayDict) + bundle_list.append(bundle) displayDict["subgroup"] = "Count Stats" - metric = metrics.StringCountMetric(col=colmap["scheduler_note"], metric_name="Counts", clip_end=True) + metric = metrics.StringCountMetric(col=colmap["scheduler_note"], metric_name="Counts", clip_end=False) bundle = metric_bundles.MetricBundle(metric, slicer, sql, display_dict=displayDict) bundle_list.append(bundle) diff --git a/rubin_sim/maf/stackers/general_stackers.py b/rubin_sim/maf/stackers/general_stackers.py index 6f685b82..960a19fa 100644 --- a/rubin_sim/maf/stackers/general_stackers.py +++ b/rubin_sim/maf/stackers/general_stackers.py @@ -119,6 +119,26 @@ def _run(self, sim_data, cols_present=False): return sim_data +class NoteRootStacker(BaseStacker): + """Strip off things after a comma in the scheduler_note""" + + cols_added = ["scheduler_note_root"] + + def __init__(self, note_col="scheduler_note"): + self.units = ["mag"] + self.cols_req = [note_col] + self.note_col = note_col + self.cols_added_dtypes = [" Date: Fri, 13 Dec 2024 13:03:24 -0800 Subject: [PATCH 2/2] turn off KNe DDF plots --- rubin_sim/maf/batches/ddf_batch.py | 1 + 1 file changed, 1 insertion(+) diff --git a/rubin_sim/maf/batches/ddf_batch.py b/rubin_sim/maf/batches/ddf_batch.py index eebf86a0..430a46f1 100644 --- a/rubin_sim/maf/batches/ddf_batch.py +++ b/rubin_sim/maf/batches/ddf_batch.py @@ -204,6 +204,7 @@ def ddfBatch( info_label=" ".join([fieldname]), summary_metrics=lightcurve_summary(), display_dict=displayDict, + plot_funcs=[], ) )