Как ответил @ James Curran , самый простой способ - применить отрицательное биномиальное распределение.
Если вы хотите определить свою пользовательскую функцию roll
, вы можете попробовать код ниже
roll <- function(n, X){
res <- rep(0,X)
for (i in 1:X) {
a <- 0
repeat {
if (sample(n,1)==n) break
a <- a + 1
}
res[i] <- a + 1
}
res
}
или
roll <- function(n, X){
res <- rep(0,X)
for (i in 1:X) {
a <- 0
while (sample(n,1)!=n) {
a <- a + 1
}
res[i] <- a + 1
}
res
}