kmeans计算轮廓系数 可视化分类结果python
时间: 2023-08-26 08:04:56 浏览: 97
以下是使用Python进行kmeans聚类的示例代码,包括计算轮廓系数和可视化分类结果:
```python
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
from sklearn.metrics import silhouette_samples, silhouette_score
# 生成随机数据
X = np.random.rand(100, 2)
# 设置聚类的数量
k = 2
# 进行聚类
kmeans = KMeans(n_clusters=k)
y_pred = kmeans.fit_predict(X)
# 计算轮廓系数
silhouette_avg = silhouette_score(X, y_pred)
silhouette_values = silhouette_samples(X, y_pred)
# 打印轮廓系数
print("The average silhouette_score is :", silhouette_avg)
# 可视化聚类结果
colors = ['r', 'g', 'b', 'c', 'm', 'y', 'k']
for i in range(k):
plt.scatter(X[y_pred == i, 0], X[y_pred == i, 1], c=colors[i], label='Cluster {}'.format(i))
plt.legend()
plt.show()
```
运行上述代码,将生成100个随机数据点并进行kmeans聚类,其中k=2。计算轮廓系数并打印结果,然后可视化聚类结果。你可以根据需要调整数据集和聚类数量以进行不同的实验。
阅读全文