聚类算法python实现
时间: 2023-07-06 11:35:02 浏览: 64
常见的聚类算法有 K-Means、层次聚类、DBSCAN 等。以下是 Python 实现这些算法的示例代码:
1. K-Means 聚类算法
```python
from sklearn.cluster import KMeans
import numpy as np
# 构造数据集
X = np.array([[1, 2], [1, 4], [1, 0],
[4, 2], [4, 4], [4, 0]])
# 定义 KMeans 模型,设定聚类簇数为 2
kmeans = KMeans(n_clusters=2, random_state=0)
# 训练模型
kmeans.fit(X)
# 输出各数据点所属的簇
print(kmeans.labels_)
```
2. 层次聚类算法
```python
from scipy.cluster.hierarchy import dendrogram, linkage
import matplotlib.pyplot as plt
# 构造数据集
X = np.array([[1, 2], [1, 4], [1, 0],
[4, 2], [4, 4], [4, 0]])
# 对数据进行层次聚类
Z = linkage(X, 'ward')
# 绘制树状图
fig = plt.figure(figsize=(5, 3))
dn = dendrogram(Z)
plt.show()
```
3. DBSCAN 聚类算法
```python
from sklearn.cluster import DBSCAN
import numpy as np
# 构造数据集
X = np.array([[1, 2], [1, 4], [1, 0],
[4, 2], [4, 4], [4, 0]])
# 定义 DBSCAN 模型,设定参数
dbscan = DBSCAN(eps=1, min_samples=2)
# 训练模型
dbscan.fit(X)
# 输出各数据点所属的簇
print(dbscan.labels_)
```
以上是三种常见的聚类算法在 Python 中的实现示例。
相关推荐
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)