У меня есть список объектов и метрика расстояния между объектами.Могу ли я использовать иерархическую кластеризацию scipy для кластеризации объектов (fclust1, кажется, принимает только векторы с плавающей точкой)?
В качестве альтернативы, если это невозможно в scipy, есть ли другая библиотека python, в которой это можно сделать?
Пример:
class MyObject(object):
def __init__(self):
self.vec1 = [random.choice(range(100)) for i in range(1000)]
self.vec2 = [random.choice(range(100)) for i in range(1000)]
def my_distance_metric(a1, a2):
return some scalar function of a1.vec1, a1.vec2, a2.vec1, a2.vec2
objects = [MyObject() for in in range(1000)]
fclust1.cluster(objects, metric = my_distance_metric)
Спасибо.