我正在寻找一种生成从指定基础分布中采样的随机字节的方法。例如从具有给定均值和方差的正态分布生成的字节,从具有指定lambda的泊松分布生成的字节,等等。
在文档中,我已经使用numpy.random.bytes(...)
,它会生成 random 个字节,我认为这些字节是从统一分发中采样的。但是,我希望基于numpy的代码段可以从numpy sampling distributions
答案 0 :(得分:1)
生成[0,256]范围内的随机值,或将它们归一化到该范围内(通过乘法,减法或加法),然后将结果截断为uint8
整数。然后可以将该结果转换为字节。
例如,在中点附近产生正态(高斯)分布:
values = np.random.normal(128, 35, size=32)
as_bytes = values.astype(np.uint8).tobytes()
请注意,并非所有随机分布都适合用一系列0-255整数表示。