From 3e7c6709f8b6efa44b3fc6b79a011de7b6a9429a Mon Sep 17 00:00:00 2001 From: BaptisteDE Date: Fri, 26 Sep 2025 15:34:05 +0200 Subject: [PATCH 1/4] =?UTF-8?q?=F0=9F=90=9B=20get=5Fsample=5Faggregated=5F?= =?UTF-8?q?time=5Fseries=20function=20arg=20remaining?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- corrai/sensitivity.py | 1 - 1 file changed, 1 deletion(-) diff --git a/corrai/sensitivity.py b/corrai/sensitivity.py index 55a1b1a..a68d53d 100644 --- a/corrai/sensitivity.py +++ b/corrai/sensitivity.py @@ -334,7 +334,6 @@ def get_sample_aggregated_time_series( prefix: str = "aggregated", ) -> pd.DataFrame: return self.sampler.sample.get_aggregated_time_series( - self.results, indicator, method, agg_method_kwarg, From 0915dc064768329eea7906c7b98a944a10ce3045 Mon Sep 17 00:00:00 2001 From: BaptisteDE Date: Fri, 26 Sep 2025 15:35:25 +0200 Subject: [PATCH 2/4] =?UTF-8?q?=F0=9F=91=BD=EF=B8=8F=20Fix=20pandas=20depr?= =?UTF-8?q?ecation?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- corrai/surrogate.py | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/corrai/surrogate.py b/corrai/surrogate.py index f102da0..d70f942 100644 --- a/corrai/surrogate.py +++ b/corrai/surrogate.py @@ -420,10 +420,11 @@ def simulate( is missing when required. """ - param_df = pd.Series(property_dict) - if simulation_options is not None: - param_df = pd.concat([param_df, pd.Series(simulation_options)]) - param_df = param_df.to_frame().T + param_df = pd.DataFrame(property_dict, index=[0]) + if simulation_options: + sim_series = pd.Series(simulation_options) + if not sim_series.empty: + param_df = pd.concat([param_df, sim_series], axis=0) missing = set(param_df.columns) - set(self.scikit_model.feature_names_in_) if missing: From f5f1a9133c8f7af147f58dfb12122f6d4526841e Mon Sep 17 00:00:00 2001 From: BaptisteDE Date: Fri, 26 Sep 2025 15:36:17 +0200 Subject: [PATCH 3/4] =?UTF-8?q?=F0=9F=90=9B=20fix=20StaticScikitModel=20ou?= =?UTF-8?q?tput=20format.=20Must=20be=20Series=20since=20it's=20a=20static?= =?UTF-8?q?=20model?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- corrai/surrogate.py | 10 +++++++--- tests/test_surrogate.py | 6 +++--- 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/corrai/surrogate.py b/corrai/surrogate.py index d70f942..b07ed5c 100644 --- a/corrai/surrogate.py +++ b/corrai/surrogate.py @@ -431,10 +431,14 @@ def simulate( raise ValueError(f"Unknown features: {missing}") if isinstance(self.scikit_model, MultiModelSO): - return self.scikit_model.predict(param_df) + return pd.Series( + self.scikit_model.predict(param_df).squeeze(), + index=[self.scikit_model.target_name_] + ) elif self.target_name is not None: - return pd.DataFrame( - data=self.scikit_model.predict(param_df), columns=[self.target_name] + return pd.Series( + self.scikit_model.predict(param_df)[0], + index=[self.target_name] ) else: raise ValueError( diff --git a/tests/test_surrogate.py b/tests/test_surrogate.py index c41a51e..f7a7300 100644 --- a/tests/test_surrogate.py +++ b/tests/test_surrogate.py @@ -58,14 +58,14 @@ def test_scikit_wrapper(self): in_df = {"x_1": 2.0, "x_2": 4.0} - ref_df = pd.DataFrame({"y": 28.0}, index=[0]) + ref_serie = pd.Series({"y": 28.0}) mumoso = MultiModelSO() mumoso.fit(ds[["x_1", "x_2"]], ds["y"]) stat_mod = StaticScikitModel(mumoso) - pd.testing.assert_frame_equal(stat_mod.simulate(in_df), ref_df) + pd.testing.assert_series_equal(stat_mod.simulate(in_df), ref_serie) line_reg = LinearRegression() line_reg.fit(ds[["x_1", "x_2"]], ds["y"]) scikit_mod = StaticScikitModel(line_reg, target_name="y") - pd.testing.assert_frame_equal(scikit_mod.simulate(in_df), ref_df) + pd.testing.assert_series_equal(scikit_mod.simulate(in_df), ref_serie) From 2c9a54468d8ecb24e85b93dc524514085cd72001 Mon Sep 17 00:00:00 2001 From: BaptisteDE Date: Fri, 26 Sep 2025 15:39:06 +0200 Subject: [PATCH 4/4] =?UTF-8?q?=F0=9F=9A=A8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- corrai/surrogate.py | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/corrai/surrogate.py b/corrai/surrogate.py index b07ed5c..56de6ca 100644 --- a/corrai/surrogate.py +++ b/corrai/surrogate.py @@ -433,12 +433,11 @@ def simulate( if isinstance(self.scikit_model, MultiModelSO): return pd.Series( self.scikit_model.predict(param_df).squeeze(), - index=[self.scikit_model.target_name_] + index=[self.scikit_model.target_name_], ) elif self.target_name is not None: return pd.Series( - self.scikit_model.predict(param_df)[0], - index=[self.target_name] + self.scikit_model.predict(param_df)[0], index=[self.target_name] ) else: raise ValueError(