#r #output #cluster-computing
Вопрос:
Я завершаю кластерный анализ набора данных, срезаю и разбиваю его на различные части, используя различные методы, и все это с целью максимизировать результат использования kmeans для сегментации большого набора данных. Таким образом, в качестве результатов есть 15 отдельных объектов kmean, которые было бы очень полезно преобразовать в таблицу для одновременного просмотра, включая заголовок для ссылки на модель и ключевые статистические данные о каждой модели. Есть какие-нибудь советы? Любой пример результатов, когда вы просто печатаете результаты в разделе вывода R Studio, приведен ниже. Я искал пакеты и т. Д., Но мне не повезло. Спасибо за любую помощь, которую вы можете оказать!!!
K-means clustering with 5 clusters of sizes 11356, 4621, 3380, 7455, 4381
Cluster means:
PRCT_DIFF_LOCK_ON PRCT_FRONT_PTO_ON PRCT_REAR_PTO_ON PRCT_MFWD_ON
1 0.045629787 0.0006149385 0.05848930 0.80521712
2 0.006848544 0.0036244639 0.15807745 0.06906081
3 0.390860459 0.0004615964 0.07576421 0.79353567
4 0.040412934 0.0048262841 0.11052730 0.48966547
5 0.053424999 0.0149324570 0.45581038 0.64261907
Within cluster sum of squares by cluster:
[1] 665.8571 568.6334 264.2810 554.8512 457.3876
(between_SS / total_SS = 55.5 %)
Ответ №1:
Результатом kmeans
является a list
. Если мы хотим извлечь Cluster means
, используйте
k2$centers
Murder Assault UrbanPop Rape
1 1.004934 1.0138274 0.1975853 0.8469650
2 -0.669956 -0.6758849 -0.1317235 -0.5646433
broom
пакет может суммировать выходные данные в формате data.frame/tibble
library(broom)
> tidy(k2)
# A tibble: 2 x 7
Murder Assault UrbanPop Rape size withinss cluster
<dbl> <dbl> <dbl> <dbl> <int> <dbl> <fct>
1 1.00 1.01 0.198 0.847 20 46.7 1
2 -0.670 -0.676 -0.132 -0.565 30 56.1 2
> glance(k2)
# A tibble: 1 x 4
totss tot.withinss betweenss iter
<dbl> <dbl> <dbl> <int>
1 196 103. 93.1 1
-воспроизводимый пример
library(cluster)
df <- USArrests
df <- na.omit(df)
df <- scale(df)
k2 <- kmeans(df, centers = 2, nstart = 25)
Комментарии:
1. Спасибо! У меня есть несколько разных имен списков, привязанных к нескольким различным наборам данных, которые создали вывод kmeans. Таким образом, в вашем примере будут k2, p6, df1 и т.д. Вместе с отдельными наборами данных, которые являются подмножествами одного и того же основного фрейма данных. Можно ли завершить краткое изложение всего этого?
2. Вы можете использовать
bind_rows(tidy(k2), glance(k2))
, зависит от того, как вы хотели и какая вся информация должна быть включена