【发布时间】:2020-05-14 11:39:34
【问题描述】:
我正在尝试模拟反复翻转的有偏硬币,直到连续出现 2 个正面或连续出现 2 个反面(然后翻转停止)。我想求概率P(连续两个正面出现在连续两个反面之前)。
寻求帮助将“尾巴”翻转到循环中。谢谢
flip <- function(bias_p) {
n_flips <- 0
head <- 0
tail <- 0
while (head != 2 & tail != 2) {
n_flips <- n_flips + 1
head_flips <- sample(c(1,0), 1, prob = c(bias_p, 1 - bias_p))
if(head_flips == 1) ((head <- head + 1) & (tail <- 0))
else ((tail <- tail + 1) & (head <- 0))
}
return(c(head, tail))
}
y <- replicate(5000, flip(0.8))
length(which(y[1,] ==2)) / (ncol(y))
【问题讨论】:
-
你能展示你目前拥有的代码吗,包括你目前尝试编写一个循环?
标签: r statistics simulation probability distribution