擅长:python、mysql、java
<p>下面是问题1的答案。你可以很容易地把它推广到其他问题上。在</p>
<pre><code># Define a dummy indicating a '5 response'
df['Q1'] = np.where(df['Question_1']==5 ,1, 0)
# Create a weighted version of the above dummy
df['Q1_w'] = df['Q1'] * df['weight']
# Compute the sum by race
ds = df.groupby(['race'])[['Q1_w', 'weight']].sum()
# Compute the weighted average
ds['avg'] = ds['Q1_w'] / ds['weight']
</code></pre>
<p>基本上,你首先用种族来计算权重和权重的总和,然后除以权重之和。
这就是加权平均数。在</p>