在Python中使用给定的集群中心对数据进行集群

在Python中使用给定的集群中心对数据进行集群,python,pandas,numpy,Python,Pandas,Numpy,我有一个一维数值数据集(但我的问题也适用于n维数值数据集),我想对其进行聚类,并且我已经知道聚类中心的值。因此,我只想将每个数据点映射到其关联的集群中心(距离数据点最近的一个) 我可以编写一个特别的函数,但我更喜欢使用经过优化的Python科学库来处理pandas.Series或numpy.array,比如Scipy,因为我的数据集非常大(数亿个数据点) 我该怎么做 谢谢大家! 你在找那个笨蛋 第一个参数是集群的数据,第二个参数是集群坐标。返回值的第一个元素是每个集群的索引(标签),这是您想要的

我有一个一维数值数据集(但我的问题也适用于n维数值数据集),我想对其进行聚类,并且我已经知道聚类中心的值。因此,我只想将每个数据点映射到其关联的集群中心(距离数据点最近的一个)

我可以编写一个特别的函数,但我更喜欢使用经过优化的Python科学库来处理pandas.Series或numpy.array,比如Scipy,因为我的数据集非常大(数亿个数据点)

我该怎么做


谢谢大家!

你在找那个笨蛋

第一个参数是集群的数据,第二个参数是集群坐标。返回值的第一个元素是每个集群的索引(标签),这是您想要的:

>>> vq( array([0,5,5]), array([1,2,3]) )
(array([0, 2, 2]), array([ 1.,  2.,  2.]))

你能提供一些带有示例聚类点的示例数据集吗?对不起,我忘了说数据集是数字的。因此,只需取任意一维浮点数数组。假设有五个集群中心也是浮动的。谢谢你的回复!