我试图翻译一些代码来用Python进行Monte Carlo模拟,具体如下,但我很难找到等效的函数复制到我的Jupyter笔记本中
estima_probabilidad <- function(clase, num_veces = 10000){
resultados <- replicate(num_veces, { # Retorna un vector lógico
colegas <- sample(dias, clase, replace = TRUE)
any(duplicated(colegas))
})
# Probabilidad:
mean(resultados)
}
estima_probabilidad(25)
#> [1] 0.572```
在R中,
replicate
是围绕sapply
的包装器,它本身只是一个伪装的(优化的)for
循环。因此,要在Python中实现replicate
,需要使用for
循环例如:
在R
用Python
或者更抽象地/一般地:
[your_custom_Python_function_returning_a_list for _ in range(5)]
翻译成replicate(5, your_vectorised_custom_R_function, simplify = FALSE)
注:您的R代码不可复制
dias
似乎是在别处定义的全局变量相关问题 更多 >
编程相关推荐