Python 如何计算整个簇的轮廓分数

Python 如何计算整个簇的轮廓分数,python,cluster-analysis,silhouette,Python,Cluster Analysis,Silhouette,我们可以很容易地提取每个样本的轮廓分数。如果我们的数据看起来像这样:我希望能够计算整个集群解决方案的轮廓分数 import pandas as pd import numpy as np X = np.array([0.85142858,0.85566274,0.85364912,0.81536489,0.84929932,0.85042336,0.84899714, 0.82019115, 0.86112067,0.8312496 ]) X=X.reshape(-1, 1

我们可以很容易地提取每个样本的轮廓分数。如果我们的数据看起来像这样:我希望能够计算整个集群解决方案的轮廓分数

import pandas as pd
import numpy as np


X = np.array([0.85142858,0.85566274,0.85364912,0.81536489,0.84929932,0.85042336,0.84899714,
         0.82019115, 0.86112067,0.8312496 ])
X=X.reshape(-1, 1)

num_clusters = 3
kmeans_model = KMedoids(n_clusters=num_clusters, random_state=1).fit(X)
cluster_labels = kmeans_model.labels_

你看过SKI的文档了吗?我认为它完美地回答了你的问题:。@sandertjuh谢谢,计算整个集群的SI如何?只需计算每个集群中每个样本的平均轮廓分数。请参阅:@sandertjuh单独计算每个群集的轮廓分数,而不是整个群集解决方案?可以为数据集中的每个样本、数据集中的每个群集以及整个数据集计算轮廓分数。最后两个都是第一个的平均值。如果您想要整个(集群)数据集的一个轮廓分数,只需调用
轮廓分数
。见文件: