Как использовать распределение Пуассона в Python

Как использовать распределение Пуассона в Python

Распределение Пуассона описывает вероятность получения k успехов за заданный интервал времени.

Если случайная величина X подчиняется распределению Пуассона, то вероятность того, что X = k успехов, можно найти по следующей формуле:

P(X=k) = λk * e – λ / k !

куда:

  • λ: среднее количество успехов за определенный интервал
  • k: количество успехов
  • e: константа, равная приблизительно 2,71828.

В этом руководстве объясняется, как использовать распределение Пуассона в Python.

Как сгенерировать распределение Пуассона

Вы можете использовать функцию poisson.rvs(mu, size) для генерации случайных значений из распределения Пуассона с определенным средним значением и размером выборки:

from scipy. stats import poisson

#generate random values from Poisson distribution with mean=3 and sample size=10
poisson. rvs (mu=3, size=10)

array([2, 2, 2, 0, 7, 2, 1, 2, 5, 5])

Как рассчитать вероятности, используя распределение Пуассона

Вы можете использовать функции poisson.pmf(k, mu) и poisson.cdf(k, mu) для вычисления вероятностей, связанных с распределением Пуассона.

Пример 1: Вероятность равна некоторому значению

Магазин продает в среднем 3 яблока в день. Какова вероятность того, что они продадут 5 яблок в данный день?

from scipy. stats import poisson

#calculate probability
poisson. pmf (k=5, mu=3)

0.100819

Вероятность того, что магазин продаст 5 яблок в данный день, равна 0,100819 .

Пример 2: Вероятность меньше некоторого значения

Один магазин продает в среднем семь футбольных мячей в день. Какова вероятность того, что этот магазин продаст четыре или меньше футбольных мячей в данный день?

from scipy. stats import poisson

#calculate probability
poisson. cdf (k=4, mu=7)

0.172992

Вероятность того, что магазин продаст четыре или меньше футбольных мячей в данный день, равна 0,172992 .

Пример 3: Вероятность больше некоторого значения

Один магазин продает в среднем 15 банок тунца в день. Какова вероятность того, что этот магазин продаст более 20 банок тунца в данный день?

from scipy. stats import poisson

#calculate probability
1-poisson. cdf (k=20, mu=15)

0.082971

Вероятность того, что магазин продаст более 20 банок тунца в данный день, равна 0,082971 .

Как построить распределение Пуассона

Вы можете использовать следующий синтаксис для построения распределения Пуассона с заданным средним значением:

from scipy. stats import poisson
import matplotlib.pyplot as plt

#generate Poisson distribution with sample size 10000
x = poisson. rvs (mu=3, size=10000)

#create plot of Poisson distribution
plt.hist (x, density= True , edgecolor='black')

Дополнительные ресурсы

Введение в распределение Пуассона
5 реальных примеров распределения Пуассона
Онлайн-калькулятор распределения Пуассона

Замечательно! Вы успешно подписались.
Добро пожаловать обратно! Вы успешно вошли
Вы успешно подписались на кодкамп.
Срок действия вашей ссылки истек.
Ура! Проверьте свою электронную почту на наличие волшебной ссылки для входа.
Успех! Ваша платежная информация обновлена.
Ваша платежная информация не была обновлена.