python - Using np.random.randint as fill_value -


i want create numpy array, each element amount of 1s in numpy array of size x created np.random.randint.

>>> x = 10 >>> np.random.randint(2, size=x) array([0, 1, 0, 1, 0, 1, 0, 1, 0, 1]) >>> sum(array([0, 1, 0, 1, 0, 1, 0, 1, 0, 1])) 5 

and using results in same array being used, instead of generating new random 1 each time

>>> np.full((5,), sum(np.random.randint(2, size=10)), dtype="int") array([5, 5, 5, 5, 5]) 

how can this, or there better way this? tried following

>>> = np.random.rand(10) >>> len(a[a < 0.5]) 7 >>> np.full((5,), len(np.random.rand(10)[np.random.rand(10) < 0.5]), dtype="int") array([7, 7, 7, 7, 7]) 

but can see resulted in same numbers. problem don't want use loops, , instead find way using numpy.

you generate matrix n arrays each of size x made of random ints. sum on each array,

import numpy np x = 10 n = 5 = np.sum(np.random.randint(2, size=[n,x]),0) 

i'm sure np.full not want here array initialisation single value.


Comments

Popular posts from this blog

python - How to insert QWidgets in the middle of a Layout? -

python - serve multiple gunicorn django instances under nginx ubuntu -

module - Prestashop displayPaymentReturn hook url -