Komma-getrennte Pandas-Datenrahmenzeichenfolgen in separate Zeilen aufteilen
In Pandas-Datenrahmen kommt es häufig vor, dass eine oder mehrere Spalten Komma- getrennte Werte (CSV), die in einzelne Zeilen aufgeteilt werden müssen. Um dies zu erreichen, können mehrere Ansätze verwendet werden:
Verwendung von Series.explode() oder DataFrame.explode():
Diese Methode ist in Pandas 0.25.0 verfügbar und höher und ist speziell für explodierende listenartige Spalten konzipiert.
df.explode('column_name')
Verwendung einer vektorisierten Funktion:
Für Situationen mit mehreren normalen und mehreren Listenspalten kann eine vektorisierte Funktion eine vielseitigere Lösung bieten.
def explode(df, lst_cols, fill_value='', preserve_index=False): # ... (implementation details)
CSV-Zeichenfolgen in Listen konvertieren:
Wenn das Ziel ausschließlich darin besteht, CSV-Strings in Listen umzuwandeln, kann dies durch Aufteilen der Strings mit erreicht werden str.split().
df['var1'] = df['var1'].str.split(',')
Benutzerdefinierter vektorisierter Ansatz:
Dieser Ansatz kann mehrere Spalten verarbeiten, einschließlich normaler und Listenspalten.
exploded_df = pd.DataFrame({ col: np.repeat(x[col].values, x[lst_col].str.len()) for col in x.columns.difference([lst_col]) }).assign(**{lst_col: np.concatenate(x[lst_col].values)})[x.columns.tolist()]
Legacy-Lösung:
Eine frühere Methode beinhaltet die Verwendung von .set_index(), .str.split(), .stack() und .reset_index(), um die CSV-Strings aufzuteilen und in einzelne Zeilen zu stapeln.
Diese Ansätze bieten verschiedene Optionen zum Aufteilen von durch Kommas getrennten Strings in Pandas-Datenrahmen. Berücksichtigung spezifischer Anforderungen und Leistungsüberlegungen.
Das obige ist der detaillierte Inhalt vonWie kann ich durch Kommas getrennte Zeichenfolgen in einem Pandas-DataFrame in separate Zeilen aufteilen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!