📜  php 中位数 - PHP (1)

📅  最后修改于: 2023-12-03 14:45:21.582000             🧑  作者: Mango

PHP中位数

在PHP中,中位数是指一组数据中居于中间位置的数值。如果数据中有偶数个数值,那么中位数就是中间两个数的平均值。计算中位数在统计学和数据分析中非常常见,下面我们来看看如何在PHP中计算中位数。

方法一:使用sort函数和count函数
function median($arr) {
  sort($arr);
  $count = count($arr);
  $middleval = floor(($count-1)/2);
  if($count % 2) {
    $median = $arr[$middleval];
  } else {
    $low = $arr[$middleval];
    $high = $arr[$middleval+1];
    $median = (($low+$high)/2);
  }
  return $median;
}

$arr = array(1, 2, 3, 4, 5);
echo median($arr); // 输出3

以上函数通过sort函数将数组排序,然后计算中间值。如果数组长度为奇数,则直接返回中间值;如果长度为偶数,则计算中间两个数的平均值。

方法二:使用array_sum函数和count函数
function median($arr) {
  $count = count($arr);
  $middleval = floor(($count-1)/2);
  sort($arr);
  $arr = array_slice($arr, $middleval, $count-2*$middleval);
  $median = array_sum($arr)/count($arr);
  return $median;
}

$arr = array(1, 2, 3, 4, 5);
echo median($arr); // 输出3

以上函数通过计算中间位置来确定需要截取的数组片段,然后使用array_sum函数和count函数计算中位数。

总结

以上两种方法都可以计算中位数,选择哪种方法取决于个人喜好和数据量大小。无论是哪种方法,都需要首先了解中位数的定义和计算公式,才能有效地实现计算。