본문 바로가기

공부 : 금융공학, 금융, 통계, 공학, 경제 등

예제 4.7 [qqplot() 이해가 잘 안 감.]

베타 분포를 생성. 감마분포 2개를 만들어서 베타분포를 만들어냄. 정의에 따라 베타분포가 두 개의 감마분포에 의해 형성됨.

cf.

 

$$ U \sim Gamma(r,\lambda), V\sim Gamma(s,\lambda) \\ \rightarrow X= U/(U+V) \sim Beta(r,s) ; $$

라고 합니다. (단, U, V는 독립)

이걸 바탕으로 코드를 짜 보면

#Beta(3,2)를 따르는 난수 추출
n <- 1000 #역시나 1000개
a <- 3; b<-2
#u, v에 random gamma (=rgamma) 붙여넣기
#rgamma(n,a,lambda) -> n개의 gamma(a,lambda)난수 벡터 생성
u <- rgamma(n, shape=a, rate=1) #lambda가 몇이든 상관없지만
v <- rgamma(n, shape=b, rate=1) #1인게 제일 편-안
x <- u/(u+v) #행렬계산 제공해주네요

#q-q plot 제시
q <- qbeta(ppoints(n),a,b) #q: quantile, qbeta: quantile beta
#ppoints() (0,1)구간에 동일한 길이의 점 n개 찍어줌.
#그러므로 q = n
qqplot(q,x, cex=0.25, xlab="Beta(3,2)", ylab="Sample")
#qqplot이 데이터 순서대로 해주는건가..?
#cex=plot된 점들의 크기
#xlab, ylab = x, y label(라벨 이름)
abline(0,1)
#abline(a,b) : 절편 a, 기울기 b인 직선 그리기

입니다.

예제 4.8 통해서 qqplot 개념 보충할 수 있습니다.