示例#1
0
 def calc_medoid(self, points):
     centroid = self.calc_centroid(points)
     min_d = -1
     medoid = [-1,-1]
     for p in points:
         d = util.hubeny_distance(p, centroid)
         if d < min_d or min_d == -1:
             min_d = d
             medoid = p
     return medoid
示例#2
0
 def calc_dispersion(self, centroid, points):
     sum_dist = sum([util.hubeny_distance(centroid, p) for p in points])
     n = float(len(points))
     return sum_dist/n