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

DDD
Release: 2024-10-23 12:10:02
Original
597 people have browsed it

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

Groupby DataFrame by Two Columns and Retrieve Counts

In this tutorial, we will demonstrate how to count the occurrences of combinations of two columns in a Pandas DataFrame and identify the maximum count for each unique value in one of the grouped columns.

Problem Statement

Consider the following 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>
Copy after login

Count Occurrences

To obtain the count of each unique combination of col5 and col2 in df, we can utilize the groupby function followed by the size method:

<code class="python">df.groupby(['col5', 'col2']).size()</code>
Copy after login

The output will be:

col5  col2
1     A       1
      D       3
2     B       2
etc...
Copy after login

Find Maximum Count for Each col2 Value

To determine the maximum count for each col2 value, we can use the groupby function's size method to calculate the group sizes and then use the groupby on the first level to find the maximum for each unique col2 value:

<code class="python">df.groupby(['col5', 'col2']).size().groupby(level=1).max()</code>
Copy after login

This will produce the output:

col2
A       3
B       2
C       1
D       3
dtype: int64
Copy after login

The above is the detailed content of How to Groupby DataFrame by Two Columns, Count Occurrences, and Find Maximum Count?. For more information, please follow other related articles on the PHP Chinese website!

source:php
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
About us Disclaimer Sitemap
php.cn:Public welfare online PHP training,Help PHP learners grow quickly!