public static function variance(array $values, $sample = false)
{
$average = self::mean($values);
$sum = 0;
foreach ($values as $value) {
$diff = pow($value - $average, 2);
$sum += $diff;
}
if (count($values) === 0) {
return 0;
}
$variance = $sum / (count($values) - ($sample ? 1 : 0));
return $variance;
}