title: What does numpy's percentile function do exactly?
body: <p>From my understanding, <a href="http://docs.scipy.org/doc/numpy/reference/generated/numpy.percentile.html" rel="noreferrer">numpy's percentile</a> compute the qth percentiles of the data.</p>
  
  <p>But how does it do exactly?</p>
  
  <hr>
  
  <p>Say, given <code>x = np.array([1.3, 1.7, 2.4, 2.8, 3.5, 5.6, 6.6, 7.7, 8.8, 9.9])</code> (10 floats inside).</p>
  
  <p>if I do <code>np.percentile(x, 100)</code>, it gives back <code>9.9000000000000004</code>.</p>
  
  <p>if I do <code>np.percentile(x, 90)</code>, it should returns <code>8.8</code>, right? But it gives back <code>8.9100000000000001</code>.</p>
  
  <hr>
  
  <p>Why there are such diffs? Are these diffs acceptable?</p>