データフレームを 2 つの列でグループ化し、出現回数をカウントし、最大数を見つけるにはどうすればよいですか?

DDD
リリース: 2024-10-23 12:10:02
オリジナル
536 人が閲覧しました

How to Groupby DataFrame by Two Columns, Count Occurrences, and Find Maximum Count?

DataFrame を 2 つの列でグループ化し、カウントを取得する

このチュートリアルでは、Pandas DataFrame 内の 2 つの列の組み合わせの出現をカウントし、グループ化された列の 1 つにおける各一意の値の最大数。

問題ステートメント

次の Pandas DataFrame df を考えてみましょう:

<code class="python">df = pd.DataFrame([
    [1.1, 1.1, 1.1, 2.6, 2.5, 3.4,2.6,2.6,3.4,3.4,2.6,1.1,1.1,3.3], 
    list('AAABBBBABCBDDD'), 
    [1.1, 1.7, 2.5, 2.6, 3.3, 3.8,4.0,4.2,4.3,4.5,4.6,4.7,4.7,4.8], 
    ['x/y/z','x/y','x/y/z/n','x/u','x','x/u/v','x/y/z','x','x/u/v/b','-','x/y','x/y/z','x','x/u/v/w'],
    ['1','3','3','2','4','2','5','3','6','3','5','1','1','1']
]).T
df.columns = ['col1','col2','col3','col4','col5']</code>
ログイン後にコピー

Count Occurrences

df 内の Col5 と Col2 の一意の組み合わせの数を取得するには、groupby 関数の後に size メソッドを使用します:

<code class="python">df.groupby(['col5', 'col2']).size()</code>
ログイン後にコピー

出力は次のようになります:

col5  col2
1     A       1
      D       3
2     B       2
etc...
ログイン後にコピー

各col2値の最大数を求める

各col2値の最大数を決定するには、groupby関数のsizeメソッドを使用してグループサイズを計算し、最初のレベルでgroupbyを使用して最大値を見つけることができます。一意の各 Col2 値:

<code class="python">df.groupby(['col5', 'col2']).size().groupby(level=1).max()</code>
ログイン後にコピー

これにより、次の出力が生成されます:

col2
A       3
B       2
C       1
D       3
dtype: int64
ログイン後にコピー

以上がデータフレームを 2 つの列でグループ化し、出現回数をカウントし、最大数を見つけるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート
私たちについて 免責事項 Sitemap
PHP中国語ウェブサイト:福祉オンライン PHP トレーニング,PHP 学習者の迅速な成長を支援します!