用Kmeans算法编写一段代码将相似度以图的方式显示
时间: 2024-05-04 10:17:49 浏览: 72
好的,下面是使用Kmeans算法将相似度以图的方式显示的Python代码:
```python
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
# 生成随机数据
X = np.random.rand(100, 2)
# 计算相似度
similarity = np.zeros((100, 100))
for i in range(100):
for j in range(i+1, 100):
dist = np.linalg.norm(X[i]-X[j])
similarity[i, j] = dist
similarity[j, i] = dist
# 使用Kmeans算法进行聚类
kmeans = KMeans(n_clusters=5, random_state=0).fit(similarity)
# 将聚类结果以图的方式显示
plt.figure(figsize=(8, 6))
plt.scatter(X[:,0], X[:,1], c=kmeans.labels_, cmap='rainbow')
plt.title('Similarity Clustering with Kmeans')
plt.show()
```
这段代码首先生成了100个二维随机数据,然后计算了它们之间的相似度。接着,使用Kmeans算法对相似度进行聚类,将聚类结果以图的方式显示。在这个例子中,我们将相似度聚成了5类。
阅读全文