Сигма большого образца - PullRequest
       9

Сигма большого образца

0 голосов
/ 07 февраля 2019

Я пытаюсь вычислить среднее и стандартное отклонение равномерного [0,1) распределения, рисуя коллекцию выборок размера N для различных значений N.

У меня есть массив SAMPLE_SIZES []{2, 5, 10, 20, 40, 80} и NUM_SAMPLES 10000;

Мне удалось вычислить среднее значение средних, но у меня возникли проблемы со стандартным отклонением (сигма).

   private static void plotSampleMeans(int sizeIndex){

  int
     i,j = 0,

     // the number of draws in each group
     sampleSize = SAMPLE_SIZES[sizeIndex];

  double
     mean = 0,
     mnSum = 0,
     mnSqrSum = 0,
     sum = 0;


  long seed;

  // reset the random number generator

  // check for overflow
  if (Long.MAX_VALUE - CURR_SEED < SEED_INCREMENT)
        CURR_SEED = Long.MIN_VALUE;
  seed = CURR_SEED + SEED_INCREMENT;
  CURR_SEED = seed;
  rng.setSeed(seed);


  // array of counts for each pixel column
  int[] valCounts = new int[PANEL_WIDTH];

  for (i = 0; i < NUM_SAMPLES; i++){
      for (j = 0; j < sampleSize; j++) {
          double x = rng.nextDouble();
          sum += x;
          mean = sum/sampleSize;
          mnSum += mean;
          mnSqrSum += Math.pow(mnSum, 2);
          valCounts[j]++;

          }

}
      sampleMeans[sizeIndex] = mean/NUM_SAMPLES;
      sampleStdDevs[sizeIndex] = Math.sqrt(mnSqrSum);

Вывод:

 n  sample mean  sample sigma approximate normal sigma
 2      0.50038 3154150872.19213                 0.20412
 5      0.50291 12572436666.74340                 0.12910
10      0.50080 35403680532.40556                 0.09129
20      0.49916 99950947154.05588                 0.06455
40      0.49982 282781992497.35280                 0.04564
80      0.50006 799937088950.25340                 0.03227

Я должен приблизиться к нормальной сигме в этой таблице.

...