From c48ae50ade2c27f37c67d06f43beb0df9b94071d Mon Sep 17 00:00:00 2001 From: Andy Eschbacher Date: Fri, 9 Feb 2018 16:22:10 -0500 Subject: [PATCH] small syntax fixes --- src/pg/sql/11_kmeans.sql | 16 +++++++++++----- .../crankshaft/crankshaft/clustering/kmeans.py | 4 ++-- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/src/pg/sql/11_kmeans.sql b/src/pg/sql/11_kmeans.sql index f840e31..708c3c6 100644 --- a/src/pg/sql/11_kmeans.sql +++ b/src/pg/sql/11_kmeans.sql @@ -24,12 +24,18 @@ $$ LANGUAGE plpythonu VOLATILE PARALLEL UNSAFE; -- deviation of 1 -- id_colname: name of the id column -CREATE OR REPLACE FUNCTION CDB_KMeansBalanced(query text, no_clusters integer, value_col TEXT default NULL, no_init integer default 20, max_per_cluster float default NULL ) -RETURNS table (cartodb_id integer, cluster_no integer) as $$ +CREATE OR REPLACE FUNCTION CDB_KMeansBalanced( + query text, + no_clusters integer, + value_col TEXT default NULL, + no_init integer default 20, + max_per_cluster float default NULL) +RETURNS table(cartodb_id integer, cluster_no integer) +AS $$ - from crakshaft.clustering import KmeansBallanced - kmeans = KmeansBallanced() - return kmeans.spatial_balanced(query,no_clusters,no_init, max_per_cluster, value_col) +from crankshaft.clustering import KmeansBalanced +kmeans = KmeansBalanced() +return kmeans.spatial_balanced(query,no_clusters,no_init, max_per_cluster, value_col) $$ LANGUAGE plpythonu VOLATILE PARALLEL UNSAFE; diff --git a/src/py/crankshaft/crankshaft/clustering/kmeans.py b/src/py/crankshaft/crankshaft/clustering/kmeans.py index 949aa29..97f5cbd 100644 --- a/src/py/crankshaft/crankshaft/clustering/kmeans.py +++ b/src/py/crankshaft/crankshaft/clustering/kmeans.py @@ -1,5 +1,5 @@ from sklearn.cluster import KMeans -from balanced_kmeans import BalancedGroupsKMeans +from .balanced_kmeans import BalancedGroupsKMeans import numpy as np @@ -51,7 +51,7 @@ class Kmeans(object): if target_per_cluster is None: target_per_cluster = total_value / float(no_clusters) - km = KmeansBallanced(n_clusters=17,max_iter=100, max_cluster_size=target_per_cluster) + km = BalancedGroupsKMeans(n_clusters=17,max_iter=100, max_cluster_size=target_per_cluster) labels = km.fit_predict(zip(xs,ys), values=values) return zip(ids,labels)