利用sklearn.datasets中鸢尾花数据集load_iris,获取鸢尾花数据样本,其中包括150条数据样本,四个花朵属性:花瓣长、宽、萼片长、宽。利用萼片尺寸分别对数据集进行Kmeans聚类划分,并以可视化散点图对聚类结果进行表达
时间: 2024-02-03 20:15:13 浏览: 78
SKlearn数据集.zip
好的,我来给您演示一下。
首先,我们需要导入必要的库:sklearn.datasets用于加载鸢尾花数据集,sklearn.cluster用于Kmeans聚类,matplotlib用于可视化散点图。
```python
from sklearn.datasets import load_iris
from sklearn.cluster import KMeans
import matplotlib.pyplot as plt
```
然后,我们可以加载鸢尾花数据集并查看它的基本信息:
```python
iris = load_iris()
print(iris.data.shape) # (150, 4)
print(iris.feature_names) # ['sepal length (cm)', 'sepal width (cm)', 'petal length (cm)', 'petal width (cm)']
```
接下来,我们可以将数据集按照萼片长度进行Kmeans聚类:
```python
X = iris.data[:, :2] # 取萼片长度和宽度两个特征
kmeans = KMeans(n_clusters=3, random_state=0).fit(X)
y_pred = kmeans.predict(X)
```
在这里,我们将数据集的前两个特征(即萼片长度和宽度)作为聚类的依据,设置聚类数为3。
最后,我们可以利用可视化散点图对聚类结果进行表达:
```python
plt.scatter(X[:, 0], X[:, 1], c=y_pred)
plt.title('Kmeans Clustering of Iris Dataset')
plt.xlabel('Sepal Length (cm)')
plt.ylabel('Sepal Width (cm)')
plt.show()
```
运行上述代码,我们就可以得到鸢尾花数据集按照萼片长度进行Kmeans聚类的可视化结果了。其中,不同颜色的点表示不同的聚类簇。
阅读全文