From 5fdbea32d9c81f40bb4b92e569880bfec3856bf6 Mon Sep 17 00:00:00 2001 From: Nico de Vos Date: Wed, 15 Nov 2017 11:23:35 -0800 Subject: [PATCH] add benchmark for ng_dissim --- examples/benchmark_kmodes.py | 9 ++++++++- examples/benchmark_kprototypes.py | 2 ++ 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/examples/benchmark_kmodes.py b/examples/benchmark_kmodes.py index 8152a15..fbfdbe7 100644 --- a/examples/benchmark_kmodes.py +++ b/examples/benchmark_kmodes.py @@ -1,8 +1,11 @@ #!/usr/bin/env python import timeit + import numpy as np + from kmodes.kmodes import KModes +from kmodes.util.dissim import ng_dissim # number of clusters K = 20 @@ -20,13 +23,17 @@ def huang(): KModes(n_clusters=K, init='Huang', n_init=1, verbose=2).fit_predict(data) +def huang_ng_dissim(): + KModes(n_clusters=K, init='Huang', cat_dissim=ng_dissim, n_init=1, verbose=2).fit_predict(data) + + def cao(): KModes(n_clusters=K, init='Cao', verbose=2).fit_predict(data) if __name__ == '__main__': - for cm in ('huang', 'cao'): + for cm in ('huang', 'huang_ng_dissim', 'cao'): print(cm.capitalize() + ': {:.2} seconds'.format( timeit.timeit(cm + '()', setup='from __main__ import ' + cm, diff --git a/examples/benchmark_kprototypes.py b/examples/benchmark_kprototypes.py index 66d9476..c57ece1 100644 --- a/examples/benchmark_kprototypes.py +++ b/examples/benchmark_kprototypes.py @@ -1,7 +1,9 @@ #!/usr/bin/env python import timeit + import numpy as np + from kmodes.kprototypes import KPrototypes # number of clusters