Элементарный метод решения этой проблемы заключается в нахождении описательной статистики для особенностей центроидов кластера.
Фрагмент, чтобы найти наиболее влиятельные переменные:
var_influence=cc.describe() #cc contains the cluster centroids
# The descriptive statistics of the cluster centroids are saved in a Dataframe var_influence. Sorting by standard deviation will give the variables with high standard deviation.
var_influence.sort_values(axis=1, by='std', ascending=False).iloc[:,:10]
Таким образом, быстрее и лучше находить влияющие переменные по сравнению с блочной графикой (что трудно визуализировать при увеличении возможностей). Поскольку все переменные нормализованы, их очень легко сравнивать по функциям.
Можно также использовать подход max-min, это позволит нам видеть переменные с максимальной пропускной способностью. Поскольку все переменные нормализованы, max-min - хороший способ проверить приведенный выше результат. Код для того же самого ниже
pd.Series(var_influence.loc['max']-var_influence.loc['min']).sort_values(ascending=False)[:10]
Мультиклассовая классификация
Более серьезным подходом к поиску влияющих признаков является Многоклассовая классификация : метки кластера используются в качестве целевой переменной для обучения модели мультиклассовой классификации на данных. Полученные коэффициенты модели могут быть использованы для определения важности признаков.