1

我需要使用 zipf、几何等离散概率分布从给定集合生成数据集。

例如,假设给定一组元素 A=(1,2,3,4,5),我需要生成一个大小为 100 的数据集,这样;

- 数据集由 A 的元素组成

- 元素 (1,2,3,4,5) 根据 zipf 分布分布在数据集中,偏斜为 2。

我可以使用下面的代码创建具有 zipf 分布的固定大小的数据集。但是我无法指定数据集的元素。

import numpy as np
#Zipf Random Variable
skew = 1.1
data = (np.random.zipf(skew, 100)).tolist()
print(data)

[35522089825, 3, 1, 1, 27, 351, 414182459, 324375076, 1, 3, 12, 1, 9, 3, 2134, 18, 1440, 1769, 11532, 4, 1, 48, 16943335127, 2090, 3, 1, 1, 4, 1692174747, 19722895802355, 22, 764140, 1454, 58246, 36, 1420773326, 209, 525, 1892, 1, 1149, 3198, 166, 75762805593897, 123, 12519, 3774, 1687, 445894, 4967, 34, 12043, 31263, 6874042139879332, 630392, 1229, 87, 1, 16, 1, 898089, 1, 18034617, 116812052, 14445, 9, 5, 78, 8, 1, 35, 1245582, 323183185139, 454, 7, 13545, 5, 2, 2283516, 10, 40524, 46, 208154651674, 31, 3, 397738, 3114, 78, 4434, 332483452, 3470095640, 386116, 11, 64982836, 17, 226309346, 4518013, 107016, 107486762068, 4]
4

0 回答 0