동전 던질때 앞면이 나올 확률

 네이버 지식인에서  질문한 내용이다. 



질문
통계학 R 실습
R에서 난수를 이용하여 동전의 앞면이 나올 확률을 구하는 코드 좀 알려 주세요 RStudio 사용합니다!

  sample 함수의 복원추출 방식으로 간단하게 함수를 작성 하여,  확률을 계산 하였고,  
여러 회 던졌을때의 분포 그래프도 그렸다.  

# 앞면이 "0" 이고  뒷면이 1 일때 
coinDie = function(n){
  dist <-  sample(0:1, n, replace = T)
  t = sum(dist ==0) 
  
  return(t/ n)
  
}

# 10번 던졌을때의 확률 
coinDie(10)
## [1] 0.5
# 100번 던졌을때의 확률
coinDie(100)
## [1] 0.42
# 1000번 던졌을때의 확률
coinDie(1000)
## [1] 0.504
# 10000번 던졌을때의 확률
coinDie(10000)
## [1] 0.5023
# 100000번 던졌을때의 확률
coinDie(100000)
## [1] 0.50124
for(i in 1:100){
  n = 1.1^i
  n = round(n)
#  print( paste0(n,"번 던젔을때 확률 : ",  round(coinDie(n),4)))
  
  temp <- data.frame(n, prof = round(coinDie(n),4))
  
  if(i == 1){
    df = temp
  } else {
    df = rbind(df,temp)
    
  }
}

library(ggplot2)
library(dplyr)
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
 df %>% 
   filter(n >3) %>% 
   ggplot(aes(n, prof)) +
   geom_line(col = "red")

댓글 없음:

댓글 쓰기

[주식 클로드 자동매매 프로젝트] 제2편. 데이터 인프라 구축 — 모델보다 데이터가 먼저다

 머신러닝 모델을 이야기하기 전에, 그 모델이 먹는 데이터가 어디서 어떻게 왔는지부터 정직하게 밝혀야 한다. 이 프로젝트에서 가장 많은 시간이 들어간 부분은 화려한 모델 튜닝이 아니라, "내가 정말 그 데이터를 갖고 있는가"를 확인하...