K-Means鸢尾花数据代码
时间: 2024-10-06 12:05:23 浏览: 18
k-means鸢尾花分类.zip
K-Means是一种常用的无监督机器学习算法,用于将数据集分成预设数量的类别(簇)。对于鸢尾花数据集(Iris dataset),这是一个经典的示例,通常用它来展示聚类分析的应用。以下是使用Python的scikit-learn库进行K-Means聚类的基本步骤:
```python
# 导入所需的库
from sklearn import datasets
import matplotlib.pyplot as plt
# 加载鸢尾花数据集
iris = datasets.load_iris()
X = iris.data # 特征向量
y = iris.target # 类别标签(这里是数字,方便后续可视化)
# 设定K值(比如3,因为鸢尾花有三种)
k = 3
# 初始化KMeans模型
kmeans = KMeans(n_clusters=k)
# 训练模型
kmeans.fit(X)
# 获取每个样本所属的簇中心
labels = kmeans.labels_
# 绘制结果
plt.scatter(X[:, 0], X[:, 1], c=labels)
plt.scatter(kmeans.cluster_centers_[:, 0], kmeans.cluster_centers_[:, 1], s=300, c='red')
plt.title("K-Means Clustering on Iris Dataset")
plt.xlabel('Feature 1')
plt.ylabel('Feature 2')
plt.show()
阅读全文