Untitled

From Kotya, 2 Months ago, written in Plain Text, viewed 117 times.
URL http://codebin.org/view/df38aa16 Embed
Download Paste or View Raw
  1. import pandas as pd
  2. from datetime import datetime, timedelta
  3.  
  4. visits = pd.read_csv('ch02_problems03_visits.csv')  # журнал сессий
  5. purchases = pd.read_csv('ch02_problems02_orders.csv')  # покупки
  6. ad_costs = pd.read_csv('ch02_problems02_costs.csv')  # траты на рекламу
  7.  
  8. # преобразование данных о времени
  9. visits['session_start'] = pd.to_datetime(visits['session_start'])
  10. purchases['event_dt'] = pd.to_datetime(purchases['event_dt'])
  11.  
  12. min_date = datetime(2020, 7, 11).date()  # добавьте самую раннюю дату в отчёте в формате datetime
  13. max_date = datetime(2020, 8, 10).date()
  14.  
  15. # находим количество дней в отчёте
  16. days_num = (max_date - min_date).days
  17.  
  18. # создаём пустую таблицу для рекламных трат
  19. daily_costs = []
  20.  
  21. # перебираем данные о затратах по источникам
  22. for index, values in ad_costs.iterrows():
  23.  
  24.     channel_name = values['channel']  # определите канал привлечения
  25.     channel_costs = values['costs'] # и общие рекламные траты на него
  26.     avg_channel_costs = channel_costs / days_num # рассчитайте средние траты за день
  27.  
  28.     # заполняем таблицу рекламных трат
  29.     for i in range(days_num):
  30.         current_day = min_date + timedelta(i) # рассчитайте текущую дату
  31.         # добавляем строку в таблицу трат
  32.         daily_costs += [[current_day, channel_name, avg_channel_costs]]
  33.  
  34.  # превращаем таблицу рекламных трат в датафрейм
  35. daily_costs = pd.DataFrame(daily_costs, columns=['dt', 'channel', 'costs'])
  36. # преобразуем данные о времени
  37. daily_costs['dt'] = daily_costs['dt'].dt.date
  38.  
  39. print(daily_costs.head(5))

Reply to "Untitled"

Here you can reply to the paste above