Logo
TGCATALOG
Каталог Подборки Блог
Data analysis - DA SQL

Data analysis - DA SQL

Анализ данных: SQL, Python.

Нет оценок
582
29.10.2026
582
29.10.2026
Нет оценок
582
29.10.2026
Безопасный переход через бот
О канале

Анализ данных: SQL, Python.

Подписчиков 1,700
Тематика Технологии
Язык Русский
Ссылка t.me/business_stats

Также рекомендуем

Kekaton AI | Озвучка и клон голоса
Kekaton AI | Озвучка и клон голоса
Бот

AI бот для озвучки текста и клонирования голоса в Telegram. Создавай аудио с помощью нейросети быстро и просто.

Описание

Про анализ данных: базы данных, SQL, Python и другое для аналитиков.

Последние посты

Data analysis - DA SQL
Data analysis - DA SQL
🔒Открыть пост
и посмотреть медиа
Как спрогнозировать сезонные данные на Python Представим, что у нас есть временной ряд (например, продажи). И нужно понять, какая часть колебаний - это регулярный сезонный паттерн, а какая - тренд и "чистое" изменение показателя без сезонного шума. ❗️Так как тема достаточно объемная, код будет написан не весь, а только самые важные моменты. Считаю важным рассказать именно про логику и последовательность. 🟠Итак, для этих целей есть 2 вида моделей: ▶️Аддитивная модель используется тогда, когда амплитуда сезонных колебаний постоянна и не зависит от уровня ряда (например, каждый декабрь +500 продаж сверх тренда, всегда +500, вне зависимости от того, растёт бизнес или нет). ▶️Мультипликативная модель используется тогда, когда амплитуда колебаний растёт вместе с уровнем ряда (например, декабрь даёт +20% к тренду, и если тренд вырос, абсолютная прибавка тоже растёт). 🟠В реальных бизнес-данных мультипликативная модель встречается чаще, потому что рост бизнеса обычно масштабирует и сезонные всплески. Её мы и обсудим. 1️⃣Первым делом импортируем библиотеки и подготавливаем данные: from statsmodels.tsa.seasonal import seasonal_decompose from sklearn.linear_model import LinearRegression import numpy as np import pandas as pd df = df.set_index('date').asfreq('MS') Пропущенные месяцы нужно заполнить. Это критично, потому что без этого модель может сломаться. 2️⃣Затем подготовленные данные прогоним через встроенную функцию seasonal_decompose. В качестве аргументов выбирается имеющийся временной ряд, тип модели 👆и разбивка на 12 периодов (по месяцам): result = seasonal_decompose(y, model='multiplicative', period=12) seasonal = result.seasonal deseasonalized = y / seasonal Это нужно для того, чтобы убрать из данных сезонность. Для этого ряд делится на полученный из seasonal_decompose сезонный коэффициент. В результате получатся "чистые" данные, которые уже можно использовать для построения прогноза. 3️⃣Потом строится линейная регрессия на основе полученных ранее десезонализированных данных: model = LinearRegression() model.fit(X, Y) trend_forecast = model.predict(X_future) По факту это будет уже готовый прогноз на основе нашего ряда, только без фактора сезонности. 4️⃣Для того, чтобы прогноз получился наиболее полным, логичный шаг - вернуть в прогноз временно убранную сезонность: seasonal_by_month = seasonal.groupby(seasonal.index.month).mean() seasonal_forecast = future_dates.month.map(seasonal_by_month).values forecast = trend_forecast * seasonal_forecast Для этого нужно просто спрогнозированный тренд умножить на сезонный коэффициент. В итоге получим готовый прогноз, но без проверки этого прогноза на точность. Но это уже отдельная история.
Data analysis - DA SQL
Динамика подписчиков
+-0.5% за 30 дней
Текущие
1,700
Месяц назад
1,709
Средний рост
+0 / день
Обновлено
11 часов назад

Отзывы о канале Data analysis - DA SQL

Авторизуйтесь, чтобы оставить отзыв

Только зарегистрированные пользователи могут делиться своим мнением.

Пока нет отзывов

Станьте первым, кто поделится своим впечатлением об этом ресурсе!

Похожие ресурсы

Loading
Переход на светлую тему
Главная Каталог Подборки Блог Вход