如何通过算法生成概率列表

问题描述 投票:0回答:0

请原谅我缺乏统计术语。

我已经得到了一个任意的值列表来采样,目前: list_to_sample = [1, 2, 3, 4, 5] 此时,列表包含什么并不重要,重要的是列表的长度是 5

而且,我已经得到了一个几乎任意的“类帕累托”概率列表,目前: probability_list = [0.5, 0.3, 0.1, 0.05, 0.05](帕累托式因为它不遵循 80-20,而是 80/40,因为前 80% 的可能选择值将在前 40%列表。

我现在试图概括这一点,这样如果 list_to_sample 变得更长,比如 [1, 2, 3, 4, 5, 6, 7, 8] 我可以扩展 probability_list 并保持相同的曲线。

我正在尝试使用 np.pareto.pdf 生成类似于以下内容的概率列表: [0.5, 0.3, 0.1, 0.05, 0.05] 并且列表的总和(概率的总和)等于 1

具体来说,我试过这个:

将 numpy 导入为 np

list_to_sample = [1, 2, 3, 4, 5] output = np.array([pareto.pdf(x=list_to_sample, b=1, loc=0, scale=1)])

输出: [[0.5 0.125 0.05555556 0.03125 0.02 ]]

我试过更改参数无济于事。我希望通过改变参数可以让帕累托产生预期的结果。到目前为止,没有运气。

也许有更好的函数来生成(或扩展)概率列表。

python probability
© www.soinside.com 2019 - 2024. All rights reserved.