找到集群的中心

Ank*_*kur 7 algorithm cluster-analysis data-mining

我有以下问题 - 提出抽象来解决关键问题.

我每个有10个点,与另一个有一定距离.我想要

  1. 能够找到聚类的中心,即彼此点的成对距离最小的点,
    让p(j)~p(k)表示成对距离beteen点j和k
    p(i)是中心 -群集的iff p(i)st min [sum(p(j)~p(k))]对于所有0 <j,k <= n,其中我们在群集中有n个点
  2. 确定一旦集群中的数据点数超过某个阈值t,如何将集群拆分为两个集群.

这不是欧几里德的空间.但距离可以总结如下 - p(i)是第i点:

       p(1)    p(2)    p(3)    p(4)    p(5)    p(6)    p(7)    p(8)    p(9)    p(10)
p(1)    0       2       1       3       2       3       3       2       3        4
p(2)    2       0       1       3       2       3       3       2       3        4
p(3)    1       1       0       2       0       1       2       1       2        3
p(4)    3       3       2       0       1       2       3       2       3        4      
p(5)    2       2       1       1       0       1       2       1       2        3   
p(6)    3       3       2       2       1       0       3       2       3        4   
p(7)    3       3       2       3       2       3       0       1       2        3  
p(8)    2       2       1       2       1       2       1       0       1        2 
p(9)    3       3       2       3       2       3       2       1       0        1
p(10)   4       4       3       4       3       4       3       2       1        0 
Run Code Online (Sandbox Code Playgroud)

我如何计算该群集的中心点?

Dar*_*ght 8

据我所知,这看起来像K Means Clustering,你正在寻找的通常被称为'Medoids'.

请参阅:http://en.wikipedia.org/wiki/Medoids或此处:http://en.wikipedia.org/wiki/K-medoids