2013-10-30 50 views
1

我有很多x,y坐标,我已经根据它们之间的距离进行聚类。 现在我想计算每个x,y坐标集群的质心度量。 有没有办法做到这一点?如何计算python中x,y坐标的质心

我的坐标的格式为:

coordinates_cluster = [[x1,x2,x3,...],[y1,y2,y3,...]] 

每个簇具有的三个点的最小长度,并且所有的点可以具有正面和负面的x和y值。 我希望有人能帮助我。

最佳, 马丁

(我使用Python 2.7版与Windows 7系统上篷1.1.1(32位)。)

+0

的问题是,我不知道从哪里开始... :-( –

+1

你知道很多关于计算质心(我不这样做,所以我会从这里开始http://en.wikipedia.org/wiki/Centroid) – Josh

+0

Th anks,我意识到:-) –

回答

5

我意识到,这并不难,但这里是计算x的质心的代码,y坐标:

>>> c = [[1,4,-5],[3,-2,9]] # of the form [[x1,x2,x3],[y1,y2,y3]] 
    >>> centroide = (sum(c[0])/len(c[0]),sum(c[1])/len(c[1])) 

    >>> centroide 
    (0, 3) 
+1

你确定整数结果,而不是一个更精确的小数或浮点数?你的质心是10/3或3.33333,而不是3。 – hankd

+0

好点...我将在sum()和len()上使用float()。 –