У меня есть набор данных нескольких обзоров игр, и я хочу подсчитать общий общий балл, который была у каждой игры до соответствующего дня, - так что, в основном, общий балл, который пользователь видел за каждый день.
Отзывыбинарная система, так что это просто система повышения / понижения голосов, где каждая 1 в столбце положительно отмечает положительный голос:
game_id created positive
123 2018-07-18 1
123 2018-07-18 0
123 2018-07-18 1
123 2018-07-19 1
456 2018-06-23 1
456 2018-06-25 1
456 2018-06-25 0
456 2018-06-26 1
789 2018-07-18 1
вычисление общего среднего значения за день легко с
group_by(game_id, created) %>%
summarise(sum(positive)/n()
, но яЯ борюсь с тем, как включить обзоры предыдущих дней.
Я хочу, чтобы это выглядело так:
game_id created total_score
123 2018-07-18 0.66
123 2018-07-19 0.75
456 2018-06-23 1.0
456 2018-06-25 0.5
456 2018-06-26 0.66
789 2018-07-18 1
Я думал об использовании комбинации цикла и оператора if, ноя не могу сформулировать его (и сомневаюсь в его эффективности для больших наборов данных ...)