PHP 8.4.0 RC4 available for testing

stats_skew

(PECL stats >= 1.0.0)

stats_skewВычисляет асимметрию данных в массиве

Описание

stats_skew(array $a): float

Возвращает асимметрию значений в a.

Список параметров

a

Входной массив

Возвращаемые значения

Возвращает асимметрию значений в a или false, если a пуст или не является массивом.

Добавить

Примечания пользователей 1 note

up
0
Angel J. Salinas
8 years ago
If you don't have the php_stats library, you can use this implementation:

public static function getSkewness( $values )
{
$numValues = count( $values );
if ( $numValues == 0 ) {
return 0.0;
}

// Use function from php_stats library if available
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 );
}
To Top