如何用kmeans集群“标记”csv?

时间:2017-07-11 03:00:45

标签: python scipy

我的python代码读取csv并提取纬度经度并通过kmeans运行它们。我有一个与每个纬度经度相关联的“placeName”字段。我的问题是我希望能够写出一个新的csv文件或以某种方式标记数据,以便我可以看到哪个csv行与哪个集群相关联。当kmeans的坐标采用数组,但没有像“name”或“id”这样的属性时,我怎么能做到这一点?

import numpy as np
import matplotlib.pyplot as plt
from scipy.cluster.vq import kmeans2, whiten

coordinates= np.array([
           [lat, long],
           [lat, long],
            ...
           [lat, long]
           ])
x, y = kmeans2(whiten(coordinates), 3, iter = 20)  
plt.scatter(coordinates[:,0], coordinates[:,1], c=y);
plt.show()

1 个答案:

答案 0 :(得分:0)

我认为你想得到的是:一个标签列表,显示一个坐标属于哪个集群。 现在,您在二维数组中得到licencedriver's。 您可以通过首先将x中的每个元素映射到标签来获取标签列表,然后将该标签映射应用于y

x

y是所需的群集ID列表。