问题设置:
points
- 2Dnumpy.array
的长度N
。
centroids
-numpy.array
我从算法中得到的2D K-Means
,长度k
< N
。
作为算法的质心初始化例程MLE
,我想points
从centroids
.
所需输出:
形状为 (N, 2) 的A numpy.array
,由从中随机选择的 2D 点组成centroids
我的努力:
我试过将numpy.take
与 一起使用,numpy.random.choice
如中所示Code 1
,但它没有返回所需的输出。
代码 1:
import numpy as np
a = np.random.randint(1, 10, 10).reshape((5, 2))
idx = np.random.choice(5, 20)
np.take(a, idx)
Out: array([6, 2, 3, 3, 8, 2, 5, 2, 6, 3, 3, 8, 6, 6, 6, 6, 8, 2, 6, 5])
从numpy.take 文档页面我了解到它从展平数组中选择项目,这不是我需要的。
对于如何完成此任务的任何想法,我将不胜感激。在此先感谢您的帮助。
烙印99
哈士奇WWW
相关分类