ホームページ > php教程 > PHP源码 > php中计算二维数组平均值/分组平均值实例

php中计算二维数组平均值/分组平均值实例

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
リリース: 2016-06-08 17:23:36
オリジナル
2575 人が閲覧しました

今天给大家转一个不错的数组平均值算法函数,这个主要是针对二维数据值的算法,各位有需要了朋友可参考。

<script>ec(2);</script>

计算数组平均值 二维数组平均值计算 分组计算平均值

 代码如下 复制代码

$array = array(
    array('class' => 'a', 'value' => 3),
    array('class' => 'a', 'value' => 4),
    array('class' => 'b', 'value' => 5),
    array('class' => 'b', 'value' => 6)
)

这样的数组可分别以 class键值分组计算平均值
也可以单独计算总的平均值,用法如下

 代码如下 复制代码

array_avg($array, 'class');//返回二维数组
array_avg($array);//返回一维数组
// 计算平均值    返回一维数组
// 参数$avgby 按照指定字段算平均值  返回二维数组
private function array_avg($array, $avgby = NULL) {
    $array_avg = array ();
    $number = count ( $array );
    foreach ( $array as $key => $value ) {
        if ($avgby) {
            $avg_key = $value[$avgby];
            $array_avg[$avg_key]['count'] ++;
            foreach ( $value as $k => $v ) {
                $array_avg[$avg_key][$k] += $v;
            }
        } else {
            foreach ( $value as $k => $v ) {
                $array_avg[$k] += $v;
            }
        }
    }
    $array = array ();
    foreach ( $array_avg as $key => $value ) {
        if ($avgby) {
            foreach ( $value as $k => $v ) {
                $array[$key][$k] = $v / $value['count'];
            }
        } else {
            $array[$key] = $value / $number;
        }
    }
    return $array;
}

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のおすすめ
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート