■偏差値
偏差値とは、集団の中でどれくらいの位置にいるかを表す数値で、
平均を偏差値50になるように変換し、その基準からどれくらい高い(または低い)かを表す。
■求め方
(例)
生徒5人の数学の点数から偏差値を算出する。
A:60点
B:80点
C:75点
D:90点
E:85点
平均:
78点
分散:
106.0
標準偏差:
10.295・・・・・・
※平均・分散・標準偏差の求め方の参照先。
(各点数 – 平均) / 標準偏差:
[-1.74831455 , 0.19425717, -0.29138576, 1.16554303, 0.6799001 ]・・・・・・①
偏差値:(上記① × 10) + 50
[32.51685448, 51.94257172, 47.08614241, 61.65543035, 56.79900104]
■例題
生徒14人の数学の点数から偏差値を算出する。
A | B | C | D | E | F | G | H | I | J | K | L | M | N |
67 | 75 | 44 | 89 | 97 | 58 | 76 | 77 | 49 | 81 | 63 | 33 | 39 | 61 |
■サンプルコード
# -*- Coding: UTF-8 -*-
import numpy as np
# 偏差値計算関数
def CalDevVal(score):
# それぞれの点数に対して、「(点数 - 平均点) / 標準偏差」を実施・・・①
dev_val = (score - np.mean(score)) / np.std(score)
# ①の結果について、「(① × 10)+50」を実施=偏差値
dev_val = dev_val * 10 + 50
return dev_val
# メイン処理
if __name__ == '__main__':
# 人の名前とテストの点数をそれぞれ配列に格納
test_name = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H',
'I', 'J', 'K', 'L', 'M', 'N']
test_score = [67, 75, 44, 89, 97, 58, 76, 77, 49, 81, 63, 33, 39, 61]
# 偏差値の計算結果を格納
result = CalDevVal(test_score)
for i in range(len(test_name)):
# 偏差値は小数第2位を偶数まるめ
print(test_name[i], ':', round(result[i], 1))
■実行結果
A : 51.1
B : 55.5
C : 38.6
D : 63.2
E : 67.5
F : 46.2
G : 56.0
H : 56.6
I : 41.3
J : 58.8
K : 48.9
L : 32.6
M : 35.8
N : 47.9
コメント