Всем привет. Такой вопрос, может кто подскажет. Я прогер, аналитикой занимаюсь достаточно редко, а тут появилось потребность. Вообщем у меня есть много пользователей, у пользователей есть много формальных параметров - возраст, страна, пол, население города где пользователь живет и тому подобное. И есть важные для бизнеса метрики навроде кол-ва каких-то действий в среднем на пользователя за месяц. Распределение метрик даже близко не нормальное, в большинстве случаев это что-то типа 0 действий у 30%, 1 действие у 60% и длинный-длинный хвост.
Хочется научится автоматически получать кластиризацию вида "мужчины 18-20 лет из городов миллионников и мужчины 18-25 из городов с населением 250-500К с точки зрения данной метрики видут себя похоже и сильно отлично от мужчин 30-35 лет, которые тоже ведут себя похоже".
Пока я придумал следующее - разбить данные изначально на мелкие группы по формальным параметам. На каждой группе прогнать bootstrap чтобы получить нормальное распределение метрики. И после этого объединять эти группы между собой подобно иерархической кластеризации либо по близости среднего значения метрики либо с помощью метода Уорда (модифицированного слегка)
Может быть кто сталкивался с подобными задачами и что-нибудь поумнее/попрактичнее посоветует?