// Statistics.java 基本統計量の計算
// 2019.04.25
// 2017.06.09
// 2005.07.08
// M.Yanaka
// 入力データの偏差値を求める
class Statistics {
public static void main(String[] args) {
int sum = 0; // 合計
int ss = 0; // 自乗和
double m; // 平均
double s; // 標準偏差
int[] x = {100,2,3,4,5,6,7,8,9,10}; // 入力データ
// int[] x = new int[] {1,2,3,4,5,6,7,8,9,10};
double[] y = new double[x.length]; // 偏差値
for (int i = 0; i < x.length; i++) { // x.length 配列xの長さ
sum += x[i]; // 代入演算子
// sum = sum + x[i];
ss += x[i] * x[i];
}
m = (double) sum / x.length; // キャスト演算子
s = Math.sqrt((double) ss / x.length - m * m);
for (int i = 0; i < x.length; i++) {
y[i] = 50 + 10 * (x[i] - m) / s;
}
System.out.println("合計 = " + sum);
System.out.println("平均 = " + m);
System.out.println("標準偏差 = " + s);
System.out.println("No.¥tデータ¥t偏差値"); // 出力並びをタブ(¥t)で区切る
for (int i = 0; i < y.length; i++) {
System.out.println((i+1) + "¥t" + x[i] + "¥t" + y[i]);
}
}
}
/********************
統計量とは、データの集まりに対して、その性質を表わす量。
集まり全体の性質を表わす量と、
個々のデータが集まりの中でどのような位置を占めるかを表わす量とがある。
基本統計量の例
合計、平均、
最大値、最小値、
中央値、最頻値、
標準偏差、
偏差値
【発展】10個のデータの合計、自乗和、平均、標準偏差、最大値および最小値を求めよ。
ただし、データは「配列の初期化」を用いて与えることとする。
【ヒント】配列中の要素の最大値(最小値)の求め方(アルゴリズム)
仮の最大値(最小値)を定め、
i番目の配列要素と仮の最大値(最小値)とを比較して、
仮の最大値(最小値)のほうが小さ(多き)ければ、
仮の最大値(最小値)を更新する。
仮の最大値の初期設定の方法が2通りある。
(1)予想されるどのデータより小さい値に設定する。
(2)配列の最初の要素を仮の最大値とする。
********************/