回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我有熊猫数据帧</p>
<pre><code>test = pd.DataFrame({'d':[1,1,1,2,2,3,3], 'id':[1,2,3,1,2,2,3], 'v1':[10, 20, 15, 35, 5, 10, 30], 'v2':[3, 4, 1, 6, 0, 2, 0], 'w1':[0.1, 0.3, 0.2, 0.1, 0.4, 0.3, 0.2], 'w2':[0.8, 0.1, 0.2, 0.3, 0.1, 0.1, 0.0]})
d id v1 v2 w1 w2
0 1 1 10 3 0.10 0.80
1 1 2 20 4 0.30 0.10
2 1 3 15 1 0.20 0.20
3 2 1 35 6 0.10 0.30
4 2 2 5 0 0.40 0.10
5 3 2 10 2 0.30 0.10
6 3 3 30 0 0.20 0.00
</code></pre>
<p>我想得到一些加权值</p>
^{pr2}$
<p>我怎样才能把结果很好地输入df。看起来像</p>
<pre><code>test.groupby('id').sum()['w1v1'] / test.groupby('id').sum()['w1']
id
1 22.50
2 11.00
3 22.50
</code></pre>
<p>但是包含每个加权值的列,就像</p>
<pre><code>id w1v1 w1v2 w2v1 w2v2
1 22.50 ... ... ...
2 11.00 ... ... ...
3 22.50 ... ... ...
</code></pre>
<p>有什么办法让我轻松快捷地完成这个任务吗?在</p>