从分布生成随机字节数组

Generate random bytearray from a distribution

我正在寻找一种方法来生成从指定的基础分布中采样的随机字节。例如从具有给定均值和方差的正态分布生成的字节,从具有指定 lambda 的泊松分布生成的字节等等。

据文档所述,我使用了 numpy.random.bytes(...),它生成 随机 字节,我认为这些字节是从均匀分布中采样的。但是,我想要一个基于 numpy 的代码片段从可能列出的任何指定分布中生成指定数量的字节 numpy sampling distributions

生成 [0, 256) 范围内的随机值或将它们归一化到该范围(通过乘法、减法或加法),然后将结果截断为 uint8 integers.That 结果可以是转换为字节。

例如,围绕中点生成正态(高斯)分布:

values = np.random.normal(128, 35, size=32)
as_bytes = values.astype(np.uint8).tobytes()

请注意,并非所有随机分布都适合用一系列 0-255 整数表示。