Skip to content

Commit a6b9ebd

Browse files
authored
bug patch in prophet min/max handling
1 parent 33c9966 commit a6b9ebd

File tree

1 file changed

+12
-7
lines changed
  • ads/opctl/operator/lowcode/forecast/model

1 file changed

+12
-7
lines changed

ads/opctl/operator/lowcode/forecast/model/prophet.py

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -43,22 +43,27 @@ def _fit_model(data, params, additional_regressors):
4343
from prophet import Prophet
4444

4545
monthly_seasonality = params.pop("monthly_seasonality", False)
46-
data_floor = params.pop("min", None)
47-
data_cap = params.pop("max", None)
48-
if data_cap or data_floor:
46+
47+
has_min = "min" in params
48+
has_max = "max" in params
49+
if has_min or has_max:
4950
params["growth"] = "logistic"
51+
data_floor = params.pop("min", None)
52+
data_cap = params.pop("max", None)
53+
5054
model = Prophet(**params)
5155
if monthly_seasonality:
5256
model.add_seasonality(name="monthly", period=30.5, fourier_order=5)
5357
params["monthly_seasonality"] = monthly_seasonality
5458
for add_reg in additional_regressors:
5559
model.add_regressor(add_reg)
56-
if data_floor:
60+
61+
if has_min:
5762
data["floor"] = float(data_floor)
58-
params["floor"] = data_floor
59-
if data_cap:
63+
params["min"] = data_floor
64+
if has_max:
6065
data["cap"] = float(data_cap)
61-
params["cap"] = data_cap
66+
params["max"] = data_cap
6267

6368
model.fit(data)
6469
return model

0 commit comments

Comments
 (0)