项目难点
- 主要通过聚类算法 kmeans 进行调整 .
- 需要找出分为几类时模型参数最佳 . (n_clusters)
- 找出性价比较高的车
- 获取训练数据: train_X = data.drop(['car_ID','CarName'],axis = 1)
- 计算模型的得分和误差: kmeans.inertia_ # inertia簇内误差平方和
from sklearn.cluster import KMeans # 聚类算法
from sklearn.metrics import silhouette_score
kmeans = KMeans(n_clusters= k)
kmeans.fit(train_x)
sse.append(kmeans.inertia_) # inertia簇内误差平方和
# 通过预测值和实际值的对比计算模型的得分
ss.append(silhouette_score(train_x,kmeans.predict(train_x)))
-
LabelEncoder: python:sklearn标签编码(LabelEncoder) sklearn.preprocessing.LabelEncoder的使用:在训练模型之前,通常都要对数据进行一定得处理。将类别编号是一种常用的处理方法,比如把类别“电脑”,“手机”编号为0和1,可使用LabelEncoder函数。
-
作用: 将n个类别编码为0~n-1之间的整数(包括0和n-1)
-
- 找出聚类种类最佳参数
sse =[]
ss = []
for k in range(2,11):
kmeans = KMeans(n_clusters= k)
kmeans.fit(train_x)
sse.append(kmeans.inertia_)
ss.append(silhouette_score(train_x,kmeans.predict(train_x)))
- kmean 聚类算法模型
kmeans = KMeans(n_clusters=8)
kmeans.fit(train_x)
predict_y = kmeans.predict(train_x) # 预测

本文使用KMeans聚类算法对汽车数据进行分析,通过调整n_clusters找到最优模型参数,结合SilhouetteScore评估模型性能。数据预处理包括数值编码、归一化和特征工程。最终确定8类聚集群体,对不同类型的汽车如低端、高端轿车及中端SUV进行价格和属性的分类分析。
最低0.47元/天 解锁文章
10万+

被折叠的 条评论
为什么被折叠?



