如何根据特定条件分配概率?

时间:2018-08-31 12:58:04

标签: python numpy random

我在这里碰壁。因此我随机抽取了10个元素作为样本,并且我希望根据某些条件为它们提供概率。可以说我有这个随机样本[1、3、5、7、13、16、6、9、22、15],所以我想给每个数字一个基于距int的相对距离的概率8。是从8减去概率。在这种情况下,7个和9个具有相同的最大概率,22个具有最小的概率?

我试图找到一些numpy函数,但没有成功。

谢谢!

1 个答案:

答案 0 :(得分:1)

您必须做两件事。创建概率,然后根据概率进行选择。要创建它

data = np.array([1, 3, 5, 7, 13, 16, 6, 9, 22, 15])
p = 1 / np.abs(data - 8)

(这只是个主意,您没有确切说明希望概率随距离变化的方式)

第二部分,numpy.choice函数(最近的 numpy版本为)可以接受数组p并从data