ホームページ >バックエンド開発 >Python チュートリアル >Pandas でグループごとに個別の値を数える方法は?

Pandas でグループごとに個別の値を数える方法は?

Linda Hamilton
Linda Hamiltonオリジナル
2024-10-23 13:23:01695ブラウズ

How to Count Distinct Values by Group in Pandas?

Pandas の同等物: グループごとの個別カウント

データベースの代替として Pandas を使用する場合、多くの場合、個別のカウントなどの複雑な操作を実行する必要があります。グループ。この場合、年月ごとの個別のクライアントの数をカウントしたいと考えています。

SQL では、これは count(distinct) 集計関数を使用して実現できます。ただし、Pandas は、この操作に対して少し異なる構文を提供します。

Pandas で年月ごとに個別のクライアントをカウントするには、次のコードを使用できます。

<code class="python">table.groupby('YEARMONTH').CLIENTCODE.nunique()</code>

groupby() 関数指定された列 (この場合は YEARMONTH) に基づいて DataFrame をグループに分割します。次に、nunique() 関数は、各グループ内の一意の値の数をカウントします。

説明する例を次に示します。

<code class="python">import pandas as pd

# Create a DataFrame with sample data
data = {
    'YEARMONTH': ['201301', '201301', '201301', '201302', '201302', '201302', '201302'],
    'CLIENTCODE': [1, 1, 2, 1, 2, 2, 3]
}
table = pd.DataFrame(data)

# Count distinct clients per year month
result = table.groupby('YEARMONTH').CLIENTCODE.nunique()

print(result)</code>

出力:

YEARMONTH
201301    2
201302    3

ご覧のとおり、結果は SQL クエリからの予想される出力と一致しています。

以上がPandas でグループごとに個別の値を数える方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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