Полиномиальное распределение описывает вероятность получения определенного количества отсчетов для k различных исходов, когда каждый исход имеет фиксированную вероятность появления.
Если случайная величина X подчиняется полиномиальному распределению, то вероятность того, что исход 1 произойдет ровно x 1 раз, исход 2 произойдет ровно x 2 раза и т. д., можно найти по следующей формуле:
Вероятность = n! * (p 1 x 1 * p 2 x 2 * … * p k x k ) / (x 1 ! * x 2 ! … * x k !)
куда:
- n: общее количество событий
- x 1 : количество раз, когда возникает результат 1
- p 1 : вероятность того, что исход 1 произойдет в данном испытании.
В следующих примерах показано, как использовать функцию scipy.stats.multinomial() в Python для ответа на различные вопросы вероятности, касающиеся полиномиального распределения.
Пример 1
На трехсторонних выборах мэра кандидат А получает 10 % голосов, кандидат В получает 40 % голосов, а кандидат С получает 50 % голосов.
Если мы выберем случайную выборку из 10 избирателей, какова вероятность того, что 2 проголосовали за кандидата А, 4 проголосовали за кандидата В и 4 проголосовали за кандидата С?
Мы можем использовать следующий код в Python, чтобы ответить на этот вопрос:
from scipy. stats import multinomial
#calculate multinomial probability
multinomial. pmf (x=[2, 4, 4], n=10, p=[.1, .4, .5])
0.05040000000000001
Вероятность того, что ровно 2 человека проголосовали за А, 4 проголосовали за В и 4 проголосовали за С, равна 0,0504 .
Пример 2
Предположим, в урне 6 желтых, 2 красных и 2 розовых шарика.
Если мы случайным образом выберем из урны 4 шара с возвратом на место, какова вероятность того, что все 4 шара будут желтыми?
Мы можем использовать следующий код в Python, чтобы ответить на этот вопрос:
from scipy. stats import multinomial
#calculate multinomial probability
multinomial. pmf (x=[4, 0, 0], n=4, p=[.6, .2, .2])
0.1295999999999999
Вероятность того, что все 4 шара желтые, равна примерно 0,1296 .
Пример 3
Предположим, два студента играют в шахматы друг против друга. Вероятность того, что студент А выиграет данную игру, равна 0,5, вероятность того, что студент Б выиграет данную игру, равна 0,3, а вероятность того, что он сыграет вничью в данной игре, равна 0,2.
Если они сыграют 10 игр, какова вероятность того, что игрок А выиграет 4 раза, игрок Б выиграет 5 раз и 1 раз у них будет ничья?
Мы можем использовать следующий код в Python, чтобы ответить на этот вопрос:
from scipy. stats import multinomial
#calculate multinomial probability
multinomial. pmf (x=[4, 5, 1], n=10, p=[.5, .3, .2])
0.03827249999999997
Вероятность того, что игрок А выиграет 4 раза, игрок Б выиграет 5 раз и у них будет ничья 1 раз, составляет около 0,038 .
Дополнительные ресурсы
В следующих руководствах представлена дополнительная информация о полиномиальном распределении:
Введение в полиномиальное распределение
Калькулятор мультиномиального распределения
Что такое полиномиальный тест? (Определение и пример)