Home  >  Article  >  Backend Development  >  How can I count the frequency of identical rows in a pandas DataFrame based on multiple columns?

How can I count the frequency of identical rows in a pandas DataFrame based on multiple columns?

Susan Sarandon
Susan SarandonOriginal
2024-10-25 02:03:02675browse

How can I count the frequency of identical rows in a pandas DataFrame based on multiple columns?

Get Frequency Count from Multiple Dataframe Columns

To determine the frequency of identical rows in a dataframe, you can utilize the groupby() method with the size() function. This technique enables you to count the occurrences of unique combinations of values across multiple columns.

Consider the following dataframe:

   Group | Size |
---------+------+
   Short | Small |
   Short | Small |
   Moderate | Medium |
   Moderate | Small |
   Tall | Large |

To count the frequency of each row, we can group the dataframe by the "Group" and "Size" columns and use the size() function to determine the number of times each row appears:

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

# Load the sample data
data = {'Group': ['Short', 'Short', 'Moderate', 'Moderate', 'Tall'], 'Size': ['Small', 'Small', 'Medium', 'Small', 'Large']}
df = pd.DataFrame(data)

# Option 1:
dfg = df.groupby(by=["Group", "Size"]).size()

# Option 2: Reset the index to convert the Series to a DataFrame
dfg = df.groupby(by=["Group", "Size"]).size().reset_index(name="Time")

# Option 3: Use as_index=False to create a DataFrame without an index
dfg = df.groupby(by=["Group", "Size"], as_index=False).size()</code>

The resulting dataframes will provide the frequency count for each combination of "Group" and "Size" values. For instance, the output might appear as follows:

  Group | Size | Time
--------+------+------
  Moderate | Medium | 1
  Moderate | Small | 1
  Short | Small | 2
  Tall | Large | 1

The above is the detailed content of How can I count the frequency of identical rows in a pandas DataFrame based on multiple columns?. For more information, please follow other related articles on the PHP Chinese website!

Statement:
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