Что такое self в Python: примеры из реального мира
Что такое self в Python: примеры из реального мира
Прогнозирование является важным аспектом анализа данных, поскольку оно позволяет предприятиям принимать обоснованные решения о будущем на основе исторических данных. Одним из эффективных способов выполнения этой задачи является использование модели прогнозирования LuckyTemplates с использованием Python. LuckyTemplates — это популярный инструмент бизнес-аналитики, который позволяет пользователям создавать интерактивные визуализации данных, отчеты и информационные панели.
В этом руководстве мы узнаем, как создать модель прогноза в LuckyTemplates с помощью Python. Мы будем использовать Python в Power Query для создания прогнозируемых значений и переноса их в визуализации LuckyTemplates. Вы можете посмотреть полное видео этого урока внизу этого блога .
Оглавление
Примеры моделей прогнозирования LuckyTemplates
Ниже приведены некоторые модели прогнозирования LuckyTemplates, чтобы показать вам, чего мы хотим достичь в этом руководстве. Это фактические просмотры страниц, показывающие еженедельную сезонность и некоторые сезонные пики в данных.
Ближе к концу мы можем увидеть растущую тенденцию в наших данных, которую мы хотим уловить в нашей модели.
Модель прогнозирования LuckyTemplates: элементы управления и ограничения
Ниже представлена модель 30-дневного прогноза, созданная с помощью LuckyTemplates. Он имеет ту же сезонность, что и фактические просмотры страниц, и в LuckyTemplates у нас также есть возможность контролировать некоторые данные.
Мы можем сделать это, открыв Аналитику на панели Визуализации . Затем наведите указатель мыши на Прогноз > Параметры .
Поместите 30 дней в длину прогноза и установите доверительный интервал на 95%. Система может прогнозировать сезонность с настройкой по умолчанию, но мы также можем добавить 7 , чтобы представить недельную сезонность.
Нажмите «Применить» , и у нас должна получиться модель, похожая на приведенную выше.
Анализ тенденций для моделей прогнозирования Python и LuckyTemplates
LuckyTemplates отлично справляется с моделированием сезонности. Однако его линия тренда не работает так же.
Чтобы начать анализ тренда , включите линию тренда на панели визуализаций .
Однажды мы можем увидеть восходящий тренд. Мы должны иметь возможность добавить эту тенденцию в наши данные, которые затем повлияют на прогноз.
Мы можем сделать это с помощью нашей модели Python . Как мы видим в приведенной ниже модели, тренд приобрел сезонный характер, а не остался неизменным.
Использование кода Python для прогнозирования
Использование Python для достижения нашей цели не является сложной задачей. Для начала откройте Jupyter Notebook .
Введите данные, которые нам нужны: pandas, matplotlib.pyplot, seaborn и ExponentialSmoothing .
Есть и другие модели, которые, вероятно, будут более точными, но они потребуют большей оптимизации.
Мы также добавим Season_decompose , чтобы увидеть сезонность и тенденцию. Затем используйте веб-прогноз web_forecast.xlsx для чтения наших данных.
Затем переключите дату, используя приведенный ниже код.
Установите индекс нашего набора данных на Date и назовите его ts. Затем установите частоту набора данных. Мы знаем, что у нас есть ежедневные данные, поэтому давайте установим частоту как d как в день и сохраним ее как ts .
Наконец, постройте график с помощью ts.plot().
После построения графика мы должны увидеть именно то, что видели в блокноте LuckyTemplates.
Чтобы получить лучшее представление о компонентах нашего фактического тренда, мы можем использовать следующий код.
Первая модель — это наши Actuals . Рядом с ним находится линия тренда, которую мы получаем с помощью Season_decompose(ts).plot(); .
Это тренд, который нам нужно добавить в модель.
У нас также есть сезонность , которую мы можем добавить как в LuckyTemplates, так и в модель экспоненциального сглаживания.
Наша последняя модель показывает остатки или те, которые неожиданны в данных, представленных точками. Обратите внимание, что по мере того, как мы приближаемся к концу наших данных, мы видим, что происходит гораздо больше событий.
Обучение модели
С нашей моделью нам нужно обучить наши данные, за которыми обычно следует тестирование. Однако в этом случае мы не будем тестировать нашу модель, потому что будем использовать только то, что дает нам модель.
В нашем наборе данных 298 дней, но в этом примере нам нужно, чтобы модель помнила только 290 из этих дней. Это потому, что мы не хотим давать модели все данные, которые она не может изучить и в конечном итоге просто скопирует.
По сути, у нас есть этот тренировочный набор из 290 дней из 298.
Затем используйте ExponentialSmoothing для нашей модели. Затем передайте обучающий набор данных, который составляет 290 дней, и используйте add (аддитивное) для нашего тренда, mul (множительное) для нашего сезона и 7 для сезонных периодов. Затем вставьте эти данные в модель.
Аддитивные и мультипликативные тренды
Давайте кратко рассмотрим, что такое аддитивный и мультипликативный тренды.
В аддитивной модели тенденция медленно увеличивается, тогда как в мультипликативной модели она увеличивается экспоненциально, и при этом происходит довольно много. Мы можем использовать любой из двух, чтобы получить прогноз другого типа.
Мы можем поиграть с аддитивными и мультипликативными методами, чтобы изменить наш прогноз. Наши текущие данные явно растут, поэтому необходимо использовать аддитивную функцию, но мы также можем попробовать использовать мультипликативную функцию, чтобы увидеть, что мы получим.
Например, измените сезонность с mul на add .
Запустите данные и посмотрите, как изменится прогноз.
Точно так же мы можем изменить тренд с add на mul .
Это должно дать мультипликативную тенденцию, которая немного больше.
После перебора возможных комбинаций было обнаружено, что использование mul как для тренда, так и для сезонности дает НАИЛУЧШИЙ результат.
Получив эту модель прогноза, мы можем использовать ее для прогнозирования на 30 дней вперед.
Внедрение LuckyTemplates
Давайте создадим ту же модель прогнозирования LuckyTemplates в нашей записной книжке LuckyTemplates.
В нашем прогнозе LuckyTemplates выберите Визуализации > Аналитика > Параметры. Обратите внимание, как мы устанавливаем длину прогноза на 30 дней.
Давайте посмотрим, как мы можем легко реализовать этот код в Power Query.
Щелкните Преобразовать данные.
В редакторе Power Query введите данные и добавьте пользовательский столбец для категории . Используйте фактические данные , чтобы мы могли позже отделить фактические данные от прогнозов.
Если мы перейдем к запросу прогнозов , мы увидим меньший набор данных, эквивалентный 30 дням в будущем.
Обзор скрипта Python
Наш скрипт Python содержит аналогичную информацию. Сначала мы вводим набор данных, сохраняем его как df , меняем Date на datetime и устанавливаем частоту на d (день).
Мы также используем нашу модель ExponentialSmoothing от holtwinters . Мы берем первые 290 дней в качестве обучающей выборки, а затем добавляем эти данные в модель.
В нашей модели ExponentialSmoothing мы добавляем обучающие данные и устанавливаем как тренды, так и сезонные значения как mul (мультипликативные), а сезонные периоды — как 7 дней. Затем подгоняем нашу модель.
Далее мы получаем новый фрейм данных или таблицу с нашим прогнозом. Мы сбрасываем индекс и убеждаемся, что они называются Дата и Просмотры страниц , чтобы соответствовать тому, что у нас есть в наших исходных данных. Наконец, мы нажимаем ОК.
На выходе нам даются все эти переменные в данных.
Перейдите к Applied Steps и щелкните Added Column . Откроется таблица с нашими прогнозируемыми значениями и пользовательским столбцом, в категории которого указан прогноз .
В следующем запросе мы просто добавляем два набора данных, где у нас есть Actuals и Forecasts .
Нажмите Закрыть и применить.
Модель немного изменилась, когда мы применили мультипликативный метод.
По сравнению с LuckyTemplates мы можем легко сделать прогноз и немного оптимизировать модель, изменив аддитивный характер тренда и сезонность в Python . Мы также можем добавить эти прогнозы к нашему фактическому набору данных.
Создание перспективных прогнозов в LuckyTemplates с использованием DAX
Как выполнять анализ тенденций в LuckyTemplates с использованием DAX
Управление сезонностью в бюджетной аналитике — Advanced LuckyTemplates
Заключение
В этом блоге мы рассмотрели процесс создания модели прогноза в LuckyTemplates с использованием Python . Интегрировав Python в LuckyTemplates, мы можем получить доступ к широкому спектру инструментов анализа данных и моделирования, что позволяет нам создавать более сложные прогнозы.
Благодаря навыкам, которые вы приобрели в этом руководстве, вы теперь можете создавать собственные модели прогнозов в LuckyTemplates и использовать их для уверенного планирования на будущее. Помните, что прогнозирование — это повторяющийся процесс, поэтому не стесняйтесь экспериментировать с различными алгоритмами и методами, чтобы найти тот, который лучше всего подходит для ваших данных, и постоянно проверяйте и обновляйте свою модель по мере поступления новых данных.
Всего наилучшего,
Гаэлим Холланд
Что такое self в Python: примеры из реального мира
Вы узнаете, как сохранять и загружать объекты из файла .rds в R. В этом блоге также рассказывается, как импортировать объекты из R в LuckyTemplates.
В этом руководстве по языку программирования DAX вы узнаете, как использовать функцию GENERATE и как динамически изменять название меры.
В этом учебном пособии рассказывается, как использовать технику многопоточных динамических визуализаций для создания аналитических сведений из динамических визуализаций данных в ваших отчетах.
В этой статье я пройдусь по контексту фильтра. Контекст фильтра — одна из основных тем, с которой должен ознакомиться любой пользователь LuckyTemplates.
Я хочу показать, как онлайн-служба LuckyTemplates Apps может помочь в управлении различными отчетами и аналитическими данными, созданными из различных источников.
Узнайте, как рассчитать изменения вашей прибыли, используя такие методы, как разветвление показателей и объединение формул DAX в LuckyTemplates.
В этом руководстве будут обсуждаться идеи материализации кэшей данных и то, как они влияют на производительность DAX при предоставлении результатов.
Если вы все еще используете Excel до сих пор, то сейчас самое подходящее время, чтобы начать использовать LuckyTemplates для своих бизнес-отчетов.
Что такое шлюз LuckyTemplates? Все, что тебе нужно знать