Python实现K-means聚类算法并将结果可视化

本教程将引导您使用Python完成以下步骤:

  1. 从Excel文件中读取数据。
  2. 使用K-means聚类算法对数据进行分组。
  3. 使用Matplotlib创建散点图来可视化聚类结果。

以下是完整的Python代码:

import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans

# 读取Excel数据
data = pd.read_excel('data.xlsx')

# 提取需要聚类的特征数据
X = data[['feature1', 'feature2']].values

# 使用K-means算法进行聚类,聚成3类
kmeans = KMeans(n_clusters=3, random_state=0).fit(X)

# 绘制散点图,不同颜色代表不同的聚类
plt.scatter(X[:, 0], X[:, 1], c=kmeans.labels_, cmap='rainbow')
plt.xlabel('Feature 1')
plt.ylabel('Feature 2')
plt.title('K-means Clustering')
plt.show()

代码解析

  1. 首先,我们导入必要的库:Pandas用于数据处理,NumPy用于数值计算,Matplotlib用于数据可视化,以及Scikit-learn库中的KMeans用于聚类分析。
  2. 使用pd.read_excel('data.xlsx')读取名为'data.xlsx'的Excel文件。
  3. 从数据集中选择特征列'feature1'和'feature2'用于聚类分析。
  4. 使用KMeans(n_clusters=3, random_state=0)初始化K-means模型,设置聚类数量为3,并设置随机种子以确保结果可复现。
  5. 使用kmeans.fit(X)拟合模型,对数据进行聚类。
  6. 使用plt.scatter()函数创建散点图,并使用cmap='rainbow'参数设置颜色主题,以区分不同的聚类簇。
  7. 最后,使用plt.show()函数显示生成的图表。

本教程提供了一个简单的K-means聚类分析示例,您可以根据实际需求调整代码,例如更改聚类数量、选择不同的特征列或使用其他可视化方法。

Python实现K-means聚类算法并将结果可视化

原文地址: https://www.cveoy.top/t/topic/f0cL 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录