环境配置
*pycharm
*python 3.10(anaconda)
*sklearn、matplotlib等库
导入必要库
from sklearn import datasets
from sklearn.preprocessing import StandardScaler
from sklearn.preprocessing import MinMaxScaler
from sklearn.cluster import KMeans
from sklearn.metrics import silhouette_score, adjusted_rand_score
from sklearn.metrics import accuracy_score
from sklearn.metrics import fowlkes_mallows_score
import matplotlib.pyplot as plt
导入数据
# 导入wine数据
wine = datasets.load_wine()
X = wine['data']
y = wine['target']
数据归一化
一般采用标准差归一化或最大/最小值归一化,任意选择一个即可,也可进行实验对比后选择最为合适的
# 标准差标准化
X = StandardScaler().fit(X).transform(X)
# 最大/最小归一化
X = MinMaxScaler().fit(X).transform(X)
K-means聚类
根据wine数据集的先验知识,我们知道该数据集共有三类,因此设置n_clusters值为3,如其他无法获取先验类别信息的则需要使用如肘部方法(Elbow Method)或轮廓分数(Silhouette Score)等技术来确定最佳的簇数量
# 应用K-means进行聚类(sklearn默认是K-means++)
kmeans = KMeans

文章介绍了如何在Python环境中配置环境并导入必要的库,然后对wine数据集进行数据预处理和K-means聚类。通过可视化和多种评估指标分析了聚类效果,最后讨论了内存泄漏问题及解决方案。
最低0.47元/天 解锁文章
6223





