自定义数据集,使用scikit-learn 中K均值包 进行聚类

1. 引言

K均值聚类是一种无监督学习方法,用于将数据集分为多个簇。通过计算数据点之间的距离并将它们分配到最近的簇中心,K均值算法可以帮助我们发现数据中的自然结构。

2. 数据集创建

首先,我们使用numpy创建一个自定义的二维数据集:

复制代码
import numpy as np

# 创建一个简单的二维数据集
X = np.array([[1, 2], [1.5, 1.8], [5, 8], [8, 8], [1, 0.6], [9, 11]])
3. 导入K均值并进行聚类

接下来,我们使用scikit-learn中的K均值算法进行聚类。

复制代码
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt

# 使用K均值聚类,设定簇的数量为2
kmeans = KMeans(n_clusters=2)
kmeans.fit(X)

# 获取簇的中心和标签
centroids = kmeans.cluster_centers_
labels = kmeans.labels_
4. 可视化结果

为了更好地理解聚类结果,我们可以使用matplotlib来可视化数据点和簇的中心。

复制代码
# 绘制数据点和簇的中心
plt.scatter(X[:, 0], X[:, 1], c=labels, cmap='viridis')

# 标出簇的中心
plt.scatter(centroids[:, 0], centroids[:, 1], s=200, c='red', marker='X')
plt.show()
5. 总结

通过K均值聚类,我们成功地将数据集分为两个簇,并通过可视化方式直观展示了聚类结果。K均值算法的核心思想是通过计算点与簇中心的距离进行分组,并不断迭代优化簇的中心位置。

相关推荐
有Li16 小时前
PTCMIL:基于提示 token 聚类的全切片图像多实例学习分析文献速递/多模态医学影像最新进展
论文阅读·学习·数据挖掘·聚类·文献·医学生
cvcode_study19 小时前
Scikit-learn
python·机器学习·scikit-learn
2601_961875242 天前
花生十三资源盘|电子版|全科
python·django·flask·virtualenv·scikit-learn·pygame·tornado
deephub2 天前
Flash-KMeans:快速且内存高效的精确 K-Means,可在单张 GPU 进行亿级数据的聚类
人工智能·机器学习·kmeans·聚类·rag
金融小师妹2 天前
基于AI事件驱动模型与验证溢价框架的市场分析:从预期交易到事实验证,原油与黄金面临关键定价重构
大数据·人工智能·算法·均值算法·线性回归
叫我:松哥4 天前
基于机器学习和flask的体育健身风险智能分析系统,系统集成DeepSeek、聚类算法、分类算法等,准确率达90%
人工智能·python·神经网络·算法·机器学习·flask·聚类
金融小师妹7 天前
AI因子共振模型显示:金银比突破区间上沿,白银定价逻辑进入再校准阶段
人工智能·算法·均值算法·线性回归
暖阳华笺8 天前
【高频考点】K-Means聚类算法
c++·算法·机器学习·kmeans·聚类
龙腾AI白云8 天前
用知识图谱重构搜索引擎
人工智能·virtualenv·scikit-learn
龙腾AI白云9 天前
从GPT到开源大模型
scikit-learn·知识图谱