如何生成一个函数来表示概率集合,以便我可以在点之间进行估计

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

我的特殊问题是我正在尝试寻找更好的方法来预测我的业务。
我有一张工作表及其可能性。看起来像这样:

工作 %可能 潜在时间
工作1 .4 40
工作2 .5 32

等等大约 25 个工作。

我想要的是生成一条曲线,表明在所有可能的工作中,我们很有可能赢得 10 个小时,因为这只需要少数工作或只需要其中一个较大的工作,并且随着我们接近 10 小时,可能性会降低。所有工作时间的总和可能性非常低,因为它取决于赢得所有工作。工作之间没有任何联系,因此赢得一份工作不会影响另一份工作的可能性。

我已将这些数据放入数据框中。我只是不确定组合所有这些概率的正确方法,以便我可以检查赢得一定小时数的概率是多少。我希望我们能够计算一些特定的点,然后拟合一条曲线。如果我能到达能够获得这些点的点,那么我就可以拟合曲线。

Chat gpt 没有帮助,因为它只是试图将所有概率相乘,我认为这是不正确的。我开始了解基本上创建以下所有可能的组合会是什么样子: 赢得 1 份工作、2 份工作、3 份工作、4 份工作、5 份工作、6 份工作,然后这些概率很容易计算,然后我可以拟合所有这些数据点。但我停了下来,因为我认为一定有一种更优雅的方式,而且我认为无论如何这是错误的。如果有两个完全排他的组合有 20% 的机会获得 40 小时,那么我不应该对它们进行平均,因为它们是概率......

python statistics probability
1个回答
0
投票

要在 Python 中生成表示概率集合并允许点之间估计的函数,您可以使用 scipy.interpolate 模块。这是一个示例代码片段:

from scipy.interpolate import interp1d

# Define the x and y values for the probabilities
x = [0, 1, 2, 3, 4]  # Input points
y = [0.1, 0.3, 0.6, 0.8, 1.0]  # Corresponding probabilities

# Create the interpolation function
interp_func = interp1d(x, y, kind='linear')

# Estimate probabilities between points
estimated_prob = interp_func(2.5)  # Estimate the probability at x = 2.5

print(estimated_prob)  # Output the estimated probability

在此示例中,interp1d 函数用于根据提供的输入点和相应的概率创建线性插值函数。您可以根据您的具体数据调整 x 和 y 值。然后可以使用 interp_func 来估计任何所需点的概率,例如代码片段中的 2.5。

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