用python写DBSCAN聚类及可视化
时间: 2023-08-22 15:05:20 浏览: 107
DBSCAN.zip_DBSCAN_dbscanpython_dbscan聚类_python DBSCAN_python的DBS
好的,以下是用 Python 编写 DBSCAN 聚类及可视化的步骤:
1. 导入必要的库:
```python
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
from sklearn.cluster import DBSCAN
```
2. 准备数据集并进行预处理:
```python
# 生成随机数据,共 200 个样本,每个样本有 2 个特征
X = -2 * np.random.rand(200, 2)
# 将前 100 个样本的第一个特征加上 2,后 100 个样本的第二个特征加上 2
X[:100, 0] += 2
X[100:, 1] += 2
# 可视化数据集
plt.scatter(X[:, 0], X[:, 1], s=50, c='b')
plt.show()
```
3. 进行聚类:
```python
# 设置 DBSCAN 参数
dbscan = DBSCAN(eps=0.3, min_samples=5)
# 训练模型
dbscan.fit(X)
# 预测聚类结果
y_pred = dbscan.labels_
```
4. 可视化聚类结果:
```python
# 可视化聚类结果
plt.scatter(X[y_pred==-1, 0], X[y_pred==-1, 1], s=50, c='k', label='Noise')
plt.scatter(X[y_pred==0, 0], X[y_pred==0, 1], s=50, c='b', label='Cluster 1')
plt.scatter(X[y_pred==1, 0], X[y_pred==1, 1], s=50, c='r', label='Cluster 2')
plt.legend()
plt.show()
```
这样就完成了 DBSCAN 聚类及可视化的过程。
阅读全文