diff --git a/pyirf/benchmarks/angular_resolution.py b/pyirf/benchmarks/angular_resolution.py index 9400b03a9..91e0cd094 100644 --- a/pyirf/benchmarks/angular_resolution.py +++ b/pyirf/benchmarks/angular_resolution.py @@ -58,4 +58,5 @@ def angular_resolution( by_bin = table[valid].group_by(bin_index[valid]) for bin_idx, group in zip(by_bin.groups.keys, by_bin.groups): result[key][bin_idx] = np.nanquantile(group["theta"], ONE_SIGMA_QUANTILE) + result["n_events"][bin_idx] = len(group) return result diff --git a/pyirf/benchmarks/tests/test_angular_resolution.py b/pyirf/benchmarks/tests/test_angular_resolution.py index 629544721..1a1c179f1 100644 --- a/pyirf/benchmarks/tests/test_angular_resolution.py +++ b/pyirf/benchmarks/tests/test_angular_resolution.py @@ -45,11 +45,15 @@ def test_angular_resolution(unit): events["true_energy"].value[500] = np.nan events["true_energy"].value[1500] = np.nan - ang_res = angular_resolution( + table = angular_resolution( events, [1, 10, 100] * u.TeV, - )['angular_resolution'] + ) + ang_res = table['angular_resolution'] assert len(ang_res) == 2 assert u.isclose(ang_res[0], TRUE_RES_1 * u.deg, rtol=0.05) assert u.isclose(ang_res[1], TRUE_RES_2 * u.deg, rtol=0.05) + + # one value in each bin is nan, which is ignored + np.testing.assert_array_equal(table["n_events"], [998, 998])