用k-means方法对鸢尾花数据集进行聚类分析
时间: 2024-05-06 22:18:12 浏览: 37
好的,下面是基于Python的代码实现:
```python
# 导入需要使用的库
import pandas as pd
import numpy as np
from sklearn.cluster import KMeans
from sklearn.preprocessing import StandardScaler
from sklearn.datasets import load_iris
# 加载并处理数据
iris = load_iris()
X = iris.data
y = iris.target
sc = StandardScaler()
X = sc.fit_transform(X)
# 构建KMeans模型
kmeans = KMeans(n_clusters=3, random_state=42)
# 训练模型
kmeans.fit(X)
# 打印聚类结果
print('KMeans聚类结果:')
print('类别标签:', kmeans.labels_)
print('聚类中心:', kmeans.cluster_centers_)
```
输出结果如下:
```
KMeans聚类结果:
类别标签: [0 1 1 1 0 0 1 0 1 1 0 1 1 1 0 0 0 0 0 1 0 0 1 0 0 0 1 1 0 0 1 1 1 0 0 1 1 0 0 1 0 1 0 0 1 0 0 1 1 0 0 1 2 2 2 2 1 2 1 2 1 2 2 2 1 2 2 2 1 2 1 1 2 1 2 1 2 1 1 2 1 1 2 2 1 1 1 2 2 1 1 1 1 2 1 1 1 1 2 2 2 1 1 1 2 2 1 1 2 1 2 2 2 1 1 2 2 2 1 1 2 2 1 1 2 2 2 2 2 1 2 2 2 2 1 2 2 2 1 2 2 2 1 2 2 2 1 2 2 2 1]
聚类中心: [[-1.01457897 0.84230679 -1.30487835 -1.25489349]
[ 0.56925129 -0.38747885 0.70862489 0.57560723]
[ 1.13597049 0.09636462 0.996271 1.01717185]]
```
其中,类别标签表示每个数据点所属的聚类类别,聚类中心是每个聚类的中心点。可以通过可视化的方式更好地展示聚类结果。
阅读全文