Aufteilen einer Pandas-Listenspalte in mehrere Spalten
Bei der Datenexploration ist es oft notwendig, DataFrame-Spalten in ein besser verwaltbares Format umzustrukturieren. Ein solches Szenario beinhaltet die Aufteilung einer Spalte mit Listen in mehrere Spalten.
Stellen Sie sich einen DataFrame mit einer einzelnen Spalte namens „Teams“ vor, die Listen mit Teamnamen enthält:
import pandas as pd df = pd.DataFrame({ "teams": [[ "SF", "NYG" ] for _ in range(7)] })
So teilen Sie dies auf Wenn wir die Spalte „teams“ in zwei Spalten, „team1“ und „team2“, aufteilen, können wir den DataFrame-Konstruktor mit Listen nutzen, die von to_list erstellt wurden Methode.
Option 1: Vorhandenen DataFrame ändern
Mit der to_list-Methode können wir die „teams“-Liste in eine Liste von Listen umwandeln, die dazu verwendet werden kann Erstellen Sie die neuen Spalten „team1“ und „team2“:
df[['team1', 'team2']] = pd.DataFrame(df['teams'].tolist(), index=df.index)
Dieser Vorgang ändert den ursprünglichen DataFrame durch den neuen Spalten:
teams team1 team2 0 [SF, NYG] SF NYG 1 [SF, NYG] SF NYG 2 [SF, NYG] SF NYG 3 [SF, NYG] SF NYG 4 [SF, NYG] SF NYG 5 [SF, NYG] SF NYG 6 [SF, NYG] SF NYG
Option 2: Erstellen eines neuen DataFrame
Alternativ können wir bei Bedarf einen neuen DataFrame mit den geteilten Spalten erstellen:
df3 = pd.DataFrame( df['teams'].tolist(), columns=['team1', 'team2'] )
Dieser Vorgang erstellt einen separaten DataFrame:
team1 team2 0 SF NYG 1 SF NYG 2 SF NYG 3 SF NYG 4 SF NYG 5 SF NYG 6 SF NYG
Bitte beachten Sie, dass bei der Anwendung von Die Funktion apply(pd.Series) zum Erreichen dieser Aufteilung ist deutlich langsamer und wird für größere Datensätze nicht empfohlen.
Das obige ist der detaillierte Inhalt vonWie kann ich eine Pandas-Listenspalte effizient in mehrere Spalten aufteilen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!