示例#1
0
from DistanceCalculator import DistanceCalculator
from MSTMaker import MSTMaker
from DHClustering import DHClustering
from Printer import Printer
import pandas as pd

def prepare_data(filename):
    '''
    Assumes data is in csv format
    '''
    df = pd.read_csv(filename).values
    classes = df[:,-1]
    names = df[:,0]
    data = df[:,1:len(df[0])-1]
    return data, classes, names

data, classes, names = prepare_data("zoo.csv")
dc = DistanceCalculator(data)
dl, nr_entries = dc.get_dist_list()
mst_maker = MSTMaker(dl, nr_entries)
mst = mst_maker.get_mst()
dh_clusterer = DHClustering(mst)
clusters = dh_clusterer.make_clusters()
p = Printer()
print(p.fill_in_names(clusters, names))