#r #cluster-analysis #pca #ggbiplot
#r #кластерный анализ #pca #ggbiplot
Вопрос:
Я запускаю кластеризацию kmeans для идентификации помеченных данных. Я запустил pca, а затем kmeans и получил следующий график, используя ggbiplot:
Теперь, как я могу определить, какая точка принадлежит к какой группе в табличном формате. То есть в моих исходных данных я хотел бы пометить каждую точку своей группой.
Комментарии:
1. Пожалуйста, включите воспроизводимые (выборочные) данные и код для создания графика.
2. Для меня это не похоже на хорошие кластеры… Вы пытаетесь показать, что это не работает с этими данными? Почему вы используете 35 кластеров, когда проекция показывает, что есть только 1?
Ответ №1:
Предположим, что имя вашего фрейма данных равно df и вам нужно k кластеров. После запуска функции k означает…
# K-Means CA
fit <- kmeans(df, k) # where k is the number of clusters
… вы должны включить группы, которые были получены из fit, в ваш фрейм данных
# add clusters to the dataframe
df$clusters <- fit$cluster
df
a b clusters
1 -0.96193342 -0.7447816 1
2 -0.29252572 -1.1312186 1
3 0.25878822 -0.7163585 1
4 -1.15213189 0.2526524 1
5 0.19578283 0.1520457 1
6 0.03012394 -0.3076564 1
7 0.08541773 -0.9530173 1
8 1.11661021 -0.6482428 2
9 -1.21885742 1.2243136 1
10 1.26736872 0.1998116 2
Данные, используемые в примере
set.seed(3)
n <- 10
k <- 2
df <- data.frame(a= rnorm(n), b= rnorm(n))
Вы также можете посмотреть здесь.