Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- df1 = pd.DataFrame({
- 'date': ['31-05-2017', '31-05-2017', '31-05-2017', '31-05-2017', '01-06-2017', '01-06-2017'],
- 'tag': ['A', 'B', 'B', 'B', 'A', 'A'],
- 'metric1': [0, 0, 0, 1, 1, 1],
- 'metric2': [0, 1, 1, 0, 1, 0]
- })
- df2 = pd.DataFrame({
- 'date': ['31-05-2017', '31-05-2017', '01-06-2017'],
- 'tag': ['A', 'B', 'A'],
- 'metric3': [25, 3, 7,]
- })
- date | tag | metric1_sum | metric2_sum | metric2_percentage| metric 3
- -----------|-----|-------------|-------------|-------------------|---------
- 31-05-2017 | A | 0 | 0 | 0 | 25
- 31-05-2017 | B | 1 | 2 | 0.667 | 3
- 01-06-2017 | A | 1 | 0 | 0.5 | 7
- >>> g = df1.groupby(['date', 'tag']).agg(sum)
- metric1 metric2
- date tag
- 01-06-2017 A 2 1
- 31-05-2017 A 0 0
- B 1 2
- >>> g.groupby(level=0).apply(lambda x: x/float(x.sum()))
- metric2
- date tag
- 01-06-2017 A 1.0
- 31-05-2017 A 0.0
- B 1.0
- >>> pd.merge(g, df2, how='left', on=['date', 'tag'])
- KeyError: 'date'
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement