title: Select cells randomly from NumPy array - without replacement
body: <p>I'm writing some modelling routines in NumPy that need to select cells randomly from a NumPy array and do some processing on them. All cells must be selected without replacement (as in, once a cell has been selected it can't be selected again, but all cells must be selected by the end).</p>
  
  <p>I'm transitioning from IDL where I can find a nice way to do this, but I assume that NumPy has a nice way to do this too. What would you suggest?</p>
  
  <p><strong>Update:</strong> I should have stated that I'm trying to do this on 2D arrays, and therefore get a set of 2D indices back.</p>