У меня есть очень длинный кадр данных (мастер), как это: (последняя строка, что я ожидаю, чтобы получить, но я не мог понять, как это сделать)Как суммировать последние п строк условно в R
id Match Points Team Team/Points in last 3 matches
44631 154235 3 Nacional 4
44623 154231 3 Millonarios 3
44639 154239 1 Nacional 4
44640 154239 1 Junior 4
44637 154238 1 Millonarios 5
44670 154260 3 Junior 2
44657 154249 3 Nacional 2
44668 154258 1 Millonarios 7
44495 154149 0 Nacional 3
44685 154263 1 Junior 1
44687 154266 1 Nacional 3
44688 154266 1 Millonarios 6
44698 154265 3 Millonarios 3
44695 154264 0 Junior 1
44707 154274 1 Nacional 2
44713 154273 1 Nacional 1
44724 154281 3 Millonarios 0
44725 154282 1 Junior 0
44737 154991 1 Nacional 0
И я хочу создать новый столбец (Team/Points в последних 3 матчах), который показывает суммарную сумму очков для каждой команды за последние 3 матча. То, что последний ряд матча команды должен суммировать очки, набранные для этой команды в последних 3 матчах.
я мог бы построить прошлое накопленную сумму очков за каждый матч team's, но я couldn't выяснить, как ограничить эту сумму в трех последних матчах ...
Это мой код:
>master$ptos_antes <- ave(master$points,master$teamXtourn,
FUN=function(x) cumsum(c(0, head(x,-1)))
)
master$teamXtourn
является ключевым полем, которое я сделал, чтобы подмножество последних матчей накопленную сумму на турнире сезона. Является ли master $ id_team конкатенированным с master $ id_tournament. Он работает нормально, чтобы обеспечить общее количество очков, полученных для каждой команды перед каждым матчем, но теперь я хочу того же, но ограничено до последних трех матчей.
Нет подходящих дат. Являются ли матчи в хронологическом порядке? Или должны ли данные упорядочиваться по идентификатору Match как переменной времени? –
Это называется столбцом, а не строкой. Кроме того, почему в первой строке уже есть 4 кумулятивных пункта? –
Да. Есть даты матчей. Мне жаль, что я не включил их в образец данных. Матчи сортируются по дате_мач. –