Автор статьи: Роман Козлов

Введение

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

Цель продуктовой аналитики - получить понимание того, как улучшить продукт и увеличить его ценность для пользователей.

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

Суть методики

Суть методики ABC-XYZ анализа основывается на применении двух разных методов.

ABC-анализ

ABC-анализ – это метод классификации, основанный на принципе Парето, который гласит, что большинство (около 80%) результатов в большинстве ситуаций является результатом небольшого числа причин (около 20%). В контексте управления инвентаризацией, это означает, что небольшое количество товаров часто приносит большую часть дохода.

  1. Класс A: Это наиболее важные товары, которые приносят наибольшую часть дохода. Обычно это составляет около 20% всех товаров. Их управление должно быть строгим и аккуратным, поскольку они имеют огромное влияние на финансовые результаты.

  2. Класс B: Это товары средней важности, которые приносят умеренную часть дохода. Это обычно около 30% всех товаров.

  3. Класс C: Это товары с наименьшей важностью, которые приносят наименьшую часть дохода. Это обычно около 50% всех товаров. Управление этими товарами может быть менее строгим.

Вычисление классов в ABC-анализе обычно происходит следующим образом:

  1. Рассчитывается общий объем продаж или доход для каждого товара.

  2. Товары сортируются по убыванию объема продаж или дохода.

  3. Для каждого товара рассчитывается его доля в общем объеме продаж или дохода, а также накопительная доля от общего объема.

  4. Товары классифицируются в соответствии с их накопительной долей: товары с накопительной долей до 80% относятся к классу A, от 80% до 95% - к классу B, а остальные - к классу C.

XYZ-анализ

XYZ-анализ – это метод классификации, который оценивает стабильность спроса на товар. Это важно для планирования прогнозирования и управления запасами.

  1. Класс X: Это товары с очень стабильным и предсказуемым спросом. Их легко прогнозировать, и они редко вызывают проблемы со складскими запасами.

  2. Класс Y: Это товары со средней стабильностью спроса. Их прогнозирование может быть сложнее, и они могут вызвать периодические проблемы со складскими запасами.

  3. Класс Z: Это товары с очень нестабильным и непредсказуемым спросом. Их очень сложно прогнозировать, и они часто вызывают проблемы со складскими запасами.

Вычисление классов в XYZ-анализе может быть несколько сложнее, так как оно требует анализа временных рядов и вычисления коэффициента вариации (отношение стандартного отклонения к среднему значению) для спроса на каждый товар. В общих чертах процесс можно описать следующим образом:

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

  2. Рассчитывается среднее значение и стандартное отклонение спроса на каждый товар.

  3. Рассчитывается коэффициент вариации для каждого товара.

  4. Товары классифицируются в соответствии с их коэффициентом вариации: товары с низким коэффициентом вариации относятся к классу X, с умеренным - к классу Y, а с высоким - к классу Z.

Объединение ABC-XYZ анализа позволяет сформировать более комплексное

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

Использование Power BI для ABC-XYZ анализа

BI-системы как Power BI могут играть важную роль в применении продуктовой аналитики и ABC-XYZ анализа. Они обеспечивают инструменты и платформу для сбора, анализа и использования данных.

Power BI использует язык формул DAX (Data Analysis Expressions) для проведения сложных вычислений и манипуляций с данными. Когда дело доходит до ABC-XYZ анализа, DAX может использоваться для расчета общего объема продаж для каждого продукта, среднего объема продаж, стандартного отклонения продаж и других метрик, которые используются для классификации продуктов.

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

 

Далее создадим столбец с нарастающей суммой по продажам с помощью DAX-выражения.

CumulativeSales = 
    CALCULATE(
        SUM('Products'[Product Sales]), 
        FILTER(
        ALLSELECTED('Products'),
        'Products'[Product Sales] >= EARLIER('Products'[Product Sales])
      )
  )

Функция SUM('Products'[Product Sales]) в этом выражении вычислит общую сумму продаж для каждого продукта, а функция FILTER(ALLSELECTED('Products'), 'Products'[Product Sales] >= EARLIER('Products'[Product Sales]))создаст фильтр, который ограничит набор данных до тех продуктов, чьи продажи больше или равны продажам текущего продукта. Функция EARLIERиспользуется для ссылки на значение продаж текущего продукта в контексте каждой строки, а функция CALCULATE изменяет контекст вычисления суммы продаж, чтобы она применялась только к продуктам, которые проходят через фильтр. Таким образом получим:

Далее вычислим общую сумму продаж всех товаров.

TotalSales = CALCULATE(SUM('Products'[Product Sales]), ALLSELECTED('Products'))

