- data4_pivot = data4.pivot_table(index=['user_id', 'month'], values=['distance', 'duration', 'name', 'subscription_type'], aggfunc={'distance':'sum', 'duration':'sum', 'name':'count', 'subscription_type': 'min'})
- data4_pivot.columns = ['total_distance', 'total_duration', 'trip_count', 'subscription_type']
- data4_pivot['total_duration'] = round(data4_pivot['total_duration'], 0)
- def money(subscription_type):
- if subscription_type == 'ultra':
- return data4_pivot['total_duration'] * 6 + data4_pivot['subscription_type'].count() * 199
- if subscription_type == 'free':
- return data4_pivot['total_duration']* 8 + data4_pivot['trip_count'].count() * 50
- data4_pivot['money'] = data4_pivot['subscription_type'].apply(money)