Untitled

From Tiny Macaque, 2 Months ago, written in Plain Text, viewed 47 times.
URL http://codebin.org/view/412bd38b Embed
Download Paste or View Raw
  1. # функция для визуализации конверсии
  2.  
  3. def plot_conversion(conversion, conversion_history, horizon, window=7):
  4.  
  5.     # задаём размер сетки для графиков
  6.     plt.figure(figsize=(15, 5))
  7.  
  8.     # исключаем размеры когорт
  9.     conversion = conversion.drop(columns=['cohort_size'])
  10.     # в таблице динамики оставляем только нужный лайфтайм
  11.     conversion_history = conversion_history.drop(columns=['cohort_size'])[
  12.         [horizon - 1]
  13.     ]
  14.  
  15.     # первый график — кривые конверсии
  16.     ax1 = plt.subplot(1, 2, 1)
  17.     conversion.T.plot(grid=True, ax=ax1)
  18.     plt.legend()
  19.     plt.xlabel('Лайфтайм')
  20.     plt.title('Конверсия пользователей')
  21.  
  22.     # второй график — динамика конверсии
  23.     ax2 = plt.subplot(1, 2, 2, sharey=ax1)
  24.     columns = [
  25.         # столбцами сводной таблицы станут все столбцы индекса, кроме даты
  26.         name for name in conversion_history.index.names if name not in ['dt']
  27.     ]
  28.     filtered_data = conversion_history.pivot_table(
  29.         index='dt', columns=columns, values=horizon - 1, aggfunc='mean'
  30.     )
  31.     filter_data(filtered_data, window).plot(grid=True, ax=ax2)
  32.     plt.xlabel('Дата привлечения')
  33.     plt.title('Динамика конверсии пользователей на {}-й день'.format(horizon))
  34.  
  35.     plt.tight_layout()
  36.     plt.show()

Reply to "Untitled"

Here you can reply to the paste above