統計検定の学習のため、simple-statistics を使って、分散、標準偏差、zスコア、偏差値 を求めてみました。
simple-statistics は、ブラウザでも動作するため、CDN 版を使用し、Chrome のコンソールで動作確認を行います。

以下、実施した結果を記載します。


simple-statistics の外部 JavaScript を追加

以下、JavaScript をコンソールで実行し、simple-statistics を読み込みます。

var el = document.createElement('script');
el.src = 'https://unpkg.com/simple-statistics@7.0.2/dist/simple-statistics.min.js';
document.body.appendChild(el);


分散を求める

simple-statistics は、global オブジェクト ss から関数にアクセスできます。
分散を求めるには ss.variance()使います。

var x = [0,0,1,1,2,2];
var v =ss.variance(x);
console.log(v);

0.6666666666666666


標準偏差を求める

標準偏差を求めるには、ss.standardDeviation()使います。

var x = [0,0,1,1,2,2];
var s =ss.standardDeviation(x);
console.log(s);

0.816496580927726

標準偏差は、分散の平方根です。ss.variance()結果の 平行根を求めても結果は同じになります。

var x = [0,0,1,1,2,2];
var v =ss.variance(x);
var s = Math.sqrt(v)
console.log(s);

0.816496580927726


zスコア を求める

zスコアは標準得点という平均を 0 とした時の各値の値です。
zスコアを求めるには、ss.zScore()使います。

var x = [0,0,1,1,2,2];
var s =ss.standardDeviation(x);
var m =ss.mean(x);
var z = ss.zScore(2, m, s);
console.log(z);

1.224744871391589

zスコアの計算式は (得点 - 平均点) ÷ 標準偏差なるため、以下も同じ値が取得できます。

var x = [0,0,1,1,2,2];
var s =ss.standardDeviation(x);
var m =ss.mean(x);
var z = (2 - m) / s;
console.log(z);

1.224744871391589


偏差値 を求める

simple-statistics には 偏差値を直接求める関数はありません。
ss.zScore()zスコアが求められるので、その値を用いて計算します。
偏差値 は 標準得点 × 10 + 50なります。

var x = [0,0,1,1,2,2];
var s =ss.standardDeviation(x);
var m =ss.mean(x);
var z = ss.zScore(2, m, s);
var d = z * 10 + 50;
console.log(d);

62.24744871391589     


参考

以下、記事作成中に参考にしました。

以上です。

コメント