Построение кластеров с использованием функций PCA в качестве осей X и Y

Я применил PCA к кадру данных, чтобы построить кластеры на основе K-средних. Поскольку у меня есть около 24 функций в моем исходном df, я не хочу каждый раз строить кластеры, основанные только на 3 или 3 функциях. Итак, что я хочу сделать, это построить комбинации этих функций, чтобы получить более общее/репрезентативное графическое представление каждой функции в кластерах.

Я извлек компоненты с помощью pca.components_ и создал следующие df компонентов:

                         PC-1       PC-2
media_bi_mov         0.003094   0.050599
media_bi_post        0.000762   0.028931
total_mov_prod_300   0.000836   0.573675
codsprod_0           0.440476  -0.004404
codsprod_1           0.008005   0.105349
codsprod_2           0.002851   0.042459
codsprod_3           0.001078   0.009355
codsprod_4          -0.011922  -0.022020
idaplic_0            0.392229  -0.002817
idaplic_1            0.003001   0.004822
idaplic_2            0.044730  -0.001148
idaplic_3            0.097695  -0.008628
idaplic_4            0.024273   0.486973
idaplic_5            0.234798  -0.033369
idaplic_6            0.019329   0.015455
idempro_36           0.000401  -0.000438
idempro_38           0.032149   0.292137
idempro_49           0.439413  -0.023269
codmonsw_EUR         0.440543  -0.002770
codmonsw_USD         0.000378   0.000664
resto_codsprod       0.011406   0.011731
resto_idaplic        0.041649   0.005692
días_entre_ops      -0.011129  -0.015144
frecuencia           0.440543  -0.002770
valor_total_eur      0.000836   0.573675

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

Как я могу применить цвет, чтобы различать кластеры в этом фрейме данных??

заранее спасибо

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
2
0
57
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

я не знал, что решение этой проблемы было таким простым: мне просто нужно было запустить kmeans для компонентов df, чтобы получить метки кластера для каждой функции в каждом основном компоненте. Надеюсь, это поможет кому-то с такими же сомнениями, как я.

Другие вопросы по теме