В контексте этого кода ALLSELECTED ('Products') используется для удаления фильтров, примененных к таблице "Products", и сохранения только контекста выбранных значений в рамках этой таблицы. Это позволяет вычислить общую сумму продаж для каждого продукта, не учитывая другие фильтры, которые могут быть применены к модели данных.

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

Теперь мы можем классифицировать товары в соответствии с их накопительной долей: до 80% относятся к классу A, от 80% до 95% - к классу B, а остальные - к классу C.

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

ABC Classification = 
VAR CumulativeSales =
    CALCULATE(
        SUM('Products'[Product Sales]), 
        FILTER(
            ALLSELECTED('Products'),
            'Products'[Product Sales] >= EARLIER('Products'[Product Sales])
        )
    )
VAR TotalSales = CALCULATE(SUM('Products'[Product Sales]), ALLSELECTED('Products')) 
RETURN
    IF(
        CumulativeSales / TotalSales <= 0.8, 
        "A",
        IF(
            CumulativeSales / TotalSales <= 0.95, 
            "B",
            "C"
      )
)

При выполнении добавится новая колонка в таблицу Products для классификации продуктов по группам A, B и C

Для выполнения XYZ-анализа используется коэффициент вариации (CV), который вычисляется как стандартное отклонение продаж деленное на среднее значение продаж.

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

Предположим, что у вас есть таблица Sales, которая содержит дату продажи (OrderDate) и объем продаж (Order Quantity). В этом случае, для каждого продукта можно вычислить коэффициент вариации следующим образом.

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

ProductSalesByDate = SUMMARIZE('Sales', 'Sales'[OrderDate], 
'Products'[Product Name], "DailySales", SUM('Sales'[Order Quantity]))

Столбцы [OrderDate] и [Product Name]будут использоваться для группировки, а данные в новой таблице будут агрегироваться в столбце с названием DailySales по показателю [Order Quantity].

Мы получим новую таблица в “длинном” формате, которая будет выглядеть так.

Создадим ещё одну таблицу для вычисления среднего значения и стандартного отклонения для продаж каждого продукта.

ProductSalesStatistics = 
SUMMARIZE(
    ProductSalesByDate, 
    'ProductSalesByDate'[Product Name],
    "AverageSales", AVERAGEX(RELATEDTABLE('ProductSalesByDate'), 'ProductSalesByDate'[DailySales]), 
    "StandardDeviation", STDEVX.P(RELATEDTABLE('ProductSalesByDate'), 'ProductSalesByDate'[DailySales])
)

 Для вычисления среднего значения используется функция AVERAGEX , а для вычисления стандартного отклонения используется функция STDEVX.P соотвественно.

Взяв отношение стандартного отклонения к среднему

CV = 'ProductSalesStatistics'[StandardDeviation] / 'ProductSalesStatistics'[AverageSales]

мы получим коэффициент вариации спроса для каждого продукта, который позволит нам произвести сегментацию на основании правила: товары с низким коэффициентом вариации (не более 0,1) относятся к классу X, с умеренным( от 0,1 до 0,25) - к классу Y, а с высоким (выше 0,25) - к классу Z.

В виде DAX-выражения, наши вычисления приобретут следующий вид.

XYZ Classification = 
IF(
    'ProductSalesStatistics'[CV] <= 0.1, 
    "X",
    IF(
        'ProductSalesStatistics'[CV] <= 0.25, 
        "Y",
        "Z"
      )
)

 Мы получим выполненную XYZ сегментацию товаров, которая показывает ненадежность спроса на все виды товара.

Объединив результаты ABC и XYZ анализа в виде кольцевого графика, посчитанного по общему объему продаж, мы видим, какие товары проносят наибольший вклад в общую выручку.

 

Заключение

Комбинированный ABC-XYZ анализ позволяет одновременно учитывать и значимость продуктов, и уровень прогнозируемости их продаж. Это помогает в решении многих вопросов продуктовой аналитики и управления ассортиментом, таких как:

  • Определение стратегии управления запасами: Например, для товаров класса AX (высокая значимость, стабильный спрос) компания может хранить больше запасов, чтобы удовлетворить постоянный спрос. В то время как для товаров класса CZ (низкая значимость, нестабильный спрос) компания может хранить меньше запасов или заказывать их только по мере необходимости.

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

  • Понимание и управление рисками: Продукты с непредсказуемым спросом (класс Z) могут представлять больший риск для бизнеса, особенно если они также являются высокодоходными (класс A). Управление этими продуктами может требовать дополнительной осторожности и стратегического планирования.

  • Определение стратегии развития ассортимента: Анализ может помочь определить, какие продукты следует добавить в ассортимент (например, продукты с высокой значимостью и стабильным спросом) и какие продукты могут быть менее важны для бизнеса (например, продукты с низкой значимостью и непредсказуемым спросом).

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

Комментарии (0)