Menu
CoddyTech

箱ひげ図

CoddyのMachine Learningジャーニー「機械学習のための統計」セクションの一部。レッスン 24/64。

どのデータセットにも、誤字、異常値、記録的な日などの奇妙な値が隠れています。この章では、それらを見つけて扱う方法を学びます。まずは、その値を示すグラフ、箱ひげ図から始めましょう。

ポッドキャストのエピソードの長さを示す11個の点と、その横にある箱ひげ図。箱はQ1の39からQ3の47.5までで、43の中央値の線で分割されている。ひげは下端の32から上端の52まで伸び、75の位置に外れ値として示された点が1つある

ax.boxplotで描画します:

episodes = np.array([41, 36, 49, 43, 32, 46, 75, 40, 52, 38, 44])
fig, ax = plt.subplots()
ax.boxplot(episodes)
plt.show()

箱は、中央値で分けられたQ1からQ3までの値の中央の半分を示します。ひげは、離れすぎていない最後の値まで伸びます。

それらから離れた点は外れ値で、ほかの値から大きく離れています。モデルがそれらから学習する前に確認すべき値です。

challenge icon

チャレンジ

中級

ある家族が2週間分の読書時間を reading.csv に記録しました。1人につき1列で、分数が記録されています。プログラムは名前を読み取り、スターターコードでグラフを設定します。

  1. その人の列の箱ひげ図を描きます。
  2. 以下のように、その人の中央値と箱の端であるQ1とQ3を、それぞれ小数点以下2桁に丸めて出力します。

別の読者であるSamの場合、プログラムは次のように出力します。

Typical day: 97.5 minutes
Middle half: 90.5 to 108.75 minutes

そして、このグラフを描きます(Coddyがあなたのグラフについて説明します)。

タイトルがReading: Samで、縦軸にMinutesとある箱ひげ図:箱は約90から109までで、中央値の線は約98、ひげは87から128まで伸び、外れ値の点は61と205にある

自分で試してみよう

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

reading = pd.read_csv("reading.csv")
name = input()
# 以下の行は変更しないでください
fig, ax = plt.subplots()
ax.set_title(f"Reading: {name}")
ax.set_ylabel("Minutes")

# 以下にコードを書いてください
quiz icon腕試し

このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。

機械学習のための統計のすべてのレッスン

自分で練習してみよう: Pythonオンラインコンパイラ