Julia,在 R 中复制“rbinom()”的函数

Jim*_*aas 5 random binomial-cdf julia bernoulli-numbers

我四处挖掘并用谷歌搜索,但没有找到一个例子。我确信 Julia 有一个强大的函数(在基数中?)以给定的概率生成随机二项式(伯努利?)“成功”。我找不到它或弄清楚如何在 Julia 中执行等效操作:

> rbinom(20,1,0.3)
 [1] 1 1 1 0 0 0 1 1 0 0 0 0 1 1 0 0 0 1 0 0

Run Code Online (Sandbox Code Playgroud)

谢谢。J

DNF*_*DNF 7

您可以rand为此使用分布和函数。任何分布都可以传递给rand. 要复制您想要的内容:

julia> using Distributions

julia> p = Binomial(1, 0.3)   # first arg is number of trials, second is probability of success
Binomial{Float64}(n=1, p=0.3)

julia> rand(p, 20)
20-element Array{Int64,1}:
 0
 1
 1
 0
 1
 0
 0
 1
 0
 1
 1
 1
 0
 0
 1
 0
 1
 0
 0
 1
Run Code Online (Sandbox Code Playgroud)

  • 据我所知,Julia 是一种比 R 更通用的语言,R 基本上是一种统计语言。因此,功能在很大程度上保留在库中。它根本不会影响性能。这是一个经过深思熟虑的设计选择,在过去的几年里,很多东西已经从基地中移出了。我仍然不会称它为非常基础的,Base 库有很多内置功能,对于某些人来说太多了。 (2认同)
  • 我发现这种方法非常优雅,而不是从不同的分布中随机采样数十个不同的名称。 (2认同)