如何给出聚集数组的索引python?
how to give index of clustered array python?
我已经尝试 运行 这个 K-Medoids python 实现代码
from sklearn.metrics.pairwise import pairwise_distances
import numpy as np
import kmedoids
# 3 points in dataset
data = np.array([[1,1],
[2,2],
[10,10]])
# distance matrix
D = pairwise_distances(data, metric='euclidean')
# split into 2 clusters
M, C = kmedoids.kMedoids(D, 2)
print('medoids:')
for point_idx in M:
print( data[point_idx] )
print('')
print('clustering result:')
for label in C:
for point_idx in C[label]:
print('label {0}: {1}'.format(label, data[point_idx]))
(https://github.com/someus/kmedoids) 它显示:
medoids:
[1 1]
[10 10]
clustering result:
label 0: [1 1]
label 0: [2 2]
label 1: [10 10]
但是我想像这样在它的聚类结果上插入索引:
medoids:
[1 1], index 1
[10 10], index 3
clustering result:
label 0: [1 1], index 1
label 0: [2 2], index 2
label 1: [10 10], index 3
有人知道怎么做吗?
谢谢
你是说你也想打印 point_idx
?
print('label {0}: {1} {2}'.format(label, data[point_idx], point_idx))
我已经尝试 运行 这个 K-Medoids python 实现代码
from sklearn.metrics.pairwise import pairwise_distances
import numpy as np
import kmedoids
# 3 points in dataset
data = np.array([[1,1],
[2,2],
[10,10]])
# distance matrix
D = pairwise_distances(data, metric='euclidean')
# split into 2 clusters
M, C = kmedoids.kMedoids(D, 2)
print('medoids:')
for point_idx in M:
print( data[point_idx] )
print('')
print('clustering result:')
for label in C:
for point_idx in C[label]:
print('label {0}: {1}'.format(label, data[point_idx]))
(https://github.com/someus/kmedoids) 它显示:
medoids:
[1 1]
[10 10]
clustering result:
label 0: [1 1]
label 0: [2 2]
label 1: [10 10]
但是我想像这样在它的聚类结果上插入索引:
medoids:
[1 1], index 1
[10 10], index 3
clustering result:
label 0: [1 1], index 1
label 0: [2 2], index 2
label 1: [10 10], index 3
有人知道怎么做吗? 谢谢
你是说你也想打印 point_idx
?
print('label {0}: {1} {2}'.format(label, data[point_idx], point_idx))