k-means方法对鸢尾花数据集聚类分析
时间: 2023-11-02 18:59:52 浏览: 99
基于k-means算法实现二维坐标和鸢尾花数据集的分类
首先,我们需要导入鸢尾花数据集并进行预处理:
```python
from sklearn.datasets import load_iris
from sklearn.preprocessing import StandardScaler
iris = load_iris()
X = iris.data
scaler = StandardScaler()
X_scaled = scaler.fit_transform(X)
```
接下来,我们可以使用KMeans算法对数据集进行聚类分析。在这里,我们将聚类数量设置为3,因为我们知道鸢尾花数据集中有3个类别。
```python
from sklearn.cluster import KMeans
kmeans = KMeans(n_clusters=3, random_state=42)
kmeans.fit(X_scaled)
```
最后,我们可以将聚类结果可视化:
```python
import matplotlib.pyplot as plt
plt.scatter(X[:, 0], X[:, 1], c=kmeans.labels_, cmap='viridis')
plt.scatter(kmeans.cluster_centers_[:, 0], kmeans.cluster_centers_[:, 1], marker='*', s=300, c='r')
plt.title('KMeans Clustering')
plt.xlabel('Sepal Length')
plt.ylabel('Sepal Width')
plt.show()
```
这将生成以下图表:
![KMeans Clustering](https://i.imgur.com/2p4kk5M.png)
从图表中可以看出,我们的KMeans算法成功地将鸢尾花数据集聚类为3个类别。
阅读全文