1 2 3 4 5 | dbinom(3,10,0.1) # 확률질량함수 dbinom(3.3,10,0.1) Warning message: In dbinom(3.3, 10, 0.1) : non-integer x = 3.300000 # ↑확률질량함수이기 때문에 연속형일때는 연산불가 |
d함수 :
x가 특정 값 하나일때만 됨
P(X=x) 확률 계산 : dbinom(x, size, prob)
- 확률질량함수 또는 확률밀도함수 제공
- 확률변수 x가 x일때의 매칭되는 y값(확률) 제공- ex) dbinom, dnorm, dt ......
dbinom( ) 함수 : 이항분포의 확률값
p함수 :
P(X<=x) 확률 계산 : pbinom(x, size, prob, lower.tail= TRUE )
P(X>x) 확률 계산 : pbinom(x, size, prob, lower.tail= FALSE)
- P(X<=x) 값 제공 # n회 이하일 때의 확률
- ex) pbinom, pnorm, pt......pbinom( ) 함수 : 이항분포의 누적확률값
q함수 :
가설검정시 중요한 함수
- P(X<=x) = p를 갖는 x 값 출력
- 이항분포에서 성공횟수가 몇 회 이하일 확률이 50%일까?
- ex) qbinom, qnorm, qt......
qbinom( ) 함수 : 이항분포의 백분위수
1 2 3 4 5 6 7 8 9 | # 이항분포 테스트 # 1. n=10, p=0.1인 이항분포 출력 dbinom(0, 10, 0.1) # P(X=0) dbinom(1, 10, 0.1) # P(X=1) dbinom(2, 10, 0.1) # P(X=2) p1 <- dbinom(0:10, 10, 0.1) # P(X=x), 0 <= x <= 10 dev.new() plot(0:10, p1, type='l') | cs |
1 2 3 4 5 6 7 8 9 | # 2. 위의 이항분포에서 성공횟수가 2회 이하일 확률(P(x<=2)) # => 0회,1회,2회 성공할 확률의 합 # => P(X=0) + P(X=1) + P(X=2) dbinom(0, 10, 0.1) + dbinom(1, 10, 0.1) + dbinom(2, 10, 0.1) pbinom(2,10,0.1) # n회 이하일때의 확률 plot(0:10, p1, type='l') abline(v=2) # 수직선 abline(h=0) # 수평선 | cs |
1 2 3 4 5 6 7 8 9 10 | # (0,0), (0,f(0)), (1,f(1)), (2,f(2)), (2,0) # 3. polygon(vector_x, vector_y) #주어진 점을 연결(도형생성) f <- function(x) { dbinom(x, 10, 0.1) } polygon(c(0, 0, 1, 2, 2), c(0, f(0),f(1), f(2), 0), col = 'red') | cs |
1 2 | # 4. P(X<=a) = p 인 값 찾기 qbinom(0.8, 10, 0.1) [1] 2 | cs |
1 2 3 4 5 6 7 8 9 10 11 12 | # 5. P(X<=a) = 0.8을 만족하는 임계값(a) 시각화 dev.new() par(mar=c(5,3,1,1)) plot(0:10, p1, type='l', ylim = c(-0.05,0.5), ann=F, axes=F) axis(2, ylim = c(-0.05,0.5)) abline(h=0) # 수평선 polygon(c(0, 0, 1, 2, 2), c(0, f(0),f(1), f(2), 0), col = 'red') text(1,0.2,'80%') arrows(2, -0.5, 2, 0, length = 0.1) #화살표 그리기 | cs |
[정규분포]
- 확률변수 x와 그 확률과의 관계가 종모양을 띄는 경우(평균을 중심으로 좌우대칭)
- 이항분포가 정규분포가 될 수도 있음
- 평균과 표준편차로 분포의 모양을 결정
- 확률의 총합이 1
[표준정규분포]
- 평균으로 뺀 값을 표준편차로 나눈 표준화된 값이 가지는 분포 X~N(0,1)
- 해당 확률 변수를 평균으로 나누고 그것의 표준편차로 나눠주는 작업
- 어떤 정규분포든 표준화시키면 평균이 0, 분산이 1
- 모든 정규분포는 표준정규분포로 변환 가능
1 2 3 4 5 6 7 8 9 10 11 | # 정규분포 그리기 x1 <- seq(-3,3,0.01) y1 <- dnorm(x1,0,1) dev.new() plot(x1, y1, type= 'l', col = 'red', ann = F, axes = F) abline(h=0) abline(v=0, lty=2) # lty=2 : 점선 text(0, 0, '0', cex=0.8) text(-3, 0, '-3', cex=0.8) text(3, 0, '3', cex=0.8) | cs |