python聚类算法代码
时间: 2024-12-29 10:26:59 浏览: 4
### Python 聚类算法实现代码示例
#### K-Means 聚类算法
K-Means 是一种广泛使用的聚类算法,适用于发现数据中的球形簇。此算法通过迭代优化质心位置来划分样本。
```python
from sklearn.cluster import KMeans
import numpy as np
X = np.array([[1, 2], [1, 4], [1, 0],
[10, 2], [10, 4], [10, 0]])
kmeans = KMeans(n_clusters=2).fit(X)
print(kmeans.labels_)
print(kmeans.predict([[0, 0], [12, 3]]))
print(kmeans.cluster_centers_)
```
这段代码展示了如何使用 `sklearn` 的 KMeans 类来进行简单的二维数据聚类[^1]。
#### 层次聚类 (Agglomerative Clustering)
层次聚类是一种自底向上的方法,最初将每个样本视为独立的簇,然后逐步合并最接近的簇直至满足停止条件。
```python
from sklearn.cluster import AgglomerativeClustering
clustering = AgglomerativeClustering(n_clusters=2).fit(X)
print(clustering.labels_)
```
这里展示的是利用 `sklearn` 提供的功能执行凝聚型层次聚类的例子[^2]。
#### DBSCAN 密度基聚类
DBSCAN 不需要预先设定簇的数量,并能有效处理噪声点。该算法基于密度可达性原则工作。
```python
from sklearn.cluster import DBSCAN
dbscan = DBSCAN(eps=0.3, min_samples=2).fit(X)
print(dbscan.labels_)
```
上述代码片段说明了怎样应用 DBSCAN 进行聚类分析[^3]。
阅读全文