distances = distance.cdist(vector_list, vector_list, 'euclidean')
这将生成一个矩阵,其中对角线是每个文档与自身的距离(始终为0)。
[0 5 4]
[5 0 4]
[5 4 0]
我将这个距离矩阵输入scipys的linkage()函数。
clusters = hier.linkage(distances, method='centroid', metric='euclidean')
这个返回的是我不确定是什么,但它作为数据类型numpy.ndarray显示。根据文档,我可以再次将其输入fcluster以获取'flat clusters'。我使用距离矩阵中最大距离的一半作为阈值。
idx = hier.fcluster(clu,0.5*distances.max(), 'distance')
这将返回一个numpy.ndarray,对我来说也不是很清楚。例如:[6 3 1 7 1 8 9 4 5 2]
那么我的问题是:我从linkage和fcluster函数中得到了什么,如何从中回到我创建距离矩阵的文档,以查看聚类是否有意义?我做得对吗?