我正在使用scikit的AffinityPropogation对某些名称进行聚类,并且我想绘制/可视化聚类。我的输入数据已经过预先计算的接近度,如下所示:
#sample input data
joe,mike,ali,andrew,sean
.2,.221,.5,.5,.7
.82,0,.1,.72,.0
.7,.88,.7,.2,1
0,0,.4,.8,.9
.3,.03,.07,.003,.2
这是我为聚类准备的简单代码:
import numpy as np
import pandas as pd
import sklearn.cluster
import matplotlib.pyplot as plt
from sklearn import metrics
data = pd.read_csv('/pydata/nametokenmatrix.txt')
M = data.as_matrix()
af = sklearn.cluster.AffinityPropagation(affinity="precomputed", damping=0.5)
af.fit(M)
cluster_centers_indices = af.cluster_centers_indices_
labels = af.labels_
在运行此代码时,我确实生成了一些簇,但是我不确定如何绘制它们,以便可以对其可视化。由于我正在使用聚类技术,因此我想通过绘制它们来比较不同的算法。类似于here。
谢谢
答案 0 :(得分:0)
您将需要嵌入亲和度矩阵。
精心调整的非度量MDS应该是一个好的开始。