Home > Backend Development > PHP Problem > How to find the mean and median of an array in php

How to find the mean and median of an array in php

PHPz
Release: 2023-04-23 14:30:39
Original
867 people have browsed it

In PHP, finding the average and median of an array is a very common requirement. In this article, we will introduce how to use functions in PHP to find the mean and median of an array.

How to solve the average

The average of the array can be calculated using the PHP built-in functions array_sum and count. These two functions are used to sum all the elements in the array and to calculate the number of elements in the array. Divide the calculated sum by the number of elements to get the average of the array.

The sample code is as follows:

$arr = array(1, 2, 3, 4, 5);
$avg = array_sum($arr) / count($arr);
echo $avg; // Output: 3
Copy after login

In the above code, first we define an array $arr containing 5 elements. Then use the array_sum function to sum all the elements in the array, and then use the count function to calculate the number of elements in the array. Finally, divide the sum of the array by the number of elements to get the average of the array.

How to solve the median

The median of an array refers to the number in the middle after arranging an array from small to large or from large to small (if If the array length is an even number, it is the average of the two middle numbers).

There are many ways to solve the median. Below we will introduce two methods: one is to use the sort function for sorting, and the other is to use a custom function.

  1. Use the sort function to sort

PHP’s sort function can sort the array. We can sort the array first and then determine the position of the median based on the length of the array.

The sample code is as follows:

$arr = array(3, 1, 4, 9, 2, 6);
sort($arr);

$count = count($arr);
$middle = floor(($count-1)/2);

if ($count % 2 == 0) {
    $median = ($arr[$middle] + $arr[$middle+1])/2;
} else {
    $median = $arr[$middle];
}

echo $median; // Output: 3.5
Copy after login

In the above code, first we define an array $arr containing 6 elements. Use the sort function to sort the array from small to large. Then use the count function to calculate the length of the array and determine the position of the median based on the length. When the array length is an even number, we need to take the average of the two middle numbers as the median; when the array length is an odd number, we directly take the number in the middle as the median.

  1. Use custom function

The following is a custom function used to calculate the median of an array.

function median($arr) {
    sort($arr);
    $count = count($arr);
    $middle = floor(($count-1)/2);
    if ($count % 2 == 0) {
        $median = ($arr[$middle] + $arr[$middle+1])/2;
    } else {
        $median = $arr[$middle];
    }
    return $median;
}
Copy after login

The sample code for using this function is as follows:

$arr = array(3, 1, 4, 9, 2, 6);
$median = median($arr);
echo $median; // Output: 3.5
Copy after login

In the above code, we first define an array $arr containing 6 elements. Then call the median function and pass in the array as a parameter to get the median of the array.

Summary

It is very easy to find the mean and median of an array in PHP, just use the built-in functions or custom functions. Whether you are calculating the mean or median, you can do it by sorting the array first. In actual development, we usually encounter situations where we need to perform statistical analysis on numerical arrays, so mastering the use of these functions is a very basic skill.

The above is the detailed content of How to find the mean and median of an array in php. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template