본문 바로가기

확률론(in R)

R로 하는 확률 문제 풀이(수능 2024 확률과통계 26번)

손풀이

> coin<-c("H","T")
> coin
[1] "H" "T"
> omega26<-expand.grid(c1=coin,c2=coin,
+                      c3=coin,c4=coin)
> omega26
   c1 c2 c3 c4
1   H  H  H  H
2   T  H  H  H
3   H  T  H  H
4   T  T  H  H
5   H  H  T  H
6   T  H  T  H
7   H  T  T  H
8   T  T  T  H
9   H  H  H  T
10  T  H  H  T
11  H  T  H  T
12  T  T  H  T
13  H  H  T  T
14  T  H  T  T
15  H  T  T  T
16  T  T  T  T
#카운팅함수 만들기.
> countH<-function(x) sum(x=="H")
> countT<-function(x) sum(x=="T")
> omega26$H_sum<-apply(omega26,1,countH)
> omega26$T_sum<-apply(omega26,1,countT)
> omega26 %>% head()
  c1 c2 c3 c4 H_sum T_sum
1  H  H  H  H     4     0
2  T  H  H  H     3     1
3  H  T  H  H     3     1
4  T  T  H  H     2     2
5  H  H  T  H     3     1
6  T  H  T  H     2     2

> #X:동전 4개 동시에 던졌을 때, 나오는 앞면의 수.
> X_prime<-omega26 %>% filter(omega26$H_sum %in% c(0,1))
> X_prime
  c1 c2 c3 c4 H_sum T_sum
1  T  T  T  H     1     3
2  T  T  H  T     1     3
3  T  H  T  T     1     3
4  H  T  T  T     1     3
5  T  T  T  T     0     4

> nY2<-omega26 %>% filter(omega26$H_sum >=2) %>% nrow()
> #Y:이산확률변수. E(Y)?
> #E(Y)=X*P(Y=X)+2*P(Y=2)
> PY2<-nY2/nrow(omega26)
> PY2
[1] 0.6875

> nX_prime0<-X_prime %>% filter(X_prime$H_sum ==0) %>% nrow()
> PX_prime0<-nX_prime0/nrow(omega26)
> PX_prime0
[1] 0.0625

> nX_prime1<-X_prime %>% filter(X_prime$H_sum ==1) %>% nrow()
> PX_prime1<-nX_prime1/nrow(omega26)
> PX_prime1
[1] 0.25


> 0*PX_prime0+1*PX_prime1+2*PY2
[1] 1.625

> 0*PX_prime0+1*PX_prime1+2*PY2==13/8
[1] TRUE