- 引言
- 文章目的
- 层次聚类步骤
- 层次聚类Python代码
- 散点图绘制
- 结果分析与可视化
#### 引言
在数据分析中,聚类是一种常用的无监督学习方法,它可以帮助我们发现数据内在的结构。层次聚类(Hierarchical Clustering)是聚类算法中的一种,它不需要预先指定聚类的数量,而是生成一个由层次结构组成的聚类树(称为树状图或Dendrogram)。本文将介绍如何使用Python实现层次聚类,并绘制相应的散点图。
#### 文章目的
本篇文章的目的是向读者展示如何使用Python进行层次聚类分析,并通过散点图直观地展示聚类结果。
#### 层次聚类步骤
1. 数据导入
2. 数据标准化
3. 距离计算与链接方法选择
4. 构建聚类树
5. 确定聚类数
6. 绘制散点图
#### 层次聚类Python代码```python
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import AgglomerativeClustering
from sklearn.preprocessing import StandardScaler
# 导入数据
df_raw = pd.read_csv('data.csv')
# 数据标准化
scaler = StandardScaler()
df_scaled = scaler.fit_transform(df_raw)
# 计算距离矩阵
distance_matrix = np.linalg.norm(df_scaled[:, np.newaxis, :] - df_scaled[np.newaxis, :, :], axis=2)
# 选择链接方法并构建聚类树
linkage_matrix = np.linkage(distance_matrix, method='ward')
# 使用聚合