본문 바로가기
programming language/MATLAB

MATLAB binomial r.v. generation

by __observer__ 2011. 4. 17.
반응형

지난 포스팅에서 bernoulli r.v. generation 에 대해 설명 드린 바 있습니다.

 
2011/04/06 - [MATLAB] - MATLAB Bernoulli random variable generation

 

오늘은 그 연장선상으로 binomial r.v. generation에 대해 설명 드리겠습니다.

 

binomial distribution은 이항 분포라고 하는데, 한번의 시행에서의 성공 확률이 p 인 경우 n 번의 시행에서 k 번 성공할 확률을 의미 합니다.

 

 



 

이렇게 말하니깐 잘 이해 못하시겠다면, 주사위의 예를 들면 이해 하기 편하실 것 같습니다.

 

주사위를 던져서 숫자 1이 나올 확률은 1/6 이죠. 10 번 던져서 k 번 만큼 숫자 1이 나올 확률이 이항 분포로 다음 식과 같이 표현 됩니다.

 

 

위 식에 k=0 ~ 10 의 값을 대입하면 pmf 값을 구할 수가 있죠.

 

그리고 pmf 를 누적 해서 합 하면 cdf 값이 되죠.

 

cdf 값이 있으면, uniform r.v. 를 사용하여 binomial r.v. 를 생성 할 수 있는 것이죠.

 



 

이에 대한 MATLAB 코드는 다음과 같습니다.

 

 



 

위 코드에 따른 binomial pmf 및 cdf 는 다음과 같습니다.

 

 



 

이제 위 코드 예에 대한 이론적 평균 및 분산을 구해 보죠.

 

이론적 평균 np= 10*1/6 = 1.6667 이고

 

이론적 분산 np(1-p) = 10*1/6*5/6=1.3889 입니다.

 

위 코드에 의해 생성된 binomial r.v.의 평균 및 분산은 다음과 같이 위 이론적 결과와 근사적으로 일치 함을 확인 할 수 있습니다.

 

 


반응형

'programming language > MATLAB' 카테고리의 다른 글

MATLAB 변수를 저장 하자~ mat file  (0) 2011.04.21
MATLAB NaN  (0) 2011.04.20
MATLAB 파일 출력  (0) 2011.04.19
MATLAB 파일 읽기 importdata()  (0) 2011.04.18
MATLAB cell class  (6) 2011.04.11
MATLAB taylor, Maclaurin serise  (0) 2011.04.10
MATLAB 그래프에 값 넣기 추가, gtext()  (0) 2011.04.09
MATLAB 그래프에 값 넣기  (0) 2011.04.09

댓글