You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PHP中计算二维数组的列平均值?

计算PHP二维数组每一列的平均值

首先,你的二维数组代码如下:

$numers = array
(
  array(198,208,109,11,636),
  array(198,188,84,55,756),
  array(194,206,113,13,531),
  array(184,213,127,18,101),
  array(194,213,127,23,110),
  array(984,213,127,44,125),
  array(184,213,127,88,980),
  array(995,211,129,63,888)
);

方法一:手动循环遍历(适合理解底层逻辑)

先初始化数组存储每列总和,遍历二维数组的每一行,将元素对应累加到列总和中,最后用总和除以行数得到平均值:

// 获取数组行数
$rowCount = count($numers);
// 初始化列总和数组,按第一行的列数填充初始值0
$columnSums = array_fill(0, count($numers[0]), 0);

foreach ($numers as $row) {
    foreach ($row as $colIndex => $value) {
        $columnSums[$colIndex] += $value;
    }
}

// 计算每列平均值
$columnAverages = [];
foreach ($columnSums as $sum) {
    $columnAverages[] = $sum / $rowCount;
}

// 输出结果
print_r($columnAverages);

方法二:利用PHP内置函数(简洁高效)

用array_column()提取每一列的所有元素,array_sum()求和后除以行数得到平均值:

$rowCount = count($numers);
$columnAverages = [];

// 遍历每一列索引
for ($col = 0; $col < count($numers[0]); $col++) {
    // 获取当前列的全部元素
    $column = array_column($numers, $col);
    // 计算并存储平均值
    $columnAverages[$col] = array_sum($column) / $rowCount;
}

// 输出结果
print_r($columnAverages);

两种方法最终都会输出每一列的平均值数组,比如第一列平均值为343.375,第二列平均值为208.125,以此类推。

注:如果你的二维数组存在行数列数不一致的情况,需要额外处理(比如跳过列数不足的行),但从示例来看所有行都是5列,上述代码可直接使用。

内容的提问来源于stack exchange,提问作者308 freak

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 06:35:06