randDiscrete

New in version 1.30.18.

语法

randDiscrete(v, p, count)

参数

v 向量或元组,表示样本数据。

p 与 v 等长的浮点型向量,其每个元素必须是正数,对应 v 中采样元素的概率分布。系统会自动将 p 的元素归一化。

count 正整数,表示输出的随机向量的长度。

详情

根据给定的分布概率 p,生成向量 v 的随机样本。生成样本的长度由 count 指定。

例子

$ randDiscrete(1..5, [0.1, 0.1, 0.2, 0.2, 0.4], 10)
[2,3,5,2,5,5,2,1,1,2]

//若概率和不为1,系统会自动归一化
$ randDiscrete(1..5, [0.1, 0.2, 0.3, 0.4, 0.5], 5)
[5,1,2,3,5]

$ randDiscrete(`A`B`C`E`F, [0.1, 0.2, 0.3, 0.4, 0.5], 5)
["C","E","B","C","F"]

// 输入元组,对元组中的每个元素进行采样
$ randDiscrete([[1,2], [2,3,4], 'S', 'abc'], [0.3, 0.3, 0.2, 0.1], 10)
('S',[2,3,4],[1,2],[2,3,4],[1,2],'S','S',[2,3,4],[2,3,4],[2,3,4])