我正在研究层次聚类的问题,并希望可视化树状图。但是,传递给我的输出不是超量的,使用scipy给我一个错误。以下是作为输入传递给函数dendrogram(z)
的数据的示例,其中z被假定为一个numpy矩阵,每一行的排列方式如下[clusterA, clusterB, dissimilarity_score, size_of_new_cluster]
以及我收到的错误
我不确定是否是因为数据不是超计量的?因为您可以看到群集的合并顺序不是按照它们的相似性得分排序的。如果是这样,是否有人对我如何生成自己的树状图有任何想法或链接?我在树上过马路很好。在下一步之前,我只需要对输出进行虚拟化。
数据示例
150 215 5.89187 2
3866 3933 5.39533 2
5428 5531 3.9698 2
7418 7515 5.20076 2
8168 8250 5.90439 2
8810 8876 4.21574 2
错误消息
---------------------------------------------------------------------------
ValueError Traceback (most recent call last)
<ipython-input-16-13fcab7954a8> in <module>()
10 z,
11 leaf_rotation=90., # rotates the x axis labels
---> 12 leaf_font_size=8., # font size for the x axis labels
13 )
14 plt.show()
~\Anaconda3\envs\DIS2018\lib\site-packages\scipy\cluster\hierarchy.py in dendrogram(Z, p, truncate_mode, color_threshold, get_leaves, orientation, labels, count_sort, distance_sort, show_leaf_counts, no_plot, no_labels, leaf_font_size, leaf_rotation, leaf_label_func, show_contracted, link_color_func, ax, above_threshold_color)
2425 "'bottom', or 'right'")
2426
-> 2427 is_valid_linkage(Z, throw=True, name='Z')
2428 Zs = Z.shape
2429 n = Zs[0] + 1
~\Anaconda3\envs\DIS2018\lib\site-packages\scipy\cluster\hierarchy.py in is_valid_linkage(Z, warning, throw, name)
1602 if _check_hierarchy_uses_cluster_before_formed(Z):
1603 raise ValueError('Linkage %suses non-singleton cluster before '
-> 1604 'it is formed.' % name_str)
1605 if _check_hierarchy_uses_cluster_more_than_once(Z):
1606 raise ValueError('Linkage %suses the same cluster more than once.'
ValueError: Linkage 'Z' uses non-singleton cluster before it is formed.