>>> df = pd.DataFrame({'A': range(3), 'B': range(1, 4)})
>>> df
A B
0 0 1
1 1 2
2 2 3
>>> df.transform(lambda x: x + 1)
A B
0 1 2
1 2 3
2 3 4
# when used with groupby, transform is faster than filter
# use transform instead of filter e.g.
df = df[(df.groupby('col1')['col2'].transform('sum')>=200)
& (df.groupby('col1')['col3'].transform('nunique')>=20)]