Ich habe eine Reihe von Datenzeilen in einem Pandas DF, die inkonsistent versetzende Zeichen enthalten. Für jede Spiel-ID (eine andere Spalte) sind die zwei Zeichenfolgen für diese Spiel-ID eindeutig, schalten jedoch nicht in einem vorhersagbaren Muster aus. Unabhängig davon versuche ich eine Hilfsfunktion zu schreiben, die jede eindeutige Spiel-ID nimmt und die beiden Team-Namen erhält.Strings in Pandas DF wiederholen - wollen eine Liste eindeutiger Strings zurückgeben
Zum Beispiel ...
index game_id 0 400827888 1 400827888 2 400827888 3 400827888 4 400827888 ... 555622 400829117 555623 400829117 555624 400829117 555625 400829117
index team 0 ATL 1 DET 2 ATL 3 DET 4 ATL ... 555622 POR 555623 DEN 555624 POR 555625 POR
Hier ist mein jämmerlicher Versuch, der nicht funktioniert.
def get_teams(df):
for i in df['gameid']:
both_teams = [df['team'].astype(str)]
return(both_teams)
Ich möchte es [ 'ATL', zurückzukehren 'DET] für Game ID 400827888 und [' POR‘, 'DEN'] für Game ID 400829117. Stattdessen es kehrt nur den Teamnamen mit jedem Index verbunden.
Danke dafür. Was ist der beste Weg, um die zweite Spalte der Teamlisten zu durchlaufen? Ich habe die groupby auf eine neue Variable initialisiert, kann aber die Spalte aus dieser Variablen nicht aufrufen. – BSHuniversity
def get_teams (df, Team): für game_id in df [ 'GameID'.]: both_teams = df.groupby ('GameID') [ 'Team'] einzigartig() team_games = [] für Zeile in both_teams : wenn team in row [1]: team_games.append (game_id) Scheint aus irgendeinem Grund eine Endlosschleife zu sein. – BSHuniversity
Sorry, brauchst du 'für g in df.groupby ('game_id') ['team']. Unique(): drucken (g)'? – jezrael