Update app.py
Browse files
app.py
CHANGED
@@ -107,7 +107,7 @@ def read_and_process_data(url, user_name):
|
|
107 |
return unique_count, df_daily
|
108 |
|
109 |
|
110 |
-
def make_average_forecast(total_by_date, end_date_str="2025-03-
|
111 |
"""
|
112 |
Делает «прогноз по среднему» до указанной даты (end_date_str).
|
113 |
Берём средний дневной прирост count и
|
@@ -264,8 +264,8 @@ def process_data():
|
|
264 |
model = Prophet()
|
265 |
model.fit(df_prophet)
|
266 |
|
267 |
-
# Прогноз до
|
268 |
-
end_date = pd.to_datetime("2025-03-
|
269 |
last_date = df_prophet["ds"].max()
|
270 |
additional_days = (end_date - last_date).days
|
271 |
future = model.make_future_dataframe(periods=additional_days if additional_days>0 else 0)
|
@@ -282,7 +282,7 @@ def process_data():
|
|
282 |
df_future = df_plot[df_plot["y"].isna()].copy()
|
283 |
|
284 |
# Прогноз по среднему
|
285 |
-
df_avg = make_average_forecast(total_by_date, "2025-03-
|
286 |
|
287 |
# Преобразуем для Seaborn
|
288 |
# История
|
@@ -326,7 +326,7 @@ def process_data():
|
|
326 |
markers=False,
|
327 |
ax=ax2
|
328 |
)
|
329 |
-
ax2.set_title("Прогноз до
|
330 |
ax2.set_xlabel("Дата")
|
331 |
ax2.set_ylabel("Накопленное число SMS (Всего)")
|
332 |
fig2.autofmt_xdate(rotation=30)
|
|
|
107 |
return unique_count, df_daily
|
108 |
|
109 |
|
110 |
+
def make_average_forecast(total_by_date, end_date_str="2025-03-31"):
|
111 |
"""
|
112 |
Делает «прогноз по среднему» до указанной даты (end_date_str).
|
113 |
Берём средний дневной прирост count и
|
|
|
264 |
model = Prophet()
|
265 |
model.fit(df_prophet)
|
266 |
|
267 |
+
# Прогноз до 31 марта 2025
|
268 |
+
end_date = pd.to_datetime("2025-03-31")
|
269 |
last_date = df_prophet["ds"].max()
|
270 |
additional_days = (end_date - last_date).days
|
271 |
future = model.make_future_dataframe(periods=additional_days if additional_days>0 else 0)
|
|
|
282 |
df_future = df_plot[df_plot["y"].isna()].copy()
|
283 |
|
284 |
# Прогноз по среднему
|
285 |
+
df_avg = make_average_forecast(total_by_date, "2025-03-31")
|
286 |
|
287 |
# Преобразуем для Seaborn
|
288 |
# История
|
|
|
326 |
markers=False,
|
327 |
ax=ax2
|
328 |
)
|
329 |
+
ax2.set_title("Прогноз до конца марта 2025 (Prophet & По среднему)")
|
330 |
ax2.set_xlabel("Дата")
|
331 |
ax2.set_ylabel("Накопленное число SMS (Всего)")
|
332 |
fig2.autofmt_xdate(rotation=30)
|