python dendrogram_用python绘制层次聚类图

层次聚类(Hierarchical clustering)代表着一类的聚类算法,这种类别的算法通过不断的合并或者分割内置聚类来构建最终聚类。 聚类的层次可以被表示成树(或者树形图(dendrogram))。树根是拥有所有样本的唯一聚类,叶子是仅有一个样本的聚类。这里带大家用python绘制一维数据的层次聚类图。

工具准备

  • matplotlib
  • scipy
  • numpy
  • sklearn

sklean中的层次聚类

主要API解析

sklearn.cluster.AgglomerativeClustering(n_clusters=2(聚类数),

affinity='euclidean'(距离衡量标准“euclidean”, “l1”, “l2”, “manhattan”, “cosine”, or “precomputed”),

memory=None, connectivity=None, compute_full_tree='auto',

linkage='ward'(“ward”, “complete”, “average”, “single”), distance_threshold=None)

Ward 最小化所有聚类内的平方差总和。 Maximumcomplete linkage 最小化成对聚类间最远样本距离。 Average linkage 最小化成对聚类间平均样本距离值。 Single linkage 最小化成对聚类间最近样本距离值。

代码:

用scipy中的dendrogram绘图

下面介绍如何更改x轴使其显示实际数据而不是索引:

你可能感兴趣的:(python,dendrogram)