當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


Julia rand用法及代碼示例


用法:

rand([rng=GLOBAL_RNG], [S], [dims...])

S 指定的值集中選擇一個隨機元素或隨機元素數組; S 可以

  • 可索引的集合(例如 1:9('x', "y", :z) ),
  • AbstractDictAbstractSet 對象,
  • 一個字符串(被認為是字符的集合),或者
  • 一種類型:然後,要從中選擇的值集等效於整數的typemin(S):typemax(S)(這不適用於 BigInt ),浮點數的[0, 1) 和複數浮點數的[0, 1)+i[0, 1)

S 默認為 Float64 。當除了可選的 rng 之外僅傳遞一個參數並且是 Tuple 時,它被解釋為值的集合( S )而不是 dims

Julia 1.1

支持 S 作為元組至少需要 Julia 1.1。

例子

julia> rand(Int, 2)
2-element Array{Int64,1}:
 1339893410598768192
 1575814717733606317

julia> using Random

julia> rand(MersenneTwister(0), Dict(1=>2, 3=>4))
1=>2

julia> rand((2, 3))
3

julia> rand(Float64, (2, 3))
2×3 Array{Float64,2}:
 0.999717  0.0143835  0.540787
 0.696556  0.783855   0.938235

注意

rand(rng, s::Union{AbstractDict,AbstractSet}) 的複雜度在 s 的長度上是線性的,除非可以使用具有恒定複雜度的優化方法,DictSetBitSet 就是這種情況。對於多次調用,請改用rand(rng, collect(s)),或酌情使用rand(rng, Dict(s))rand(rng, Set(s))

相關用法


注:本文由純淨天空篩選整理自julialang.org大神的英文原創作品 Base.rand — Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。