Hallo Ich habe eine CSV-Datei Sportergebnisse für die englische Premier League, die ich ein einzelnes Team manipulieren möchte, das sich entweder in einer Haus- oder Abwesenheitsspalte befindet. Ich möchte dann in der Lage sein, eine Reihe von Spalten zu erstellen, die nach diesem Team sortiert sind und dann die Ergebnisse wie folgt zurückgeben. Ich war in der Lage, dies in einer Schleife zu tun, würde aber gerne die Pandas-Methode kennen. Ich habe versucht, nach Team-Arsenal zu gruppieren, aber ich finde es schwierig, das mit zwei Spaltenoptionen zu tun, wo ich Teilmengen des gegnerischen Teams umdrehen müsste.Teilen und Anhängen nach Name über zwei Spalten in Pandas
df = pd.read_csv(
'http://www.football-data.co.uk/mmz4281/1516/E0.csv',
sep=',')
result= df[(df['HomeTeam'] == "Arsenal") | (df.AwayTeam == "Arsenal")]
for index, row in result.iterrows():
if row['HomeTeam'] == "Arsenal":
if row['FTR'] == "H":
print ('Win' , 'Home', row['FTHG'], '-', row['FTAG'])
elif row['FTR'] == "D":
print ('Draw' , 'Home', row['FTHG'], '-', row['FTAG'])
else:
print ('Lose' , 'Home', row['FTHG'], '-', row['FTAG'])
# we dont need to put the conditons for else because we know if arsenal are not the home team they must be the away team,
# this is because we already set out dataframe filter above to show only games where arsenal is home or away, if we didnt
# do this we would do an elif and then do an improper result print for else
else:
if row['FTR'] == "H":
print ('Win' , 'Home', row['FTHG'], '-', row['FTAG'])
elif row['FTR'] == "D":
print ('Draw' , 'Home', row['FTHG'], '-', row['FTAG'])
else:
print ('Lose' , 'Home', row['FTHG'], '-', row['FTAG'])
Danke. Von diesem Punkt könnte ich dann alle zusätzlichen Felder neben der Heimmannschaft, Auswärtsmannschaft und dem neuen "out" hinzufügen? –
Ich tinke es hängt davon ab, was du als nächstes tun musst, aber wenn Daten in df dann ja brauchen. Oder kannst du mehr erklären? – jezrael
Sicher, zum Beispiel würde ich gerne in der Lage sein, die Felder der gesamten Heim-und Auswärtsziele zu haben, damit ich anfangen kann, über diese zu iterieren? –