Вот еще один способ:
Создание кадра данных с командами:
results_di = {
"Home Team": [
"KV Mechelen",
"KSV Cercle Brugge",
"RSC Anderlecht",
"KV Mechelen",
"SV Zulte-Waregem",
"FC Zürich",
"FC St. Gallen",
"FC Vaduz",
"Grasshopper Club Zürich",
"BSC Young Boys",
],
"Away Team": [
"KRC Genk",
"Club Brugge KV",
"SV Zulte-Waregem",
"RSC Anderlecht",
"KSV Roeselare",
"FC Thun",
"FC Thun",
"FC Luzern",
"FC Sion",
"FC Basel",
],
"home_team_goal": [2, 1, 2, 2, 0, 3, 1, 1, 2, 4],
"away_team_goal": [1, 3, 0, 1, 0, 3, 0, 2, 0, 3],
}
df = pd.DataFrame(results_di)
df['winner'] = 'none'
home_win = df['home_team_goal'] - df["away_team_goal"] > 0
away_win = df["away_team_goal"] - df['home_team_goal'] > 0
df.loc[home_win, "winner"] = df.loc[home_win, 'Home Team']
df.loc[away_win, "winner"] = df.loc[away_win, 'Away Team']
print (df)
Home Team Away Team home_team_goal away_team_goal \
0 KV Mechelen KRC Genk 2 1
1 KSV Cercle Brugge Club Brugge KV 1 3
2 RSC Anderlecht SV Zulte-Waregem 2 0
3 KV Mechelen RSC Anderlecht 2 1
4 SV Zulte-Waregem KSV Roeselare 0 0
5 FC Zürich FC Thun 3 3
6 FC St. Gallen FC Thun 1 0
7 FC Vaduz FC Luzern 1 2
8 Grasshopper Club Zürich FC Sion 2 0
9 BSC Young Boys FC Basel 4 3
winner
0 KV Mechelen
1 Club Brugge KV
2 RSC Anderlecht
3 KV Mechelen
4 none
5 none
6 FC St. Gallen
7 FC Luzern
8 Grasshopper Club Zürich
9 BSC Young Boys