Vitaliy_Novichikhin

8.5.1 6 значений, неверный график-хитмэп, решение на основе предыдущей задачи

Feb 12th, 2022 (edited)
238
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 2.04 KB | None | 0 0
  1. import pandas
  2. import seaborn
  3.  
  4. data = pandas.read_csv('support_data.csv')
  5.  
  6. # названия сегментов и интервалов
  7. segments_old = ['Segment 0', 'Segment 1', 'Segment 2']
  8. segments_new = ['Потенциальные клиенты', 'Обычные клиенты', 'VIP-клиенты']
  9. intervals = ['До внедрения роботов', 'После внедрения роботов']
  10.  
  11. intervals_column = list(data['interval'])
  12. segments_column = list(data['segment'])# ваш код здесь
  13. score_column = list(data['score'])# ваш код здесь
  14. #print(sum(score_column[:300]))
  15. # средние оценки
  16. mean_scores = []
  17.  
  18. # ваш код здесь
  19. # Создаём по циклу для каждой ячейки хитмэпа До и После
  20. counter_before = 0 # обнуляем счетчик значений
  21. counter_after = 0
  22. score_before = 0
  23. score_after = 0
  24. counter_before_list = [] #создаем списки для подсчета одинаковых значений до и после внедрения роботов
  25. counter_after_list = []
  26. for segment in segments_old:
  27.     score_before = 0
  28.     counter_before = 0
  29.     score_after = 0
  30.     counter_after = 0
  31.    
  32.     for cnt in intervals_column:
  33.         if cnt == intervals[0]:
  34.             counter_before_list.append(cnt)
  35.             counter_before = len(counter_before_list)
  36.             score_before = sum(score_column[:(counter_before+1)])
  37.     #        score_before = sum(float(counter_before_list))
  38.         if cnt == intervals[1]:
  39.             counter_after_list.append(cnt)
  40.             counter_after = len(counter_after_list)
  41.             score_after = sum(score_column[:(counter_after+1)])
  42. #print(counter_before_list[:5])
  43.     segment_scores = [score_before / counter_before, score_after / counter_after]
  44.     mean_scores.append(segment_scores)
  45.  
  46. #
  47.     print(counter_before, score_before)
  48.     print(counter_after, score_after)
  49.  
  50.  
  51. seaborn.heatmap(mean_scores, xticklabels=intervals, yticklabels=segments_new, annot=True, cmap='RdYlGn')
  52.  
Add Comment
Please, Sign In to add comment