def cluster(k, d, data, i_centers=None):
"""Find *k* clusters on *d* dimensional *data*."""
- borders = [(min(p[0][i] for p in data), max(p[0][i] for p in data))
- for i in range(d) ]
if i_centers:
old_centers = i_centers
else:
+ borders = [(min(p[0][i] for p in data), max(p[0][i] for p in data))
+ for i in range(d)]
old_centers = [[(h - l) * random.random() + l for (l, h) in borders]
for _ in range(k)]
clusters, centers = next_step(old_centers, data)