獨斷論

R 균일분포 dunif, punif, qunif, runif 함수이용 본문

과학과 기술/R 통계

R 균일분포 dunif, punif, qunif, runif 함수이용

부르칸 2021. 3. 15. 08:14

연속균일분포(continuous uniform distribution)의 함수이용.

균일분포란 일정구간에서 확률값이 같은 확률분포를 말한다.

 

위 확률분포는 a = 1, b = 3 일때 아래와 같은 균일확률분포를 나타낸다.

$f=\begin{cases}\frac{1}{b-a}, & a \leq x \leq b \\ 0, & x \lt a , x \gt b \end{cases}$

 

 

dunif( ) 함수는 x가 주어졌을때 probability density function 값을 구하는 것이므로

> x = c(0, 1, 2, 3, 4)
> dunif(x, min = 1, max = 3)
[1] 0.0 0.5 0.5 0.5 0.0

위 그림과 같은 균일분포함수(a = 1, b = 3)에 대하여
x가 0, 1, 2, 3, 4일때 균일분포함수의 값은 각각 0, 0.5, 0.5, 0.5, 0이 된다.

 

 

punif( ) 함수는 cumulative distribution function의 값이므로 위 그림과 같은 균일분포함수의 x = 1.5일때 cumulative distribution function의 값은 아래와 같다. 그림에서 0.5(1.5 - 1)과 같다. 

> punif(1.5, min = 1, max = 3)
[1] 0.25

 

 

qunif( ) 함수는 cumulative probability값이 주어졌을때 x값을 구하는 것이므로 cumulative probability가 0.75일때 x값은 2.5이다. 0.5(x - 1) = 0.75가 되게하는 x값을 구하는 것과 같다.

> qunif(0.75, min = 1, max = 3)
[1] 2.5

 

runif( ) 함수는 uniform distribution을 갖는 난수를 발생한다.

> runif(5, min = 1, max = 3)
[1] 1.122526 2.124188 2.594190 2.364577 1.047633
Comments