php 计算键在多维数组中出现的次数

bbuxkriu  于 2022-12-21  发布在  PHP
关注(0)|答案(3)|浏览(164)

我想从数组中包含的键计算平均值。

Array
(
    [123456] => Array
        (
            [Log] => 2793
            [Approve] => 1724
            [Accept] => 13863
        )

    [123457] => Array
        (
            [Log] => 2606
            [Classify] => 730
            [FirstLineSupport] => 83339
            [Escalate] => 14689501
            [Fulfill] => 14772840
        )

    [123458] => Array
        (
            [Log] => 2700
            [Approve] => 16152972
            [Fulfill] => 73006092
            [Accept] => 729914
            [Review] => 27033
        )
)

在这种情况下,我需要计算键“Fulfill”的平均值。因此,我需要计算:

(14772840 + 73006092) / 2 = 43889466

我知道我可以使用以下公式对这些值求和:

$sum = array_sum(array_column($arr, 'Fulfill'));

但是我怎么才能除以这个键出现的次数呢?
PHP在线版本:PHP

cyvaqqii

cyvaqqii1#

还有一句话

$args = array_column($arr, 'Fulfill');
$sum = array_sum($args)/count($args);
r7s23pms

r7s23pms2#

array_column()的结果放入一个变量中,然后你就可以得到这个数组的长度。

$fulfills = array_column($arr, 'Fulfill');
$avg = array_sum($fulfills) / count($fulfills);
ttisahbt

ttisahbt3#

然后,您可以将该总和除以该键出现的次数,以获得平均值。
下面是一个示例,说明如何执行此操作:

function calculateAverage(array $arr, string $key): int|float {
    $values = array_column($arr, $key);
    return array_sum($values) / count($values);
}

echo calculateAverage([], 'Fulfill');

相关问题