Зарегистрируйтесь для доступа к 15+ бесплатным курсам по программированию с тренажером

Линия тренда Аналитические задачи в бизнесе

Аналитические задачи в бизнесе далеко не всегда ограничиваются выводами на текущих данных. Например, мы можем не только выяснить, сколько пользователей ежедневно заходило на сайт в этом месяце или прошлом месяце. Еще мы можем предсказать, какой будет посещаемость сайта через месяц — это тоже задача аналитика. Прогноз помогает бизнесу понять, будут ли перемены и нужно ли к ним готовиться.

В этом уроке мы изучим, что такое тренд и как он помогает строить прогнозы. Мы рассмотрим, какими бывают линии тренда и каким может быть качество прогноза. В конце урока построим линию тренда с помощью Google Sheets.

Что такое тренд

Представим, что в нашем городе недавно открылась кофейня. Руководство кофейни заметило, что с каждым днем количество проданных чашек кофе только растет. Нам нужно понять, на какой день чашек будет продано столько, что придется докупать зерно:

eyJpZCI6IjA1M2ExZDc1NzVlYzFmZTc4YWY1MmQ4OTQ2NmNmYjFkLnBuZyIsInN0b3JhZ2UiOiJjYWNoZSJ9?signature=61df3c23388d8e2a6895e2e2fefaa5eed5befdd851f7a82fdf2b5eef25a92ce1

Если посмотреть на график количества проданных чашек от времени, то зависимость наглядна. Ее можно описать таким уравнением:

, где — количество проданных чашек, а — номер дня с момента открытия

Мы видим, что на третий день было продано 17 чашек, а на четвертый — 18. По этому уравнению можно построить линию и понять, сколько чашек кофе будет продано в каждый конкретный день, если зависимость сохранится.

Другими словами, используя исторические данные, мы нашли зависимость и на ее основе сделаем прогноз:

eyJpZCI6Ijc5YzA3MjU4NWNlNTI3YTA2ZjcwMjg4YTJkNmVmMjA1LnBuZyIsInN0b3JhZ2UiOiJjYWNoZSJ9?signature=6d89dd759124aad73ee39c71039365129a43314c0f65908048fbbfd90f91a970

Ориентируясь на этот график, мы можем сделать вывод: если кофе будет продаваться с той же скоростью, то на десятый день после открытия будет продано 24 чашки, что в 1,6 раз больше, чем в первый день. Такой прогноз поможет понять не только, когда может закончиться имеющееся зерно, но и сколько зерна необходимо на следующие периоды в принципе.

Уравнение, которое мы нашли для описания зависимости наших данных, и называется трендом. Это уравнение, выражающее зависимость показателя от времени. Другими словами, тренд — это тенденция изменения временного ряда.

Как найти линию тренда

Таких наглядных зависимостей, как мы привели выше, очень мало в реальной практике. Согласитесь, очень маловероятна ситуация, при которой кофейня ежедневно будет продавать на одну чашку кофе больше, чем в предыдущий день.

Однако это не очень большое препятствие к построению тренда. Можно найти такое уравнение, которое будет близким к описанию наших данных с какой-то допустимой погрешностью.

Такое уравнение можно найти разными способами, например, с помощью метода наименьших квадратов. Объяснение этого метода требует определенных знаний математики, поэтому его мы подробнее рассмотрим в других курсах.

Сейчас нам не нужно погружаться в эту тему, потому что в Google Sheets и Excel линию тренда можно построить всего по одной кнопке — способы ее расчета зашиты внутри программы.

Какой бывает тренд

Тренд может быть линейным и нелинейным.

Линейный тренд — это уравнение прямой линии. Однако не любая зависимость данных может быть линейной.

Посмотрим картинку ниже:

eyJpZCI6ImFhZjgwMjNlNTE0NWJlYzdlZGEzZTEwYTIxYWQzOTgwLnBuZyIsInN0b3JhZ2UiOiJjYWNoZSJ9?signature=d847927f13b5c382edcbb84d2d5a00cf8aac6a2e972711a26186e98878969a6d

На первом графике зависимость выстраивается в прямую линию — это линейный тренд. А на втором графике зависимость можно описать кривой линией — это нелинейный тренд.

Во многих программах по умолчанию строится именно линейный тренд, который недостаточно наглядно покажет данные с нелинейной зависимостью. Поэтому важно знать разницу между линейным и нелинейным трендом и отличать их на графике.

Как понять, что линия тренда хорошо описывает данные

Правильный выбор типа тренда еще не гарантирует точного описания данных и точного прогноза. Например, на картинке ниже сложно увидеть, какая линия более точно описывает данные:

eyJpZCI6IjIxNzE4ZjIyZmIyYmY3N2Y5MjYzYmYwNzJiMjBiYTM3LnBuZyIsInN0b3JhZ2UiOiJjYWNoZSJ9?signature=410f80734b35b78b64c4e168c0189349874049b9ff62f09539505021f518a3d1

Есть метрики, которые помогают определить, насколько уравнение ближе к нашим данным. Одна из таких метрик — коэффициент детерминации или .

Метрика показывает, насколько хорошо построенная линия описывает зависимость имеющихся данных:

  • Чем ближе значение к , тем точнее линия описывает данные

  • Если , то линия тренда идеально описывает данные (все точки наблюдений лежат точно на линии тренда)

  • Если , то связь между данными отсутствует

В Google Sheets такой показатель можно рассчитать по кнопке.

Таким образом, можно строить несколько линий тренда и выбирать наилучшую по значению коэффициента детерминации.

Как построить линию тренда в Google Sheets

Шаг 1. Для начала откроем таблицу с данными. Как это сделать можно прочитать в официальной справке.

Шаг 2. Проверяем, что наши данные отобразились корректно. Нажимаем на пункт «Вставка» в верхней панели для того, чтобы вставить элемент поверх таблицы. Далее выбираем пункт «Диаграмма»:

eyJpZCI6IjQzNzlhMDk2MmM0MWEwMThmNzliMDE1Y2I3OGJmNzUwLnBuZyIsInN0b3JhZ2UiOiJjYWNoZSJ9?signature=fc5bfb020e587cae418c9a29f926bae7c520ed67a5592582062ff1b23ae9d6ea

Шаг 3. Видим, что на правой панели появился редактор диаграмм. В «Тип диаграммы» находим раздел «Точечные» и выбираем «Точечная диаграмма»:

eyJpZCI6ImQ1ZDU0OWUxMzg0MmVmMmZlZjNiNjkyZGU3NTc0Nzk0LnBuZyIsInN0b3JhZ2UiOiJjYWNoZSJ9?signature=24d16a32a25f968cda02b9e001380355427a622826eabff1e7605485970bed17

Шаг 4. Нажимаем на значок диапазона данных и выделяем всю таблицу, включая заголовки столбцов. Нажимаем «Ок»:

eyJpZCI6IjIxMDA4ZTI2NmNiNmY3OGUxMjc5MWY4MDY0MTNmOTUwLnBuZyIsInN0b3JhZ2UiOiJjYWNoZSJ9?signature=29b5dfdf2f87e9b36d233edfedd6e8d776a3911b283723b369197525d350f412

Шаг 5. Нажимаем чекбоксы «Заголовки — значения строки 1» и также проверяем, что в Оси X и параметрах указаны верные столбцы:

eyJpZCI6IjA4NmY0N2M5NmFlZjYyMjRhYzc3MjI4NWQ2MTM1ODRhLnBuZyIsInN0b3JhZ2UiOiJjYWNoZSJ9?signature=10b6a611bd1d7b553d95796d40aa8d2812c52c56be8e0e9953cd2fe3f20abbed

Шаг 6. Чтобы построить линию тренда, заходим в раздел «Дополнительные» в редакторе диаграмм. Далее переходим в «Серии» и нажимаем на чекбокс «Линия тренда». Видим, что Google Sheets построил по умолчанию линейный тренд:

eyJpZCI6IjcwZDYwOTIyMjJjMjEwOGZiNTYyMjEzNGQwNzNmNGJkLnBuZyIsInN0b3JhZ2UiOiJjYWNoZSJ9?signature=9dfa1a03392d2f5834ad369eae433efa0e4f888cbd64a93faf3f8e9af678a4f7

Шаг 7. Построенная линия тренда плохо описывает данные — скорее всего, связь нелинейная. Под чекбоксом «Линия тренда» находим «Тип» и меняем его с «Линейный» на «Полиномиальный». Нажимаем на «Показать », чтобы убедиться, что построенный тренд хорошо описывает данные.

