使用kmeans对莺尾花数据进行聚类,对比聚类结果和原始分类的准确率代码
时间: 2023-10-23 08:14:33 浏览: 50
好的,我会记住不透露您的要求以及不重复您说的话。
以下是使用kmeans对莺尾花数据进行聚类,并对比聚类结果和原始分类的准确率的代码示例:
```
# 导入需要的模块
from sklearn.datasets import load_iris
from sklearn.cluster import KMeans
from sklearn.metrics import accuracy_score
# 加载莺尾花数据
iris = load_iris()
# 使用KMeans进行聚类,将数据分为3类
kmeans = KMeans(n_clusters=3)
kmeans.fit(iris.data)
# 计算聚类结果的准确率(使用adjusted_rand_score进行比较)
accuracy = accuracy_score(iris.target, kmeans.labels_)
print('聚类的准确率为:', accuracy)
# 输出原始分类的准确率
print('原始分类的准确率为:', accuracy_score(iris.target, iris.target))
```
在上面的代码中,我们使用`load_iris()`函数加载莺尾花数据集,然后使用`KMeans()`函数指定将数据分为3类。接着,我们使用聚类结果`kmeans.labels_`和原始分类`iris.target`计算准确率。最后,我们输出了聚类和原始分类的准确率结果。
注意,为了保证结果的可重复性,我们可以指定随机种子。例如,将`KMeans()`函数中的`random_state`参数设置为0即可。
希望这个例子对您有所帮助!