Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

It seems like using np.random.choice is indeed a slow way to get a grid in which 5% of the values are 1. I would recommend using np.random.rand(size) >= mutations:

  > python3 -m timeit 'import numpy as np; mutations=0.05; rows=10; columns=10; np.random.choice([0,1], p=[(1-mutations), mutations],size=(rows,columns))'
  50000 loops, best of 5: 8.88 usec per loop`

  > python3 -m timeit 'import numpy as np; mutations=0.05; rows=10; columns=10; np.random.rand(rows,columns) <= mutations'
  200000 loops, best of 5: 1.06 usec per loop


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: