title: Weighted average using numpy.average
body: <p>I have an array:</p>
  
  <pre><code>In [37]: bias_2e13 # our array
  Out[37]: 
  [1.7277990734072355,
   1.9718263893212737,
   2.469657573252167,
   2.869022991373125,
   3.314720313010104,
   4.232269039271717]
  </code></pre>
  
  <p>The error on each value in the array is:</p>
  
  <pre><code>In [38]: bias_error_2e13 # the error on each value
  Out[38]: 
  array([ 0.13271387,  0.06842465,  0.06937965,  0.23886647,  0.30458249,
          0.57906816])
  </code></pre>
  
  <p>Now I divide the error on each value by 2:</p>
  
  <pre><code>In [39]: error_half # error divided by 2
  Out[39]: 
  array([ 0.06635694,  0.03421232,  0.03468982,  0.11943323,  0.15229124,
          0.28953408])
  </code></pre>
  
  <p>Now I calculate the average of the array using <code>numpy.average</code>, but using the <code>errors</code> as <code>weights</code>. </p>
  
  <p>First I am using the full error on the values, then I am using half the 
  error, i.e. the error divided by 2.</p>
  
  <pre><code>In [40]: test = np.average(bias_2e13,weights=bias_error_2e13)
  
  In [41]: test_2 = np.average(bias_2e13,weights=error_half)
  </code></pre>
  
  <p><strong>How do both the averages give me the same result</strong> when one array has errors which are half of that of the other?</p>
  
  <pre><code>In [42]: test
  Out[42]: 3.3604746813456936
  
  In [43]: test_2
  Out[43]: 3.3604746813456936
  </code></pre>