data = numpy.concatenate((a,b,c,d), axis=0) # Use mean shift to cluster it... ms = MeanShift() ms.set_data(data, 'df') ms.set_kernel(random.choice(filter(lambda s: s!='fisher', ms.kernels()))) ms.set_spatial(random.choice(ms.spatials())) modes, indices = ms.cluster() # Print out basic stats... print 'kernel = %s; spatial = %s' % (ms.get_kernel(), ms.get_spatial()) print 'exemplars = %i; features = %i' % (ms.exemplars(), ms.features()) print 'quality = %.3f; epsilon = %.3f; iter_cap = %i' % (ms.quality, ms.epsilon, ms.iter_cap) print # Print out a grid of cluster assignments... for j in xrange(20): for i in xrange(20): fv = numpy.array([0.25*j, 0.25*i]) c = ms.assign_cluster(fv) print c, print
data = numpy.concatenate((a, b, c, d), axis=0) # Use mean shift to cluster it... ms = MeanShift() ms.set_data(data, 'df') normal_kernels = [ 'uniform', 'triangular', 'epanechnikov', 'cosine', 'gaussian', 'cauchy', 'logistic' ] ms.set_kernel(random.choice(normal_kernels)) ms.set_spatial(random.choice(ms.spatials())) modes, indices = ms.cluster() # Print out basic stats... print 'kernel = %s; spatial = %s' % (ms.get_kernel(), ms.get_spatial()) print 'exemplars = %i; features = %i' % (ms.exemplars(), ms.features()) print 'quality = %.3f; epsilon = %.3f; iter_cap = %i' % ( ms.quality, ms.epsilon, ms.iter_cap) print # Print out a grid of cluster assignments... for j in xrange(20): for i in xrange(20): fv = numpy.array([0.25 * j, 0.25 * i]) c = ms.assign_cluster(fv) print c, print