У меня есть таблица со спортивными результатами. Они помечены примерно так: столбец A - это команда хозяев, столбец B - команда гостей, столбец C - счет хозяев, столбец D - счет гостей, а столбец E - окончательный результат. Также для этой цели есть столбец даты, который я остановил, но он есть.
PIT PHI 4 5 Away
PIT BOS 3 5 Away
BOS SJS 3 2 Home
SJS PHI 1 1 Draw
PIT SJS 3 2 Home
PHI BOS 4 3 Home
Я хотел бы добавить два столбца к этому фрейму данных. У первого должна быть сумма голов, забитых за домашнюю команду в последних 3 играх (все игры, а не только домашние игры), но не включая результаты текущего ряда. У второго должна быть сумма голов, забитых за выездную команду в последних 3 играх (все игры, а не только выездные), но не включая результаты текущего ряда.
Итак, скажем, следующий ряд в этом листе есть: ЛС в качестве домашней команды, ПИТ в качестве домашней команды. В своих 3 последних играх до этого ЛС забил 11 голов. В своих 3 последних играх до этого ПИТ забил 10 голов. Таким образом, предполагая, что игра заканчивается 5-5 (или каков бы ни был результат), строка должна выглядеть следующим образом с двумя добавленными столбцами.
BOS PIT 5 5 Draw 11 10
Есть пара вещей, которые делают это трудным для меня.
При нахождении последних 3 раз значение (скажем, «BOS») появляется в кадре данных, я не знаю, как объяснить, что оно может быть в столбце A или B. И я также не знаю, как указать, что значение следует добавлять из столбца C, когда BOS находится в столбце A, и из столбца D, когда BOS находится в столбце B.
Я хочу сделать это БЕЗ транспонирования набор данных, так что каждая команда имеет свою линию. Ie Я НЕ ХОЧУ:
BOS 5 Draw 11
PIT 5 Draw 10
Исходный набор данных нуждается в сохранении форматирования.
Наконец, мне также не ясно, как добавить это в строки, пока НЕ включая текущую строку в сумму. Это как-то просто с помощью shift ()?
Заранее большое спасибо.