Advertisement
Dodma

Untitled

Apr 22nd, 2020
121
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.18 KB | None | 0 0
  1. tariff = pd.read_csv('/datasets/tariffs.csv',index_col = 'tariff_name')
  2. def users_benefits(row, tariffs = tariffs):
  3. short_min = row['calls_duration_total']
  4. short_message = row['messages']
  5. short_internet = row['mb_used']
  6. tariff = row['tariff']
  7.  
  8. minutes_limit = tariffs.loc[tariff, 'minutes_included']
  9. messages_limit = tariffs.loc[tariff, 'messages_included']
  10. internet_limit = tariffs.loc[tariff, 'mb_per_month_included']
  11.  
  12. call_overlimit = max(short_min - minutes_limit, 0)
  13. call_overpay = call_overlimit * tariffs.loc[tariff, 'rub_per_minute']
  14.  
  15. messages_overlimit = max(short_message - messages_limit, 0)
  16. messages_overpay = messages_overlimit * tariffs.loc[tariff, 'rub_per_message']
  17.  
  18. internet_overlimit = max(short_internet - internet_limit, 0)
  19. internet_overpay = internet_overlimit * tariffs.loc[tariff, 'rub_per_gb']
  20.  
  21. profit = call_overpay + messages_overpay + internet_overpay + tariffs.loc[tariff, 'rub_monthly_fee']
  22. return profit
  23.  
  24.  
  25. data_grouped['profit'] = data_grouped['tariff', 'calls_duration_total', 'mb_used', 'messages'].apply(users_benefits, axis = 1)
  26. data_grouped
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement