Я пытаюсь объединить фрейм данных на основе значений, найденных в двух столбцах.Я пытаюсь объединить фрейм данных таким образом, чтобы строки, имеющие некоторое значение X в столбце A или столбце B, были объединены вместе.
Более конкретно, я пытаюсь сделать что-то подобное.Допустим, у меня есть дата-фрейм gameStats:
awayTeam homeTeam awayGoals homeGoals
Chelsea Barca 1 2
R. Madrid Barca 2 5
Barca Valencia 2 2
Barca Sevilla 1 0
... и т. Д.
Я хочу построить фрейм данных таким образом, чтобы среди моих строк у меня было что-то вроде:
team goalsFor goalsAgainst
Barca 10 5
Одним из очевидных решений, поскольку набор уникальных элементов мал, является что-то вроде этого:
for team in teamList:
aggregateDf = gameStats[(gameStats['homeTeam'] == team) | (gameStats['awayTeam'] == team)]
# do other manipulations of the data then append it to a final dataframe
Однако прохождение цикла кажется менее элегантным.И поскольку у меня раньше была эта проблема со многими уникальными идентификаторами, мне было интересно, есть ли способ сделать это без использования цикла, поскольку это кажется мне очень неэффективным.