Python에서 다항 분포를 사용하는 방법


다항 분포는 각 결과가 고정된 발생 확률을 가질 때 k개의 서로 다른 결과에 대해 특정 개수의 카운트를 얻을 확률을 설명합니다.

다음 공식으로 확률 변수 를 찾을 수 있는 경우 :

확률 = 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이 발생할 확률

다음 예는 Python에서 scipy.stats.multinomial() 함수를 사용하여 다항 분포에 관한 다양한 확률 질문에 대답하는 방법을 보여줍니다.

실시예 1

시장을 위한 3자 선거에서 A 후보는 10%의 득표율을 얻었고, B 후보는 40%의 득표율을 얻었으며, C 후보는 50%의 득표율을 얻었습니다.

10명의 유권자 중 무작위 표본을 선택하면 2명이 A 후보에 투표하고 4명이 B 후보에 투표하고 4명이 C 후보에 투표할 확률은 얼마입니까?

이 질문에 답하기 위해 Python에서 다음 코드를 사용할 수 있습니다.

 from scipy. stats import multinomial

#calculate multinomial probability
multinomial. pmf (x=[2, 4, 4], n=10, p=[.1, .4, .5])

0.05040000000000001

정확히 2명이 A에, 4명이 B에, 4명이 C에 투표할 확률은 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

두 명의 학생이 서로 체스를 두고 있다고 가정해 보겠습니다. 학생 A가 주어진 게임에서 승리할 확률은 0.5이고, 학생 B가 주어진 게임에서 승리할 확률은 0.3이며, 주어진 게임에서 무승부가 있을 확률은 0.2입니다.

10번의 게임을 한다면 A선수가 4번 이기고, B선수가 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

A 선수가 4번 승리하고, B 선수가 5번 승리하고, 1번 동점이 될 확률은 약 0.038 입니다.

추가 리소스

다음 자습서에서는 다항 분포에 대한 추가 정보를 제공합니다.

다항 분포 소개
다항 분포 계산기
다항 테스트란 무엇입니까? (정의 및 예)

의견을 추가하다

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다