ホームページ  >  記事  >  バックエンド開発  >  データ集計に PHP 関数を使用するにはどうすればよいですか?

データ集計に PHP 関数を使用するにはどうすればよいですか?

PHPz
PHPzオリジナル
2024-05-03 21:57:021155ブラウズ

PHP には、次のようなデータ集計用の関数が用意されています。 sum() 合計 count() を計算する max() および min() 数量を計算する 最大値と最小値を検索する array_column() 配列から指定された列を抽出する array_reduce () 応用 集計関数の実践例として、各生徒の合計点と平均点を計算する例を示します。

如何使用 PHP 函数进行数据聚合?

データ集約に PHP 関数を使用する方法

データ集約とは、データ分析でデータ ポイントを結合して、より高度なデータを作成することです。レベルの要約のプロセス。 PHP には、データを簡単に集計するための関数がいくつか用意されています。

sum() 関数を使用して合計を計算する

sum() この関数は、配列内のすべての数値を加算し、結果を返します。

$numbers = [1, 2, 3, 4, 5];
$total = sum($numbers); // 15

count() 関数を使用して数値を計算します

count() この関数は、配列内の要素の数を返します。

$names = ['John', 'Jane', 'Doe'];
$count = count($names); // 3

max() 関数と min() 関数を使用して最大値と最小値を検索します

##max()min () この関数は、配列内の最大値と最小値をそれぞれ返します。

$scores = [90, 85, 95, 75];
$max = max($scores); // 95
$min = min($scores); // 75

array_column() 関数を使用して、配列から指定された列を抽出します

array_column() この関数は、各配列から指定された列を抽出します。配列の列内の配列を取得し、1 次元配列を返します。

$data = [
    ['id' => 1, 'name' => 'John', 'score' => 90],
    ['id' => 2, 'name' => 'Jane', 'score' => 85],
    ['id' => 3, 'name' => 'Doe', 'score' => 95]
];

$scores = array_column($data, 'score'); // [90, 85, 95]

array_reduce() 関数を使用して集計関数を適用する

array_reduce() この関数は、配列内の要素を集計関数に渡します。関数を 1 つずつ実行し、最終結果を返します。

$numbers = [1, 2, 3, 4, 5];
$total = array_reduce($numbers, function($carry, $item) {
  return $carry + $item;
}, 0); // 15

実際のケース

$data = [
    ['id' => 1, 'name' => 'John', 'score' => 90],
    ['id' => 2, 'name' => 'Jane', 'score' => 85],
    ['id' => 3, 'name' => 'Doe', 'score' => 95]
];

// 计算总分
$total = array_reduce($data, function($carry, $item) {
  return $carry + $item['score'];
}, 0);

// 计算每个学生的平均分
$averages = array_map(function($item) {
  return $item['score'] / count($item);
}, $data);

// 输出结果
echo "总分: $total\n";
foreach ($averages as $id => $average) {
  echo "学生 {$id} 平均分: $average\n";
}

出力結果:

总分: 270
学生 1 平均分: 90.0000
学生 2 平均分: 85.0000
学生 3 平均分: 95.0000

以上がデータ集計に PHP 関数を使用するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。