eyJpZCI6IjBjYTg5NjE1MzlhZjg1NTBmMmNhMjQ2M2QzYzI3NmVhLnBuZyIsInN0b3JhZ2UiOiJjYWNoZSJ9?signature=0a68206bc271c5644e9d3cd17a6f9c9828367879349a13747cd097760801ec39

На графике видим, что коэффициент детерминации составил 0.77 — это считается неплохим результатом. Но можно попробовать изменить порядок многочлена и добиться более высокого значения. Правда, увеличение порядка многочлена на практике не всегда ведет к более точному прогнозу.

Подробнее о построении тренда в Google Sheets можно почитать в официальной справке.

Выводы

В этом уроке мы познакомились с понятием «тренд» и узнали, как он помогает решать задачи предсказания данных. Теперь вы знаете, какими бывают тренды и каким образом можно оценить качество нашего прогноза.

Вспомним ключевые моменты урока:

  • Тренд показывает тенденцию изменения временного ряда

  • Если данные можно описать прямой линией, то тренд называется линейным, в ином случае — нелинейным. Важно знать типы трендов, потому что во многих программах по умолчанию строится линейный тренд, что подходит не во всех случаях

  • Оценить качество линии тренда можно с помощью специальных метрик. Одна из них — коэффициент детерминации или . В Google Sheets его можно рассчитать автоматически по одной кнопке

  • Чем ближе к 1, тем точнее построенная линия тренда описывает данные


Самостоятельная работа

Представьте, что вы заходите в интернет-магазин. Вы смотрите подборки, читаете описания. Наконец вы находите подходящий товар, добавляете его в корзину, переходите на страницу оплаты и оплачиваете.

Чаще всего переходы между этими действиями длятся доли секунд, поэтому вы можете быстро и удобно совершать покупки. Но вы не единственный пользователь этого сайта. Кроме вас, другие пользователи совершают еще тысячи запросов к тому же сайту в секунду.

Если сайт не рассчитан на такое активное использование, то пользователи сталкиваются с медленной загрузкой или сообщениями об ошибках. Клиенты остаются недовольны, и уходят за покупками к конкурентам.

Сайты, которые могут обрабатывать большое количество запросов в секунду, называются высоконагруженными сайтами или хайлоад-проектами. Чтобы сайт мог выдержать высокую нагрузку, нужно немалое количество вычислительных и человеческих ресурсов. Поэтому компании серьезно относятся к этому вопросу и стараются предсказать, какой будет нагрузка на сайт.

В этом задании мы научимся предсказывать нагрузку. Для примера возьмем АвиаХекслет — вымышленный сервис по продаже авиабилетов.

Представим, что разработчик сайта АвиаХекслет пришел к руководителю с таким запросом — нужно выделить ресурсы на поддержку высокой нагрузки, потому что месяц назад на сайте впервые было около 1000 пользователей одновременно.

Руководитель видит, что сегодня на сайт зашло 202 пользователя на текущий день. Чтобы принять правильное решение, он отдал эту задачу аналитику — то есть нам.

Нам нужно спрогнозировать, действительно ли нужно ожидать высокой нагрузки на сайт. Для этого мы изучим исторические данные сервиса и предскажем, сколько пользователей будет на сайте через неделю.

Нажмите, чтобы увидеть тестовые данные

Чтобы решить эту задачу, мы изучим тестовые данные по ссылке.

Тестовые данные

Здесь мы видим данные о количество пользователей на сайте за последний месяц в сервисе. Можно выделить такие признаки:

  • Дата — порядковый номер дня в месяце

  • Количество пользователей на сайте — максимальное число пользователей на сайте в день

Шаг 1. Как думаете, какой тренд лучше всего описывает эти данные — линейный или нелинейный? Визуализируйте данные с помощью точечной диаграммы и выберите правильный тип тренда.

Нажмите, чтобы увидеть диаграммы

Данные в этой задаче показывают нелинейный тренд — сначала идет резкое снижение аудитории сайта, а дальше — более плавное снижение.

Это видно и на графике:

