How to apply functions in a Group in a Pandas DataFrame?

In this article, let’s see how to apply functions in a group in a Pandas Dataframe. Steps to be followed for performing this task are –
- Import the necessary libraries.
- Set up the data as a Pandas DataFrame.
- Use apply function to find different statistical measures like Rolling Mean, Average, Sum, Maximum, and Minimum. You can use the lambda function for this.
Below is the implementation-
Let’s create the dataframe.
Python3
#import libraries import pandas as pd # set up the data data_dict = {"Student House": ["Lavender", "Lavender", "Lavender", "Lavender", "Daisy", "Daisy", "Daisy", "Daisy", "Daffodils", "Daffodils", "Daffodils", "Daffodils"], "Points": [10, 4, 6, 7, 3, 8, 9, 10, 4, 5, 6, 7]} data_df = pd.DataFrame(data_dict) print("Dataframe : ") data_df |
Output:
Example 1:
Python3
# finding rolling mean rolling_mean = data_df.groupby("Student House")["Points"].apply( lambda x: x.rolling(center=False, window=2).mean()) print("Rolling Mean:") print(rolling_mean) |
Output:
Example 2:
Python3
# finding mean mean = data_df.groupby("Student House")["Points"].apply( lambda x: x.mean()) print("Mean:") print(mean) |
Output:
Example 3:
Python3
# finding sum sum = data_df.groupby("Student House")["Points"].apply( lambda x: x.sum()) print("Sum:") print(sum) |
Output:




