也许你不需要一个完整的分布类型,但只是从这样的分布采样就足够了吗?
如果是这种情况,那么最简单的方法是:
using StatsBase # corrected a typo here
values = [1.0, 1.1]
probabilities = [0.3, 0.7]
w = Weights(probabilities)
sample(values, w) # sampling
Run Code Online (Sandbox Code Playgroud)
如果你真的想要使用一个发行版,你现在可以得到的最接近的东西是:
using Distributions
values = [1.0, 1.1]
probabilities = [0.3, 0.7]
d = Categorical(probabilities)
values[rand(d)] # sampling
Run Code Online (Sandbox Code Playgroud)
但它会慢一点.
如果您想在分发包类型系统之后定义您自己的发行版,最简单的方法是使用此代码https://github.com/JuliaStats/Distributions.jl/blob/master/src/univariate/discrete/categorical.jl和根据你的需要修改它(但这将是我所说的一项重大努力).
归档时间: |
|
查看次数: |
476 次 |
最近记录: |