eyJpZCI6IjliYmY5YmNmOWIwYzkxMjljNDZmYWZjZGI5MWIxMGFhLnBuZyIsInN0b3JhZ2UiOiJjYWNoZSJ9?signature=a037fc5fc62173842fd94737e33b2b5009fa707c902cbc387ed24a5d4737acc5

В этой задаче вид тренда определить довольно просто, но так происходит не всегда. В более сложных случаях можно сначала попробовать линейный тренд и оценить его качество, а уже затем — пробовать нелинейный.

Шаг 2. Постройте линию тренда. Ее качество по коэффициенту детерминации должно быть не менее 0.7.

Нажмите, чтобы увидеть возможный ответ

Линия тренда выглядит так:

eyJpZCI6ImY5NjY3MGJkYTkwNmE0ZmE4YzJiOTVhZDg4NzNmOThhLnBuZyIsInN0b3JhZ2UiOiJjYWNoZSJ9?signature=7d042e83756fac7e1c51060dc7365322995910d2ec5d5af49cb3d7bb67e78e24

Нелинейный тренд описывает данные с качеством 0.85 — это нам подходит. Если бы мы строили линейный тренд, то коэффициент был бы равен 0.5, что считается неудовлетворительным качеством.

Шаг 3. Изучите полученные данные еще раз. Попробуйте предсказать ожидаемую нагрузку через семь дней. Сделайте вывод, нужно ли АвиаХекслету выдерживать высокую нагрузку или пользователей будет не так много.

Нажмите, чтобы увидеть возможный ответ

Посмотрим на линию тренда еще раз:

eyJpZCI6ImY5NjY3MGJkYTkwNmE0ZmE4YzJiOTVhZDg4NzNmOThhLnBuZyIsInN0b3JhZ2UiOiJjYWNoZSJ9?signature=7d042e83756fac7e1c51060dc7365322995910d2ec5d5af49cb3d7bb67e78e24

Чтобы предсказать количество пользователей через семь дней, можно взять уравнение тренда и подставить в него интересующий нас день. В нашем случае это 37 день — то есть через семь дней после последней точки.

Подставим значения в уравнение:

Проведем вычисления:

Таким образом, количество пользователей через неделю будет примерно равно 572.

Получившееся число выше, чем значение последнего дня исторических данных. При этом оно не выше 1000 — то есть высокая нагрузка не ожидается.

Еще нужно учитывать, что количество пользователей зависит не только от времени. Например, отдел маркетинга может запустить новую рекламную кампанию — тогда новые пользователи придут и действительно увеличат нагрузку на сайт. В таком случае, к высокой нагрузке готовиться нужно.


Дополнительные материалы

  1. Как добавить линию тренда на график в Google Sheets
  2. Объем продаж

Аватары экспертов Хекслета

Остались вопросы? Задайте их в разделе «Обсуждение»

Вам ответят команда поддержки Хекслета или другие студенты

Об обучении на Хекслете

Для полного доступа к курсу нужен базовый план

Базовый план откроет полный доступ ко всем курсам, упражнениям и урокам Хекслета, проектам и пожизненный доступ к теории пройденных уроков. Подписку можно отменить в любой момент.

Получить доступ
1000
упражнений
2000+
часов теории
3200
тестов

Открыть доступ

Курсы программирования для новичков и опытных разработчиков. Начните обучение бесплатно

  • 130 курсов, 2000+ часов теории
  • 1000 практических заданий в браузере
  • 360 000 студентов
Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»

Наши выпускники работают в компаниях:

Логотип компании Альфа Банк
Логотип компании Aviasales
Логотип компании Yandex
Логотип компании Tinkoff
Рекомендуемые программы
профессия
от 5 025 ₽ в месяц
новый
Собирайте, анализируйте и интерпретируйте данные, улучшайте бизнес-процессы и продукт компании. Обучитесь работе с библиотеками Python
9 месяцев
с нуля
Старт 1 августа

Используйте Хекслет по-максимуму!

  • Задавайте вопросы по уроку
  • Проверяйте знания в квизах
  • Проходите практику прямо в браузере
  • Отслеживайте свой прогресс

Зарегистрируйтесь или войдите в свой аккаунт

Отправляя форму, вы принимаете «Соглашение об обработке персональных данных» и условия «Оферты», а также соглашаетесь с «Условиями использования»