パーセンタイル
パーセンタイルとは、計測値の分布(ばらつき)を小さい方から並べてパーセントで見た数字。データの分布具合(ばらつき)を見るのに役立つ。
Rにはパーセンタイルくらいありそうな気がするのに、探し方が悪いのか見つからなかった。
Rにはパーセンタイルくらいありそうな気がするのに、探し方が悪いのか見つからなかった。
よってパーセンタイルを計算する関数は自作である(後で罠にはまったことに気付く)。
percentile<-function(x,y){ sort_x<-x[order(x)] i<-round(length(sort_x)*y/100) i[i<1]<-1 ##iが1未満のときは1にする return(sort_x[i])}
使い方
percentile(データのベクトル,何%か(0~100))とする
percentile(データのベクトル,何%か(0~100))とする
使用例
percentile(seiseki,10) [1] 43
seisekiデータのパーセンタイル0~100%までを10%きざみで表示してみる。
for(i in 0:10){print(percentile(seiseki,i*10))} [1] 28 [1] 43 [1] 52 [1] 62 [1] 70 [1] 73 [1] 80 [1] 85 [1] 87 [1] 93 [1] 100
さてRにはクォンタイルというのはある。
quantile(seiseki) 0% 25% 50% 75% 100% 28.0 61.5 73.0 85.5 100.0
お手製パーセンタイル関数をつかって、0%、25%、50%、75%、100%を指定してやれば、同じになるはずである。
y<-c(0,25,50,75,100)
ベクトルyに区切りのパーセントをまとめて代入し、同様に計算する
percentile(seiseki,y) [1] 28 61 73 85 100
しまった。お手製パーセンタイル関数は、ある数と数の間に小さいほうから25%が来る場合でも 単に25%あたりで、近いデータを拾っているだけだった。
本当は離散データの間に当該パーセントが来た場合は、たとえば61と62の間をとって61.5としなければならないのだ。
本当は離散データの間に当該パーセントが来た場合は、たとえば61と62の間をとって61.5としなければならないのだ。
クォンタイル(四分位点)
データを小さい順に並べて、25%ずつデータを区切ると、0~25%,25~50%,50~75%、75~100%と、4つの部分に区切ることができる。この(4つに分ける)区切りを四分位点という。それぞれ下からそれぞれ、第1四分位点Q1(25%の点)、第2四分位点Q2(50%の点)、第3四分位点Q3(75%の点)とよぶ。
Rでは先に述べたとおり、quantile()で表示できる。
特に第1四分位点Q1と第3四分位点Q3の差を「四分位範囲」とよび、IR(=Q3-Q1)と書いたりする。これは、ばたつき具合を表す指標にも使われる。
Rでは先に述べたとおり、quantile()で表示できる。
特に第1四分位点Q1と第3四分位点Q3の差を「四分位範囲」とよび、IR(=Q3-Q1)と書いたりする。これは、ばたつき具合を表す指標にも使われる。
箱型図
クォンタイル(四分位点)を使って、ばらつき具合を視覚的に表示したものに、箱型図がある。
Rではboxplot()で、描くことができる。
ためしに成績データを使って箱型図を描いてみよう。
Rではboxplot()で、描くことができる。
ためしに成績データを使って箱型図を描いてみよう。
boxplot(seiseki)
真ん中の箱(ボックス)が、第1四分位点(Q1)と第3四分位点(Q3)の間、すなわち「四分位範囲」(IR)を表している。またボックスの中に引かれた線は、第2四分位点(Q2)、すなわち中間値を示している。
さてIRの大きさを使って、IRの1.5倍のところにボックスの上と下に「ヒゲ」を伸ばす。この「ヒゲ」に含まれる値を「内側値」という。
ヒゲの外側に、さらにIRの1.5倍のところに線を引く。「ヒゲ」の端からこの線のところまでに含まれる値を「外側値」と呼ぶ。
「外側値」よりも中央値から離れた値は、「極外値」と呼び、異常値でないかと疑う。
さてIRの大きさを使って、IRの1.5倍のところにボックスの上と下に「ヒゲ」を伸ばす。この「ヒゲ」に含まれる値を「内側値」という。
ヒゲの外側に、さらにIRの1.5倍のところに線を引く。「ヒゲ」の端からこの線のところまでに含まれる値を「外側値」と呼ぶ。
「外側値」よりも中央値から離れた値は、「極外値」と呼び、異常値でないかと疑う。