我试图将一系列循环/函数组合成一个包罗万象的函数,然后能够看到不同输入值的结果。虽然这些步骤在独立时(当只有一个输入时)正常工作,但我无法使整个功能正常工作。我得到的答案是1的向量,这是不正确的。
目标是计算随机生成的结果中连续零的出现次数,然后查看当我更改提供的初始百分比输入时,连续零发生的概率如何变化。
有没有人知道我做错了什么?我现在已经在几个不同的点上盯着这个,但无法弄清楚我哪里出错了。谢谢你的帮助。
### Example
pctgs_seq=seq(0.8,1,.01)
occurs=20
iterations=10
iterate_pctgs=function(x) {
probs=rep(0,length(pctgs_seq))
for (i in 1:length(pctgs_seq)) {
all_sims=lapply(1:iterations, function (x) ifelse(runif(occurs) <= i, 1, 0))
totals=sapply(all_sims,sum)
consec_zeroes=function (x) {
g=0
for (i in 1:(length(x)-1))
{ g= g+ifelse(x[i]+x[i+1]==0,1,0) }
return (g) }
consec_zeroes_sim=sapply(all_sims,consec_zeroes)
no_consec_prob=sum(consec_zeroes_sim==0)/length(consec_zeroes_sim)
probs[i]=no_consec_prob }
return (probs)
}
answer=iterate_pctgs(pctgs_seq)