# Pandas: How to Calculate Mode in a GroupBy Object

You can use the following syntax to calculate the mode in a GroupBy object in pandas:

```df.groupby(['group_var'])['value_var'].agg(pd.Series.mode)
```

The following example shows how to use this syntax in practice.

### Example: Calculate Mode in a GroupBy Object

Suppose we have the following pandas DataFrame that shows the points scored by basketball players on various teams:

```import pandas as pd

#create DataFrame
df = pd.DataFrame({'team': ['A', 'A', 'A', 'A', 'B', 'B', 'C', 'C', 'C'],
'points': [10, 10, 12, 15, 19, 23, 20, 20, 26]})

#view DataFrame
print(df)

team  points
0    A      10
1    A      10
2    A      12
3    A      15
4    B      19
5    B      23
6    C      20
7    C      20
8    C      26```

We can use the following syntax to calculate the mode points value for each team:

```#calculate mode points value for each team
df.groupby(['team'])['points'].agg(pd.Series.mode)

team
A          10
B    [19, 23]
C          20
Name: points, dtype: object
```

Here’s how to interpret the output:

• The mode points value for team A is 10.
• The mode points values for team B are 19 and 23.
• The mode points value for team C is 20.

If one group happens to have multiple modes then you can use the following syntax to display each mode on a different row:

```#calculate mode points value for each team
df.groupby(['team'])['points'].apply(pd.Series.mode)

team
A     0    10
B     0    19
1    23
C     0    20
Name: points, dtype: int64```

Note: You can find the complete documentation for the GroupBy operation in pandas here.