PHPでは、データのクリーニングと周波数統計の取り扱いが一般的な要件です。 array_filter()を介してデータをクリーニングして条件を満たさない要素を削除し、 array_count_values()を使用して、クリーン化されたデータの各要素の頻度をカウントできます。以下に、特定の例を使用してこのプロセスを実装する方法を示します。
array_filter()関数は、コールバック関数の条件に従って配列内の要素をフィルタリングし、条件を満たすすべての要素を含む新しい配列を返すことができます。たとえば、この関数を使用して、配列にnullまたはfalseを使用して要素をフィルタリングしたり、他の基準に基づいて基準を満たすデータをフィルタリングしたりできます。
<?php
$data = [1, 2, 3, null, 4, false, 5, 6, '', 7];
// 使用 array_filter() データをクリーニングします,取り除く null そして false
$cleanedData = array_filter($data, function($value) {
return $value !== null && $value !== false && $value !== '';
});
// クリーニングされたデータを印刷します
print_r($cleanedData);
?>
出力:
Array
(
[0] => 1
[1] => 2
[2] => 3
[4] => 4
[6] => 5
[7] => 6
[8] => 7
)
この例では、 array_filter()はnull 、 false 、および空の文字列''を除外し、値1、2、3などの要素のみを残します。
array_count_values()関数は、配列内の各値の発生数をカウントするために使用されます。連想配列を返し、キーは配列の唯一の値であり、値はこれらの値が表示される回数です。 array_filter()のクリーニングデータを入力として使用して、各要素の周波数をカウントできます。
<?php
// 使用 array_count_values() 統計クリーニング後のデータの頻度
$frequency = array_count_values($cleanedData);
// 周波数統計を印刷します
print_r($frequency);
?>
出力:
Array
(
[1] => 1
[2] => 1
[3] => 1
[4] => 1
[5] => 1
[6] => 1
[7] => 1
)
array_count_values()を介して、クリーンデータ内の各要素の頻度を確認できます。各要素は例に一度だけ表示されるため、出力内の各値の頻度は1です。
Array_filter()とarray_count_values()を組み合わせた完全な例を次に示します。
<?php
$data = [1, 2, 3, null, 4, false, 5, 6, '', 7, 1, 2, 3];
// 使用 array_filter() データをクリーニングします,取り除く null そして false
$cleanedData = array_filter($data, function($value) {
return $value !== null && $value !== false && $value !== '';
});
// 使用 array_count_values() 統計クリーニング後のデータの頻度
$frequency = array_count_values($cleanedData);
// 周波数統計を印刷します
print_r($frequency);
?>
出力:
Array
(
[1] => 2
[2] => 2
[3] => 2
[4] => 1
[5] => 1
[6] => 1
[7] => 1
)
この例では、最初に無効なデータをクリーニングし、次にarray_count_values()を介して各要素の頻度をカウントしました。
要約します
array_filter()とarray_count_values()を組み合わせることにより、データを簡単にクリーニングしてデータ頻度をカウントできます。 array_filter()は、カスタム条件に応じて無効なデータをフィルタリングできますが、 array_count_values()は、各値が表示される回数をカウントできます。この組み合わせは、アレイデータを処理する場合、特にデータをクリーンアップして周波数分析を実行する必要がある場合に非常に便利です。