始める無料で始める

分布内の値を強調表示する

より良い可視化のためにデータを前処理する必要があることがあります。欠損値の処理には .dropna().fillna() という2つの方法があります。また、特定の列に対して .quantile() を使って条件を適用し、あるパーセンタイルを超える(または下回る)外れ値をフィルタリングして除外できます。

動画では、特定の値を強調するために、軸全体に位置 x の垂直線を追加する方法も見ました。

Axes.axvline(x=0, color=None, ...)

この演習では、世界の所得分布を最後にもう一度確認し、95パーセンタイルを超える外れ値を除外して分布をプロットし、平均値と中央値の両方を強調表示します。pandaspdseabornsnsmatplotlib.pyplotplt としてインポート済みで、前の演習で使った income DataFrame はワークスペースで利用できます。

この演習はコースの一部です

Pythonでの金融データのインポートと管理

コースを見る

演習の手順

  • 'Income per Capita'inc_per_capita に代入します。
  • inc_per_capita のうち、95パーセンタイルより小さい行だけにフィルタし、同じ変数に代入し直します。
  • フィルタ後の inc_per_capita について、デフォルト設定のヒストグラムをプロットし、ax に代入します。
  • ax.axvline()color='b' として使い、inc_per_capita の平均を青で強調表示します。
  • ax.axvline()color='g' として使い、中央値を緑で強調表示します。結果を表示しましょう!

実践的なインタラクティブ演習

このサンプルコードを完成させて、この演習に挑戦してみましょう。

# Create inc_per_capita
inc_per_capita = ____

# Filter out incomes above the 95th percentile
inc_per_capita = inc_per_capita[____ < ____]

# Plot histogram and assign to ax
ax = ____

# Highlight mean
ax.axvline(inc_per_capita.mean(), color='b')

# Highlight median
ax.axvline(inc_per_capita.median(), color='g')

# Show the plot
plt.show()
コードを編集して実行