Короткий ответ
Единственного правильного решения нет: можно сообщать бизнесу только сегментированные показатели вместо агрегированного, скорректировать веса сегментов (стандартизацию) или явно показать оба уровня с объяснением причины расхождения — выбор зависит от того, что именно нужно бизнесу для принятия решения.
Как это работает подробнее
парадокс Симпсона возникает, когда соотношение размеров сегментов (весов) меняется между сравниваемыми периодами или группами и само по себе влияет на общий агрегат сильнее, чем изменение показателя внутри каждого сегмента; это легко увидеть в pandas, посчитав метрику через groupby(['period','segment']) и сравнив с метрикой без разбивки на сегмент.
Пример кода
Пример на Python
import pandas as pd
df = pd.DataFrame({
'period': ['before','before','after','after'],
'segment': ['mobile','desktop','mobile','desktop'],
'users': [100, 900, 900, 100],
'converted': [5, 90, 54, 9]
})
df['rate'] = df['converted'] / df['users']
overall = df.groupby('period').apply(lambda g: g['converted'].sum() / g['users'].sum())
print(df[['period','segment','rate']])
print(overall)Что использовать на практике
- На практике. объяснение для бизнеса должно явно показать таблицу "до/после" с разбивкой по сегментам и их весами, а не только итоговую цифру; дальнейшее решение может быть в пользу взвешенного сравнения с фиксированными весами сегментов (стандартизация), если нужно сравнивать именно "эффективность", а не смесь эффекта и изменения структуры.
- Проверка. в этом синтетическом примере конверсия внутри каждого сегмента (mobile и desktop) может расти от periода "before" к "after", тогда как общий overall-показатель падает из-за резкой смены веса сегментов — именно это расхождение и нужно явно показать стейкхолдерам, а не только итоговую строку overall.
Подводные камни
- Частые ошибки. игнорируют парадокс и продолжают репортить только агрегированную метрику, вводя стейкхолдеров в заблуждение относительно направления тренда; или наоборот — отказываются от агрегированной метрики совсем, хотя для некоторых решений (например, общая выручка компании) агрегат является именно тем, что нужно знать, а разбивка по сегментам — лишь объяснением причины.