AP/AP Statistics

순열과 조합 - 이항분포

티에스윤 2022. 3. 29. 12:10

순열 (Permutation)은 순서 있는 경우의 수를 찾는 방법으로 다음과 같은 공식으로 나타낼 수 있습니다. 

 

순서가 있을때 사용하는 공식으로 아래와 같이 순서가 나올 수 있는 경우의 수에서는 순열 공식을 사용해서 값을 구하면 쉽게 구할 수 있습니다. 

 

ex) 숫자 1,2,3,4로 3자리 열쇠 조합을 몇개 만들어 낼 수 있을까요? 

 

       4P3 = 4! / (4-3)! = 4*3*2 = 24

 

 

 

조합(Combination)은 순서가 필요하지 않을때 경우의 수를 찾는 방법으로 아래와 같은 공식으로 나타낼 수 있습니다. 

 

 

ex) 소위원회를 구성하려면 5명으로 구성된 위원회에서 3명의 위원을 선택해야 합니다. 소위원회를 구성할 수 있는 경우의 수는 얼마일까요. 

 

  5C3 = 5!/ 3!(5-3)! = 5*4*3*2*1/3*2*1*2*1  = 5*4 / 2*1 = 10

 

 

 

 

이항분포는 베르누이의 시행에서의 성공(p)과 실패(1-p)의 확률을 나타내는 것으로 조합 공식을 사용하여 경우의 수를 나타낼 수 있습니다. 공식은 아래와 같습니다. 

 

 

 

이항 분포 공식은 조합 공식과 베르누이의 시행의 조합이라고 볼 수 있습니다. 

 

 

ex) 전구(lightbulb)의 결함률(defective)이 0.1프로라고 한다면 a) 전구 4개의 결함률은 얼마인가? b)  전구 3개 중에서 2개의 결함률은 얼마인가? c) 전구 8개 중에서 3개의 결함률은 얼마인가? 

 

 

a) 0.1*0.1*0.1*0.1=0.1^4= 0.0001

b) 조합으로 본다면 0.1*0.1*0.9, 0.1*0.9*0.1, 0.9*0.1*0.1  이렇게 3가지의 경우가 나올수 있습니다. 0.009 ^ 3= 0.027

c) 구하고자 하는 베르누이 시행에서 성공에 대한 확률(여기서는 결함률)을 보면 0.1^3입니다. 

   0.1^3 * 0.9 ^(8-3) = -0.1^3* 0.9^5 =0.00059049 

   그리고, 조합에 대한 계산인 8개중에 3개의 결함률은 8C3 = 8!/3! 5! = 56 

   전체에 대한 이항공식을 적용하면 56*0.00059049 = 0.03306744 

 

 

이렇게 계산될 수 있습니다. 

 

 

 

파이썬으로 라이브러리를 활용하여 순열과 조합을 프로그래밍할 수 있습니다. 

 

 

itertools 라이브러리를 사용해서 permutioans함수를 사용하여 순열을 구할 수 있습니다. 

 

from itertools import permutations


sets = [1,2,3]
data = permutations(sets, 2)
for i in data:
   print(i)

결과) 

(1, 2)
(1, 3)
(2, 1)
(2, 3)
(3, 1)
(3, 2)
 

itertools 라이브러리를 사용해서 combinations함수를 사용하여 조합을 구할 수 있습니다. 

 

from itertools import combinations

sets = ['A''B''C']
data = combinations(sets, 2)
for i in data:
   print(i)
 
결과)

('A', 'B')

('A', 'C')

('B', 'C')

 

 

위 결과를 다시 바꿔서 순열로 나타낸 예제는 아래와 같습니다. 

 

from itertools import permutations

sets = ['A''B''C']
data = permutations(sets, 2)
for i in data:
   print(i)
 
 
('A', 'B')
('A', 'C')
('B', 'A')
('B', 'C')
('C', 'A')
('C', 'B')

 

위 예제를 보면 파이썬 리스트 ['A''B''C'] 를 조합과 순열로 계산했을때 나오는 결과가 다른 부분이 나타납니다.

 

파이썬 라이브러리를 이용하여 순열과 조합의 차이점에 대해 이해하기를 바라며 이항분포에 대한 이항공식에 대해서도 학습을 하였으면 합니다. 

 

 

 

https://angeloyeo.github.io/2021/04/23/binomial_distribution.html

 

이항 분포 - 공돌이의 수학정리노트

 

angeloyeo.github.io

 

 

https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=pss2072&logNo=220825832581 

 

[확률과 통계/순열과 조합] 순열과 조합 기본 개념 정리하기!

[확률과 통계/순열과 조합] 순열과 조합 기본 개념 정리하기! 지금 2학기 중간고사 시험기간이죠? 끝난 학...

blog.naver.com