所以我使用与SciPy快速群集做凝聚聚类。我可以通过dendrogram
来获得聚类的树形图。我可以使用fcluster(Z, sqrt(D.max()), 'distance')
为我的数据获得相当好的群集。如果我想手动检查树状图中k = 3(簇)的区域,然后我想检查k = 6(簇),该怎么办?如何在树状图的特定级别获得聚类?随着SciPy我如何获得k =聚类?与做层次聚类
我看到所有这些功能的容差,但我不知道如何从宽容转换为数量的集群。我可以通过链接(Z)并逐步将群集拼合在一起,使用简单的数据集手动构建群集,但这对于大型数据集不适用。
在fcluster的描述中引发我的是“并且不超过t个扁平集群被形成”。那么有没有这样的情况,当你得到少于'numclust',如果是的话,他们会是什么?我知道,我错综复杂的方式不会让我少于我想要的数量。 – demongolem
@demongolem:即使您的算法返回的群集数量少于您的要求,例如您有2个数据点并且要求3个群集,也总是可以的。我已经广泛使用了'fcluster',并且我不知道在正常情况下例程返回的簇较少的情况。 – dkar
确实,没有足够的分数会阻止你的请求被实现,无论如何。我会接受它作为SciPy开展业务的方式 – demongolem