使用 scikit-learn 进行聚类

Posted

技术标签:

【中文标题】使用 scikit-learn 进行聚类【英文标题】:Clustering with scikit-learn 【发布时间】:2016-03-17 00:32:34 【问题描述】:

我是第一次使用 scikit-learn,正在尝试做一个 kmeans 集群。我认为我做的都是正确的。

我在数据帧df 中有一个日期时间索引和两列整数。

kmeans = KMeans(n_clusters=2)
kmeans.fit(df.values)

然后我有另一组看起来相同的数据,我想预测它。所以我将df1 传递给kmeans.predict()

我是否需要为每个数据框添加一些列以进行分类?我假设我投入的一切都很好。

完成分类后,如何在图表中将其可视化?

谢谢

【问题讨论】:

【参考方案1】:

在不查看数据并假设您希望将结果预测作为第二个数据 (df2) 帧中的一列的情况下,您可以使用 .apply() 函数应用 kn.predict() 并指定垂直轴。这将为您提供一个包含预测输出的附加列。

df2['predictions'] = df2['values'].apply(kmeans.predict)

这里是申请的信息。 http://pandas.pydata.org/pandas-docs/version/0.17.1/generated/pandas.DataFrame.apply.html

希望对您有所帮助。如果您还需要什么,请告诉我。

【讨论】:

以上是关于使用 scikit-learn 进行聚类的主要内容,如果未能解决你的问题,请参考以下文章

如何在 scikit-learn 中使用 KDE(核密度估计)进行一维数组聚类?

Scikit-learn:使用 DBSCAN 进行聚类后,绘制的点比初始数据样本少

使用 Python 的 Scikit-Learn 库对文本数据进行聚类并绘图

使用 Scikit-learn KMeans 对多维数组进行聚类

Python:使用 scikit-learn 的 dbscan 进行字符串聚类,使用 Levenshtein 距离作为度量:

我可以使用任何特征选择方法来对 Scikit-learn 中的 KMeans 等任务进行聚类吗?