聚类模型 系统聚类+肘部法则
时间: 2023-12-11 16:05:03 浏览: 84
Kmeans聚类算法-手肘法
5星 · 资源好评率100%
系统聚类是一种无监督学习方法,它将数据集中的对象分成若干个类别,使得同一类别中的对象相似度较高,不同类别中的对象相似度较低。肘部法则是一种确定聚类数量的方法,它通过绘制SSE和聚类数量k之间的关系图来确定最佳聚类数量。下面是系统聚类+肘部法则的步骤:
1.导入所需的库和数据集。
```python
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from scipy.cluster.hierarchy import dendrogram, linkage
data = pd.read_csv('data.csv')
```
2.对数据进行层次聚类。
```python
Z = linkage(data, 'ward')
```
3.绘制树状图以可视化聚类结果。
```python
plt.figure(figsize=(10, 5))
dendrogram(Z)
plt.show()
```
4.根据树状图确定最佳聚类数量。
```python
last = Z[-10:, 2]
last_rev = last[::-1]
idxs = np.arange(1, len(last) + 1)
plt.plot(idxs, last_rev)
plt.xlabel('Number of clusters')
plt.ylabel('Distance')
plt.show()
```
在上述代码中,我们首先使用Ward方法对数据进行层次聚类,然后绘制树状图以可视化聚类结果。最后,我们根据树状图确定最佳聚类数量。在这个例子中,我们可以看到SSE和聚类数量k之间的关系图呈现出一个明显的肘部,这个肘部对应的k值就是最佳聚类数量。
阅读全文