Средние оценки
Постройте хитмэп с такими же настройками, но уже по настоящим значениям — средним пользовательским оценкам в каждом из сегментов до и после внедрения роботов.
Вычислить средние показатели можно несколькими способами:
Создать по циклу для каждой «ячейки» хитмэпа и в каждом цикле найти соответствующее среднее;
Написать цикл по всем сегментам и во вложенном цикле вычислить значения для обоих периодов — «до» и «после»;
Сделать «тройной» цикл: внешний, вложенный и внутри ещё один. Не переживайте, если пока не можете такой написать — позже мы покажем, как это сделать.
Средние оценки сохраняйте в mean_scores методом append(). Обратите внимание, что каждую пару значений «до» и «после» для сегментов перед добавлением в mean_scores следует также хранить в списке, чтобы в конце получился список списков, как в примере.
import pandas
import seaborn
data = pandas.read_csv('support_data.csv')
# названия сегментов и интервалов
segments_old = ['Segment 0', 'Segment 1', 'Segment 2']
segments_new = ['Потенциальные клиенты', 'Обычные клиенты', 'VIP-клиенты']
intervals = ['До внедрения роботов', 'После внедрения роботов']
intervals_column = list(data['interval'])
segments_column = list(data['segment'])# ваш код здесь
score_column = list(data['score'])# ваш код здесь
# средние оценки
mean_scores = []
for segment in segments_old:
score_before=0
score_after=0
counter_before=0
counter_after=0 # допишите код
for index in range(len(data)):
if segments_column[index] == segment:
if intervals_column[index] == 'До внедрения роботов':
score_before += score_column[index]
counter_before = +1
else:
score_after += score_column[index]
counter_after += 1
segment_scores = [score_before/ counter_before, score_after/counter_after]
mean_scores.append(segment_scores)
seaborn.heatmap(mean_scores, xticklabels=intervals, yticklabels=segments_new, annot=True, cmap='RdYlGn')
Не могу понять, что не так. Может кто-то сталкивался, кто уже проходил.
Python
Помогите, пожалуйста, с задачей Python , Яндекс практикум.
Тебе это надо или мне? Сам
Юра Шавров
Я не прошу решить. Прошу подсказать. Где я, возможно, ошибся (отступы не в счет).
Юра Шавров
Всё, нашел. Блин, один маленький косяк и весь код насмарку.... Ерунда была
Виталий Яньес
не понимаю как построить логику мышления.
подскажи как сделал сижу второй день ломаю голову
Юрий Вербовский
import pandas
import seaborn
data = pandas.read_csv('support_data.csv')
# названия сегментов и интервалов
segments_old = ['Segment 0', 'Segment 1', 'Segment 2']
segments_new = ['Потенциальные клиенты', 'Обычные клиенты', 'VIP-клиенты']
intervals = ['До внедрения роботов', 'После внедрения роботов']
intervals_column = list(data['interval'])
segments_column = list(data['segment'])# ваш код здесь
score_column = list(data['score'])# ваш код здесь
# средние оценки
mean_scores = []
import seaborn
data = pandas.read_csv('support_data.csv')
# названия сегментов и интервалов
segments_old = ['Segment 0', 'Segment 1', 'Segment 2']
segments_new = ['Потенциальные клиенты', 'Обычные клиенты', 'VIP-клиенты']
intervals = ['До внедрения роботов', 'После внедрения роботов']
intervals_column = list(data['interval'])
segments_column = list(data['segment'])# ваш код здесь
score_column = list(data['score'])# ваш код здесь
# средние оценки
mean_scores = []
Юрий Вербовский
# ваш код здесь
for segment in segments_old:
score_before = 0
score_after = 0
sum_score_before = 0
sum_score_after = 0
for index in range(len(data)):
if segments_column[index] == segment:
if intervals_column[index] == 'До внедрения роботов':
sum_score_before += score_column[index]
score_before += 1
elif intervals_column[index] == 'После внедрения роботов':
sum_score_after += score_column[index]
score_after += 1
segment_scores = [sum_score_before/score_before, sum_score_after/score_after]
mean_scores.append(segment_scores)
print(mean_scores)
seaborn.heatmap(mean_scores, xticklabels=intervals, yticklabels=segments_new, annot=True, cmap='RdYlGn')
for segment in segments_old:
score_before = 0
score_after = 0
sum_score_before = 0
sum_score_after = 0
for index in range(len(data)):
if segments_column[index] == segment:
if intervals_column[index] == 'До внедрения роботов':
sum_score_before += score_column[index]
score_before += 1
elif intervals_column[index] == 'После внедрения роботов':
sum_score_after += score_column[index]
score_after += 1
segment_scores = [sum_score_before/score_before, sum_score_after/score_after]
mean_scores.append(segment_scores)
print(mean_scores)
seaborn.heatmap(mean_scores, xticklabels=intervals, yticklabels=segments_new, annot=True, cmap='RdYlGn')
Юрий Вербовский
Интервалы не отобразились только.
Баха Батталов
Оцените соотношение значений в датасете по сегментам пользователей. Для этого посчитайте число строк, относящихся к каждому сегменту — 'Segment 0', 'Segment 1', 'Segment 2'. Выведите полученные значения на разных строках по порядку: нулевой, первый, второй.
import pandas
data = pandas.read_csv('support_data.csv')
segment = list(data['segment'])
zero_segment = 0
first_segment = 0
second_segment = 0
for index in segment:
if index == 'Segment 0':
zero_segment = zero_segment +1
if index == 'Segment 1':
first_segment = first_segment +1
if index == 'Segment 2':
second_segment = second_segment +1
print(zero_segment)
print(first_segment)
print(second_segment)
Пишет - неверные переменные. Не могу понять что не так
import pandas
data = pandas.read_csv('support_data.csv')
segment = list(data['segment'])
zero_segment = 0
first_segment = 0
second_segment = 0
for index in segment:
if index == 'Segment 0':
zero_segment = zero_segment +1
if index == 'Segment 1':
first_segment = first_segment +1
if index == 'Segment 2':
second_segment = second_segment +1
print(zero_segment)
print(first_segment)
print(second_segment)
Пишет - неверные переменные. Не могу понять что не так
Баха Батталов
Ой, не та задача!
import pandas
data = pandas.read_csv('support_data.csv')
segment = list(data['segment'])
robocats = list(data['robocats'])
zero_segment = 0
first_segment = 0
second_segment = 0
counter = 0
for value in range(len(data)):
if segment[value] == 'Segment 0':
zero_segment += robocats[value]
counter += 1
if segment[value] == 'Segment 1':
first_segment += robocats[value]
counter += 1
if segment[value] == 'Segment 2':
second_segment += robocats[value]
counter += 1
print(zero_segment / counter)
print(first_segment / counter)
print(second_segment / counter)
import pandas
data = pandas.read_csv('support_data.csv')
segment = list(data['segment'])
robocats = list(data['robocats'])
zero_segment = 0
first_segment = 0
second_segment = 0
counter = 0
for value in range(len(data)):
if segment[value] == 'Segment 0':
zero_segment += robocats[value]
counter += 1
if segment[value] == 'Segment 1':
first_segment += robocats[value]
counter += 1
if segment[value] == 'Segment 2':
second_segment += robocats[value]
counter += 1
print(zero_segment / counter)
print(first_segment / counter)
print(second_segment / counter)
Баха Батталов
Не могу отредактировать напишу заново.
Чтобы найти средние показатели, в каждом сегменте разделите количество робокотов на количество обращений. Выведите полученные значения на экран на отдельных строках в обычном порядке: нулевой, первый, второй.
Удобнее всего добавить в подсчёт робокотов для каждого сегмента из предыдущего задания подсчёт обращений, а затем вывести на экран результат деления одного на другое:
cats = 0
counter = 0
for index in range(len(data)):
if segment[index] == 'Segment 0':
cats += robocats[index]
counter += 1
print(cats / counter)
Пояснения к задаче. Извиняюсь что выслала сперва не то, просто просматривала, что возможно упустила что то ранее и на автомате скопировала
Чтобы найти средние показатели, в каждом сегменте разделите количество робокотов на количество обращений. Выведите полученные значения на экран на отдельных строках в обычном порядке: нулевой, первый, второй.
Удобнее всего добавить в подсчёт робокотов для каждого сегмента из предыдущего задания подсчёт обращений, а затем вывести на экран результат деления одного на другое:
cats = 0
counter = 0
for index in range(len(data)):
if segment[index] == 'Segment 0':
cats += robocats[index]
counter += 1
print(cats / counter)
Пояснения к задаче. Извиняюсь что выслала сперва не то, просто просматривала, что возможно упустила что то ранее и на автомате скопировала
Баха Батталов
Нужно решение второй задачи
Виталий Яньес
Не понимаю, как построить логику мышления для решения данной задачи
еще учишься?
import pandas
import seaborn
data = pandas.read _csv('support_data.csv')
segments_old = ['Segment 0', 'Segment 1', 'Segment 2']
segments_new = ['Потенциальные клиенты', 'Обычные клиенты', 'VIP-клиенты']
intervals = ['До внедрения роботов', 'После внедрения роботов']
intervals_column = list(data['interval'])
segments_column = list(data['segment'])
score_column = list(data['score'])
mean_scores = []
for segment in segments_old:
score_before = 0
counter_before = 0
score_after = 0
counter_after = 0
for index in range(len(data)):
if segments_column[index] == segment:
if intervals_column[index] == 'До внедрения роботов':
score_before += score_column[index]
counter_before += 1
else:
score_after += score_column[index]
counter_after += 1
segment_scores = [score_before / counter_before, score_after / counter_after]
mean_scores.append(segment_scores)
seaborn.heatmap(mean_scores, xticklabels=intervals, yticklabels=segments_new, annot=True, cmap='RdYlGn')
import seaborn
data = pandas.read _csv('support_data.csv')
segments_old = ['Segment 0', 'Segment 1', 'Segment 2']
segments_new = ['Потенциальные клиенты', 'Обычные клиенты', 'VIP-клиенты']
intervals = ['До внедрения роботов', 'После внедрения роботов']
intervals_column = list(data['interval'])
segments_column = list(data['segment'])
score_column = list(data['score'])
mean_scores = []
for segment in segments_old:
score_before = 0
counter_before = 0
score_after = 0
counter_after = 0
for index in range(len(data)):
if segments_column[index] == segment:
if intervals_column[index] == 'До внедрения роботов':
score_before += score_column[index]
counter_before += 1
else:
score_after += score_column[index]
counter_after += 1
segment_scores = [score_before / counter_before, score_after / counter_after]
mean_scores.append(segment_scores)
seaborn.heatmap(mean_scores, xticklabels=intervals, yticklabels=segments_new, annot=True, cmap='RdYlGn')
так в чем ошибка была?
import pandas
import seaborn
data = pandas.read _csv('support_data.csv')
# названия сегментов и интервалов
segments_old = [ 'Segment 1', 'Segment 2']
segments_new = [ 'Обычные клиенты', 'VIP-клиенты']
intervals = ['До внедрения роботов', 'После внедрения роботов']
intervals_column = list(data['interval'])
segments_column = list(data['segment'])
score_column = list(data['score'])
#print(sum(score_column[:300]))
# средние оценки
mean_scores = []
counter_before = 0
counter_after = 0
score_before = 0
score_after = 0
counter_before_list = []
counter_after_list = []
for before in intervals_column:
if before == intervals[0]:
counter_before_list.append(before)
counter_before = len(counter_before_list)
score_before = sum(counter_before_list)
if before == intervals[1]:
counter_after_list.append(before)
counter_after = len(counter_after_list)
score_after
print(counter_before)
print(counter_after)
import seaborn
data = pandas.read _csv('support_data.csv')
# названия сегментов и интервалов
segments_old = [ 'Segment 1', 'Segment 2']
segments_new = [ 'Обычные клиенты', 'VIP-клиенты']
intervals = ['До внедрения роботов', 'После внедрения роботов']
intervals_column = list(data['interval'])
segments_column = list(data['segment'])
score_column = list(data['score'])
#print(sum(score_column[:300]))
# средние оценки
mean_scores = []
counter_before = 0
counter_after = 0
score_before = 0
score_after = 0
counter_before_list = []
counter_after_list = []
for before in intervals_column:
if before == intervals[0]:
counter_before_list.append(before)
counter_before = len(counter_before_list)
score_before = sum(counter_before_list)
if before == intervals[1]:
counter_after_list.append(before)
counter_after = len(counter_after_list)
score_after
print(counter_before)
print(counter_after)
Похожие вопросы
- Помогите пожалуйста сделать задание в Яндекс.практикум Python. Завис на задании.
- Помогите, пожалуйста, решить задачу Python
- Помогите пожалуйста с задачей python
- Помогите решить задачу в яндекс-практикуме Python
- Помогите решить задачу в яндекс-практикуме Python
- Python яндекс практикум
- Помогите пожалуйста с задачей на Python.
- Помогите пожалуйста с задачей по python!
- Помогите пожалуйста с задачей на Python.
- Помогите пожалуйста решить задачу "Ход конём" в Python.