Random的使用
Random提供了一些随机数相关的基本物品
生成器
AbstractRNG是随机数生成器的抽象类型MersenneTwister(seed)生成一个梅森旋转随机数生成器,seed可以是非负整数或Vector{UInt32}RandomDevice()是操作系统提供的随机数生成器
rand
rand([rng=GLOBAL_RNG],[S],[dims...])使用生成器rng,从S中选择随机元素,使用维度参数dims...,其中S可以是:
可索引集合
抽象字典/集合类型
字符串
存在
typemin和typemax的类型(默认Float64)元组(1.1及以后)
randn([rng=GLOBAL_RNG],[T=Float64],[dims...])生成T类型的均匀分布随机数(平均数0,标准差1)randperm([rng=GLOBAL_RNG,] n::Integer)生成长度为n的排列(permutation)randcycle([rng=GLOBAL_RNG,] n::Integer)生成长度为n的循环排列(cyclic permutation)randexp([rng=GLOBAL_RNG], [T=Float64], [dims...])生成维度参数为dims...的符合幂分布(尺度为1)的分布randsubseq([rng=GLOBAL_RNG,] A, p) -> Vector生成指定数组的随机子序列
以上函数都有对应的加!版本
工具
randstring([rng=GLOBAL_RNG], [chars], [len=8])生成长度为len的随机字符串shuffle和shuffle!可以打乱数组