[英]How to select points from matrix with given probability?
我有一个numpy.ndarray
points
代表一组坐标点:
[[0 0]
[0 1]
[0 2]
[1 0]
[1 1]
[1 2]
[2 0]
[2 1]
[2 2]]
我想得到这个点的一个子集some_points
,其中每个点都是以概率prob
独立获取的。 我怎样才能只使用numpy
来做到这一点?
PS 例如,如果prob=0.5
some_points
将包含大约一半的原始点。
例如,您可以创建一个包含来自均匀分布的 n 个样本的向量,其中 n 是点数,并将它们与您想要的概率进行比较。 对于所有小于你取对应点的概率的样本。 在代码中
import numpy as np
prob = 0.5
some_points = points[np.random.rand(points.shape[0]) < prob, :]
n = points.size
some_points = points[np.random.rand(n * n) < p]
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.