我有3D数组
pcar=[[xa ya za]
[xb yb zb]
.
.
[xn yn zn]]和索引数组作为
[0,1,0....,2]这给出了pcar中的行应该放在哪个集群中,这样我就可以用不同的颜色来绘制它。簇的最大值为3。
输出应该是
clusters[0] = [[xa ya za], [xc yc zc], ...]
clusters[1] = [[xb yb zb], ...]
clusters[2] = [..., [xn yn zn]]我想用不同颜色的每个聚类点在图中打印点。
发布于 2014-04-14 18:11:57
据我理解,您希望生成一个集群列表,如下所示:
clusters[0] = [[xa ya za], [xc yc zc], ...]
clusters[1] = [[xb yb zb], ...]
clusters[2] = [..., [xn yn zn]]使用NumPy索引很容易做到这一点。让索引数组被称为indices。然后,
indices = np.asarray(indices)
num_clusters = 3
clusters = [pcar[indices==i] for i in xrange(num_clusters)]会给你想要的结果。
发布于 2014-04-14 17:14:47
类似于:
indices = [0,1,0....,2]
[pcar[i][index] for i, index in enumerate(indices)]
# [xa, yb, xc, ... zn]https://stackoverflow.com/questions/23065790
复制相似问题