python - 使用 sklearn.AgglomerativeClustering 绘制树状图

标签 python plot cluster-analysis dendrogram

我正在尝试使用 AgglomerativeClustering 提供的 children_ 属性构建树状图,但到目前为止我运气不佳。我不能使用 scipy.cluster 因为 scipy 中提供的凝聚集群缺少一些对我很重要的选项(例如指定集群数量的选项)。我将非常感谢那里的任何建议。

    import sklearn.cluster
    clstr = cluster.AgglomerativeClustering(n_clusters=2)
    clusterer.children_

最佳答案

这里是 simple function用于从 sklearn 获取层次聚类模型并使用 scipy dendrogram 函数对其进行绘制。似乎 sklearn 通常不直接支持图形功能。您可以找到与此 plot_dendrogram 代码片段 here 的拉取请求相关的有趣讨论。 .

我要澄清的是,您描述的用例(定义集群数量)在 scipy 中可用:在您使用 scipy 的 linkage 执行层次聚类后,您可以将层次结构切割为任意数量您希望使用 fcluster 的集群数量,其中集群数量在 t 参数和 criterion='maxclust' 参数中指定。

关于python - 使用 sklearn.AgglomerativeClustering 绘制树状图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29127013/

相关文章:

python - 使用 Bokeh 绘图时,如何自动循环显示调色板?

python - 我可以告诉 PyInstaller 打包我的整个源代码树吗?

python - 使用 Python 从 ElementTree 中删除 XML 版本标签

python - 需要帮助计算地理距离

具有基于列值的动态系列的 Excel 绘图

c# - C# 或 vb.net 中的 DBSCAN 代码,用于聚类分析

python - Docker-我们是否需要在 Dockerfile 中包含 RUN 命令

python - 在 Travis CI 中测试基于 matplotlib 的绘图

r - 如何翻转pheatmap中的层次聚类节点

python - 查找类似功能/产品组合的模式(最好在 python 中)