Apply Function-2933
Sat 17 May 2025
title: "Apply Function" author: "Rj" date: 2019-04-20 description: "List Test" type: technical_note draft: false
import pandas as pd
data = {
'city' : ['Toronto', 'Montreal', 'Waterloo', 'Toronto', 'Waterloo', 'Toronto', 'Toronto'],
'points' : [80, 70, 90, 85, 79, 82, 200]
}
data
{'city': ['Toronto',
'Montreal',
'Waterloo',
'Toronto',
'Waterloo',
'Toronto',
'Toronto'],
'points': [80, 70, 90, 85, 79, 82, 200]}
type(data)
dict
df = pd.DataFrame(data)
df
| city | points | |
|---|---|---|
| 0 | Toronto | 80 |
| 1 | Montreal | 70 |
| 2 | Waterloo | 90 |
| 3 | Toronto | 85 |
| 4 | Waterloo | 79 |
| 5 | Toronto | 82 |
| 6 | Toronto | 200 |
df.groupby('city')['points'].apply(lambda x:x.rolling(window=1).mean())
0 80.0
1 70.0
2 90.0
3 85.0
4 79.0
5 82.0
6 200.0
Name: points, dtype: float64
df.groupby('city')['points'].apply(lambda x:x.rolling(window=2).mean())
0 NaN
1 NaN
2 NaN
3 82.5
4 84.5
5 83.5
6 141.0
Name: points, dtype: float64
Score: 5
Category: data-wrangling