b = np.fromstring(np.random.bytes(nb), np.uint8, nb)
return np.unpackbits(b)[:n].reshape(shape).view(np.bool)
Эффективный с точки зрения памяти способ создания большого массива numpy, содержащего случайные логические значения