features = df[['pingjia', '评分']] # 使用KMeans算法进行聚类分析 kmeans = KMeans(n_clusters=2) kmeans.fit(features) # 聚类结果 df['cluster'] = kmeans.labels_ # 绘制聚类结果散点图 plt.scatter(df['pingjia'], df['评分'], c=df['cluster'], cmap='viridis') plt.xlabel('pingjia') plt.ylabel('评分') plt.title('K-means聚类结果') plt.show()
时间: 2023-09-10 22:13:03 浏览: 175
pingjia.zip_pingjia
根据你提供的代码,你使用了 Python 的机器学习库 sklearn 中的 KMeans 算法进行聚类分析。首先,你从 DataFrame `df` 中选择了两列作为特征,即 `'pingjia'` 和 `'评分'`,并将它们保存在 `features` 变量中。
然后,你创建了一个 KMeans 对象 `kmeans`,并将聚类数目设置为 2(可以根据实际需求进行调整)。
接着,你使用 `kmeans.fit()` 方法对特征进行聚类分析,并将聚类结果保存在 DataFrame `df` 中的 `'cluster'` 列中,通过 `kmeans.labels_` 获取每个样本所属的聚类标签。
最后,你使用 `plt.scatter()` 方法绘制了散点图,x 轴为 `'pingjia'`,y 轴为 `'评分'`,并根据聚类结果 `'cluster'` 给点添加了不同的颜色标记。你使用了 `'viridis'` 颜色映射来表示不同的聚类。
你还使用 `plt.xlabel()` 和 `plt.ylabel()` 分别设置了 x 轴和 y 轴的标签,使用 `plt.title()` 设置了图表的标题。最后,使用 `plt.show()` 方法显示图表。
请确保在运行代码之前已经导入了必要的库(如 pandas、sklearn 和 matplotlib),并已经准备好了数据。运行代码后,将会显示一个散点图,其中的点根据 KMeans 算法进行了聚类,并用不同的颜色标记了不同的聚类。
阅读全文