1

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

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

4

1 回答 1

1

在 [0, 256) 范围内生成随机值或将它们规范化到该范围(通过乘法、减法或加法),然后将结果截断为uint8整数。然后可以将结果转换为字节。

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

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

考虑到并非所有随机分布都适合以 0-255 整数系列表示。

于 2019-08-31T17:37:58.043 回答