用零和一个填充numpy数组的最快方法

Hig*_*ohn 2 python random numpy

我想随机填充一个任意大小的numpy数组,其中包含0和1.在每个条目上应该有一个概率为p的一个.

    for x in range(l):
        rn = numpy.random.uniform(0, 1)
        if rn <= p:
            arr[x] = 1.0
        else:
            arr[x] = 0.0
Run Code Online (Sandbox Code Playgroud)

你知道更快的方法吗?

ken*_*ytm 7

您想要使用二项分布.

arr = numpy.random.binomial(1, p, count)
Run Code Online (Sandbox Code Playgroud)