世界の所得分布のデシル
デシル (decile) とは、あるデータセットの分布を10等分することで得られる特別な種類の分位点です。デシル(および他の種類の分位点)を作るには、次の numpy 関数を .quantile() に渡します。ここで、start は区間の開始値(含む)、stop は区間の終了値(含まない)、step は隣接する値の間隔です。
np.arange(start, stop, step)
動画で見たように、標準的な棒グラフはデータの分布を視覚化するのに最適です。.plot() に引数として kind='bar' を追加すると作成できます。
では、この知識を使ってデシルで所得分布の要約をプロットしてみましょう。pandas は pd、numpy は np、matplotlib.pyplot は plt としてインポート済みで、前の演習で使った income DataFrame もワークスペースに用意されています。
この演習はコースの一部です
Pythonでの金融データのインポートと管理
演習の手順
np.arange()を使って 10% から 90% までを 10% 刻みで生成し、結果をquantilesに代入して出力します。quantilesと.quantile()を使って、一人当たり所得のデシルをdecilesとして計算し、結果を出力します。- 結果を棒グラフでプロットして表示し、
plt.tight_layout()を適用します。タイトルは'Global Income per Capita - Deciles'とします。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Generate range of deciles
quantiles = ____
# Print them
print(quantiles)
# Calculate deciles for 'Income per Capita'
deciles = ____.quantile(____)
# Print them
print(deciles)
# Plot deciles as a bar chart
deciles.____(____=____, title='Global Income per Capita - Deciles')
# Make sure to use the tight layout!
plt.____()
# Show the plot
plt.show()