聚类算法——DBSCAN

文章目录

  • 聚类算法——DBSCAN
    • 1. 导包
    • 2. 原始数据
    • 3. 数据预处理
    • 4. 构建DBSCAN模型
    • 5. 聚类结果展示

聚类算法——DBSCAN

1. 导包

import numpy as np
import matplotlib.pyplot as plt
from sklearn import datasets
from sklearn.cluster import DBSCAN

2. 原始数据

# 生成数据
x1, y1 = datasets.make_circles(n_samples=1000, factor=0.35, noise=0.04)
x2, y2 = datasets.make_blobs(n_samples=1000, centers=[[0.45, 0.5]], cluster_std=[[0.03]])
x3, y3 = datasets.make_blobs(n_samples=1000, centers=[[-0.45, 0.5]], cluster_std=[[0.03]])

X = np.concatenate((x1, x2, x3))

# 作图展示
plt.scatter(X[:, 0], X[:, 1], marker='o')
plt.show()

聚类算法——DBSCAN_第1张图片

3. 数据预处理

# 生成的数据比较理想,暂时不需要处理

4. 构建DBSCAN模型

model = DBSCAN(eps=0.1, min_samples=10)
y_predict = model.fit_predict(X)

5. 聚类结果展示

plt.scatter(X[:, 0], X[:, 1], c=y_predict)
plt.show()

聚类算法——DBSCAN_第2张图片

你可能感兴趣的:(Python,MachineLearning,#,Sklearn)