人口で加重した平均年齢を求める
動画でJasonが説明したように、加重平均を計算するには、まず重みと平均したい値の積の合計を求め、それを重みの合計で割ります。
たとえば、data = [10, 30, 50] を weights = [2,4,6] で加重平均したい場合、$\frac{2 \cdot 10 + 4 \cdot 30 + 6 \cdot 50}{2+4+6}$、つまり sum(weights * data) / sum(weights) を計算します。
この演習では、テーブルから列の加重平均を選択するために、select と func.sum() を組み合わせて使います。引き続き census データを用い、2000 年の州人口で重み付けした年齢の平均を計算し、その加重平均を性別ごとに集計します。
この演習はコースの一部です
Pythonで学ぶデータベース入門
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Import select and func
____
# Select the average of age weighted by pop2000
stmt = select([func.sum(____ * ____) / ____
])