diff --git a/evaluation_age_time_dependent.py b/evaluation_age_time_dependent.py index a4cf12a..8dafb7f 100644 --- a/evaluation_age_time_dependent.py +++ b/evaluation_age_time_dependent.py @@ -131,18 +131,24 @@ def aggregate_age_bin_results(df_by_bin: pd.DataFrame) -> pd.DataFrame: group_keys = ["mc_idx", "horizon_tau", "topk_percent", "cause_id"] - df_mc_macro = ( - df_by_bin.groupby(group_keys) - .apply(lambda g: _bin_aggregate(g, weighted=False)) - .reset_index() - ) + gb = df_by_bin.groupby(group_keys) + + try: + df_mc_macro = gb.apply( + lambda g: _bin_aggregate(g, weighted=False), include_groups=False + ).reset_index() + except TypeError: # pandas<2.2 (no include_groups) + df_mc_macro = gb.apply(lambda g: _bin_aggregate( + g, weighted=False)).reset_index() df_mc_macro["agg_type"] = "macro" - df_mc_weighted = ( - df_by_bin.groupby(group_keys) - .apply(lambda g: _bin_aggregate(g, weighted=True)) - .reset_index() - ) + try: + df_mc_weighted = gb.apply( + lambda g: _bin_aggregate(g, weighted=True), include_groups=False + ).reset_index() + except TypeError: # pandas<2.2 (no include_groups) + df_mc_weighted = gb.apply( + lambda g: _bin_aggregate(g, weighted=True)).reset_index() df_mc_weighted["agg_type"] = "weighted" df_mc_binagg = pd.concat([df_mc_macro, df_mc_weighted], ignore_index=True)