Ув. товарищи, могли бы просветить, пожалуйста:
1) как в реальных кейсах решают задачу кластеризации пользователей? Точнее, как определяют количество кластеров, которое необходимо передать как параметр алгоритма? Просто перебирают?
2) Если есть кусок кода, который что-то делает (скажем, проводит преобразования и далее - стат. тест), и далее этот блок не переиспользуется, то какая практика считается лучше:
а) написать функцию,
б) оставить просто блок кода?
В "реальных кейсах" кластеризацию юзеров вообще очень редко делают.
Её результаты довольно плохо предсказуемы, для продакшна это недопустимо.
В тех кейсах, с которыми я сталкивался, юзеров пытаются сегментировать в ходе разведочного анализа, а потом, если какие-то полезные группы выделились, делают для этих групп внятные метки, и переходят от кластеризации к классификации с осмысленными классами.
А вам зачем понадобилось кластеризацию делать? Число кластеров надо выбирать, ориентируясь на конечную цель)