层次聚类与密度聚类代码实现

层次聚类与密度聚类代码实现

层次聚类

import numpy as np
from scipy.cluster.hierarchy import linkage, dendrogram
import matplotlib.pyplot as plt

# 创建100个样本的数据
data = np.random.rand(10, 2)

# 使用linkage函数进行层次聚类
linked = linkage(data, 'single')

# 画出树状图(树状图是层次聚类的可视化)
dendrogram(linked)
plt.show()

层次聚类与密度聚类代码实现_第1张图片

密度聚类

from sklearn.cluster import DBSCAN
import matplotlib.pyplot as plt

# 创建100个样本的数据
data = np.random.rand(200, 2)

# 使用DBSCAN进行密度聚类
dbscan = DBSCAN(eps=0.1, min_samples=5)
clusters = dbscan.fit_predict(data)

# 可视化聚类结果
plt.scatter(data[:, 0], data[:, 1], c=clusters, cmap='viridis')
plt.show()

层次聚类与密度聚类代码实现_第2张图片

你可能感兴趣的:(聚类,数据挖掘,机器学习,算法)