在 scipy 或 numpy 中结合置信区间和自定义泊松?

Combining Confidence Interval and custom Poisson in scipy or numpy?

提问人:Joseph_123 提问时间:10/27/2023 最后编辑:Joseph_123 更新时间:10/28/2023 访问量:87

问:

我想使用带有置信区间的泊松(自定义)。有没有办法将两者结合起来或类似? 或者无论你选择哪个都很好。scipynumpy

重要提示:我需要一些东西来考虑一、二、三的特定泊松情况

这是我用于经典的代码Confidence Interval

import numpy as np
import scipy.stats as st
  
data = [1, 1, 1, 2, 2, 2, 3, 3, 3, 3,
         3, 4, 4, 5, 5, 5, 6, 7, 8, 10]

x = st.t.interval(confidence=0.90, df=len(data)-1,
               loc=np.mean(data),
               scale=st.sem(data))

print(x)

这是我用于的代码custom Poisson

average = 1.43

Zero = ((average ** 0) * 2.7182818284 ** (-average)) / 1 * 100
One = ((average ** 1) * 2.7182818284 ** (-average)) / 1 * 100
Two = ((average ** 2) * 2.7182818284 ** (-average)) / 2 * 100
蟒蛇 python-3.x numpy 数学 scipy

评论


答:

0赞 pensive 10/27/2023 #1

您需要计算泊松分布的均值和标准误,然后使用泊松分布中的相应临界值来求置信区间。

import numpy as np
import scipy.stats as st

average = 1.43

# Calculate the mean and standard error for the Poisson distribution
mean = average
standard_error = np.sqrt(average)

confidence_level = 0.90

lower_critical_value = st.poisson.ppf((1 - confidence_level) / 2, mu=mean)
upper_critical_value = st.poisson.ppf(1 - (1 - confidence_level) / 2, mu=mean)

# Calculate the confidence interval
confidence_interval = (mean - lower_critical_value, mean + upper_critical_value)

评论

0赞 Joseph_123 10/27/2023
你的代码很清楚,除了一件事:正如你所看到的,我计算了一、二和三的泊松。我定制了泊松。在您的代码中,您使用 Poisson 做什么?我读过“/2”,那么你用泊松来表示“二”吗?(我是怎么用的?下临界值和上临界值指的是哪个泊松?(我的一、二还是Theree?我不明白
0赞 Joseph_123 10/27/2023
你能用我修改后的泊松(一、二、三)修改你的代码吗?我不明白你是如何在代码中使用泊松的,因为我需要它与一、二、三区分开来
0赞 pensive 10/27/2023
在我提供的代码中,我使用泊松分布来计算置信区间的临界值,这些临界值用于整个分布,而不是专门用于“一”、“二”或“三”。
0赞 pensive 10/27/2023
在泊松分布中,均值和方差相等,置信区间的临界值基于泊松分布的属性。当您使用 st.poisson.ppf() 计算临界下限值和临界上限时,您获得的是整个分布的值,而不仅仅是“一”、“二”或“三”等特定值的值。
0赞 Joseph_123 10/28/2023
因此,代码的输出指示最小临界值为 0%,最大临界值为 4%。我在寻找别的东西,我不是在寻找这个,我不是在寻找这个结果,所以我并不真正理解平均 1.43 的临界值 0 和 4 是什么。平均值为 1.43,最小和最大临界值表示什么?你能更好地解释一下 0 和 4 与平均值的关系吗?例如,如果 upper_critical_value 是 4,那么它与 1.43 的关系意味着什么?谢谢