我正在研究集群问题。在某些情况下,我有以下三个聚类中心,并且我想根据另一个m * n维矩阵从这三个聚类中心计算出欧式距离。如果有人可以指导我完成这一点,将非常有帮助。
kmeans.cluster_centers_
Out[99]:
array([[-2.23020213, 0.35654288],
[ 7.69370352, 1.72991757],
[ 0.92519202, -0.29218753]])
matrix
Out[100]:
array([[ 0.11650485, 0.11650485, 0.11650485, 0.11650485, 0.11650485,
0.11650485],
[ 0.11650485, 0.18446602, 0.18446602, 0.2815534 , 0.37864078,
0.37864078],
[ 0.21359223, 0.21359223, 0.21359223, 0.21359223, 0.29708738,
0.35533981],
...,
[ 0.2640625 , 0.2734375 , 0.30546875, 0.31953125, 0.31953125,
0.31953125],
[ 1. , 1. , 1. , 1. , 1. ,
1. ],
[ 0.5 , 0.5 , 0.5 , 0.5 , 0.5 ,
0.5 ]])
我想用Python做到这一点。我已经将sklearn用于集群。
答案 0 :(得分:0)
欧几里德距离是在固定长度d的向量上定义的。
即它是一个函数R ^ d x R ^ d-> R
所以无论您想做什么-这都不是通常的欧几里德距离。您似乎有k = 3个具有d = 2坐标的聚类中心,但是您的矩阵具有不兼容的形状,无法以明显的方式解释为2 d个向量。