title: Calculate weighted average using a pandas/dataframe
body: <p>I have the following table.  I want to calculate a weighted average grouped by each date based on the formula below.  I can do this using some standard conventional code, but assuming that this data is in a pandas dataframe, is there any easier way to achieve this rather than through iteration?</p>
  
  <pre><code>Date        ID      wt      value   w_avg
  01/01/2012  100     0.50    60      0.791666667
  01/01/2012  101     0.75    80
  01/01/2012  102     1.00    100
  01/02/2012  201     0.50    100     0.722222222
  01/02/2012  202     1.00    80
  </code></pre>
  
  <blockquote>
    <p>01/01/2012 w_avg = 0.5 * ( 60/ sum(60,80,100)) + .75 * (80/
    sum(60,80,100)) + 1.0 * (100/sum(60,80,100))</p>
    
    <p>01/02/2012 w_avg = 0.5 * ( 100/ sum(100,80)) + 1.0 * ( 80/
    sum(100,80))</p>
  </blockquote>