Apply-Function
Sat 17 May 2025
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())
city
Montreal 1 70.0
Toronto 0 80.0
3 85.0
5 82.0
6 200.0
Waterloo 2 90.0
4 79.0
Name: points, dtype: float64
df.groupby('city')['points'].apply(lambda x:x.rolling(window=2).mean())
city
Montreal 1 NaN
Toronto 0 NaN
3 82.5
5 83.5
6 141.0
Waterloo 2 NaN
4 84.5
Name: points, dtype: float64
Score: 5
Category: pandas