Pandas - Grouping and aggregating DataFrame with a custom function using apply()
Pandas: Custom Function Exercise-19 with Solution
Write a Pandas program that applies a custom function to aggregate DataFrame groups.
In this exercise, we have grouped a DataFrame by a specific column and apply a custom aggregation function using apply().
Sample Solution :
Code :
import pandas as pd
# Create a sample DataFrame
df = pd.DataFrame({
'Category': ['A', 'B', 'A', 'B'],
'Value': [10, 20, 15, 25]
})
# Define a custom aggregation function
def custom_agg(group):
return group['Value'].sum()
# Group by 'Category' and apply the custom aggregation function
df_grouped = df.groupby('Category').apply(custom_agg)
# Output the result
print(df_grouped)
Output:
Category A 25 B 45 dtype: int64
Explanation:
- Created a DataFrame with a 'Category' and 'Value' column.
- Defined a custom aggregation function custom_agg() to calculate the sum of values in each group.
- Grouped the DataFrame by 'Category' and applied the custom aggregation using apply().
- Returned the summed values for each group.
Python-Pandas Code Editor:
Have another way to solve this solution? Contribute your code (and comments) through Disqus.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
It will be nice if you may share this link in any developer community or anywhere else, from where other developers may find this content. Thanks.
https://198.211.115.131/python-exercises/pandas/pandas-group-dataframe-and-apply-custom-aggregation-function-with-apply.php
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics