クリーム色の背景、色付き表示、高コントラスト、大きな文字のほうが読みやすいですか?配色と文字を選ぶと、すべてのページに一度で反映されます。

無料レッスン

平均、中央値、範囲を求める

このレッスンのあとで: データの平均、中央値、範囲を求めることができる。

45分のレッスンコマンドなし

窓口の待ち時間は何分ですか

市役所の市民課で、窓口の改善を任されました。課長から「ふだんの待ち時間は何分か、一つの数で教えて」と言われます。

待ち時間は人によって違います。全員分の数を並べても、答えにはなりません。全体を表す数の選び方を、今日は三つ学びます。

このレッスンのゴール

メモ

データの平均、中央値、範囲を求めることができる。

キーワード

ことばいみれい
平均全部を足して、個数で割った値です。
中央値小さい順に並べた、真ん中の値です。
範囲最大の値から最小の値を引いた差です。
外れ値ほかと比べて、極端に大きいか小さい値です。
sorted小さい順に並べた新しいリストを作る命令です。sorted([3, 1, 2])

学生が入力するセルは、このプレビューでは空白です。

平均は、足して個数で割ります

平均は、全部の値を足して、値の個数で割ったものです。

5人の待ち時間が、4分、6分、8分、10分、12分だったとします。合計は40分で、5人なので、40 ÷ 5 で平均は8分です。

Pythonでは、for 文で合計を出し、len で割ります。

平均の待ち時間を出す

コード: python
# 市役所の窓口で、午前中に5人が待った時間(分)です。
waits = [4, 6, 8, 10, 12]

total = 0
for w in waits:
    total = total + w

print("合計:", total, "分")
print("平均:", total / len(waits), "分")

# 50 をリストの最後に足して、平均がどう変わるか見ましょう。

中央値は、並べて真ん中を見ます

中央値は、小さい順に並べたときの真ん中の値です。

個数が奇数なら、真ん中は一つです。偶数なら真ん中が二つあるので、その二つの平均にします。

6人目に、手続きが複雑で50分待った人が入りました。並べると 4、6、8、10、12、50 で、真ん中は8と10です。中央値は9分です。

50分の人が入ると、どう変わるか

5人6人(50分を追加)
合計40分90分
平均8分15分
中央値8分9分
範囲12 - 4 = 8分50 - 4 = 46分

学生が入力するセルは、このプレビューでは空白です。

よくある間違い

注意

平均がいつも「ふつうの値」だと思う人が多いです。でも外れ値が一つあると、平均は大きく動きます。6人の平均は15分ですが、15分以上待った人は一人だけです。外れ値があるときは、中央値も一緒に伝えます。

中央値と範囲を出す

コード: python
waits = [12, 4, 50, 8, 6, 10]

# sorted は、小さい順に並べた新しいリストを作ります。
ordered = sorted(waits)
print("並べた順:", ordered)

n = len(ordered)
middle = n // 2
if n % 2 == 1:
    median = ordered[middle]
else:
    # 偶数個のときは、真ん中の二つの平均です。
    median = (ordered[middle - 1] + ordered[middle]) / 2
print("中央値:", median, "分")

# 範囲は、最大から最小を引いた値です。
print("範囲:", max(waits) - min(waits), "分")

# 50 を 5 に変えて、中央値と範囲がどう動くか見ましょう。

範囲は、ばらつきの大きさです

平均や中央値だけでは、待ち時間がそろっているかどうかは分かりません。

範囲は、いちばん長い待ち時間から、いちばん短い待ち時間を引いた差です。範囲が小さければ、だれが来ても同じくらい待ちます。範囲が大きければ、長く待つ人がいるということです。

Pythonでは max(waits) - min(waits) で求めます。

授業で使いますか?このモジュールを学生に割り当てると、教員用ガイド、自動採点つきの課題、学生ごとのラボを使えます。