variance method

double variance (Float64List array, int ixstart int ixend)

Returns the variance of the numbers in array in the region ixstart, ixend (ixend exclusive): variance = mean(x**2) - (mean(x))**2 ixstart and ixend may be null, equivalent to the left/rightmost index.

Implementation

static double variance(Float64List array, int ixstart, int ixend) {
  if (ixstart == null) ixstart = 0;
  if (ixend == null) ixend = array.length - 1;
  double mean = meanValue(array, ixstart, ixend);
  double variance = 0.0;
  double value;
  for (int i = ixstart; i < ixend; i++) {
    value = array[i];
    variance += (value - mean) * (value - mean);
  }

  variance /= ixend - ixstart + 1;

  return variance;
}