Я пытаюсь создать симуляцию, в которой бейсболист либо попадает на базу, либо выходит на основе этих заданных вероятностей (Base = .32 и Out = .68). Когда он не получает «Out», он попадает домой в 20% случаев. Он может ходить на биту столько раз, сколько захочет. Но когда у него 40 аутов, симуляция останавливается. Я хочу знать, сколько хоум-ранов этот игрок дал при указанных выше условиях.
Я создал функцию, которая даст мне то, что я хочу выше. Но это не останавливается, когда есть 40 аутов. Я чувствую, что цикл по времени поможет, но я не слишком знаком с ними. Любые другие советы также будут полезны. Я новичок в R.
Player = function(n) {
x = sample(c("Out","Base"), n , prob = c(.68,.32) ,replace = TRUE)
hit_sum = sum(x =="Base")*.20
out_sum = sum(x =="Out")
return(hit_sum)
}
new = Player(70)
new
Это просто дает мне, сколько домашних прогонов из выборки 70. Будет ли цикл while как-то применяться к приведенному выше коду? Спасибо.