使用 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 距离作为度量: