如果您没有 php_stats 库,您可以使用此实现
public static function getSkewness( $values )
{
$numValues = count( $values );
if ( $numValues == 0 ) {
return 0.0;
}
// 如果可用,使用 php_stats 库中的函数
if ( function_exists( 'stats_skew' ) ) {
return stats_skew( $values );
}
$mean = array_sum( $values ) / floatval( $numValues );
$add2 = 0.0;
$add3 = 0.0;
foreach ( $values as $value ) {
if ( ! is_numeric( $value ) ) {
return false;
}
$dif = $value - $mean;
$add2 += ( $dif * $dif );
$add3 += ( $dif * $dif * $dif );
} // foreach values
$variance = $add2 / floatval( $numValues );
return ( $add3 / floatval( $numValues ) ) / pow( $variance, 3 / 2.0 );
}