Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich verschachtelte Listen in Pandas DataFrames in separate Zeilen erweitern?
Entschlüsselung verschachtelter Listen in Pandas-Datenrahmen: Zeilenerweiterung
Beim Arbeiten mit Daten in Pandas-Datenrahmen stoßen Sie möglicherweise auf Spalten mit möglicherweise übergreifenden Listen mehrere Werte. Um die Analyse und Bearbeitung zu erleichtern, ist es notwendig, diese Listen in separate Zeilen umzuwandeln. Dieser Prozess, der als „Long Forming“ oder „Zeilenerweiterung“ bekannt ist, ermöglicht es jedem Listenelement, seine eigene Zeile zu belegen.
Um dies zu erreichen, bietet Pandas eine spezielle Methode namens .explode() , eingeführt in Version 0.25. Diese Methode wandelt die angegebene Liste enthaltende Spalte nahtlos in eine Reihe von Zeilen um, wobei jedes Element zu einer unabhängigen Zeile wird.
Implementierung:
Um das zu verwenden .explode()-Methode verwenden, geben Sie einfach den Spaltennamen an, den Sie erweitern möchten. Standardmäßig werden für jedes Element in der Spalte neue Zeilen erstellt, während die Werte in allen anderen Spalten erhalten bleiben.
Stellen Sie sich beispielsweise einen Datenrahmen vor, der eine Spalte „Beispiele“ mit Wertelisten enthält:
import pandas as pd import numpy as np df = pd.DataFrame( {'trial_num': [1, 2, 3, 1, 2, 3], 'subject': [1, 1, 1, 2, 2, 2], 'samples': [list(np.random.randn(3).round(2)) for i in range(6)] } )
Anwenden der Methode .explode():
df.explode('samples')
Ergebnisse im folgenden Datenrahmen:
subject trial_num sample 0 1 1 0.57 1 1 1 -0.83 2 1 1 1.44 3 1 2 -0.01 4 1 2 1.13 5 1 2 0.36 6 2 1 -0.08 7 2 1 -4.22 8 2 1 -2.05 9 2 2 0.72 10 2 2 0.79 11 2 2 0.53
Wie Sie sehen können, hat jedes Listenelement jetzt seine eigene Zeile. Es ist erwähnenswert, dass die Methode zwar die Listen effizient abwickelt, dies jedoch jeweils für eine einzelne Spalte tut.
Zusätzliche Überlegungen:
Das obige ist der detaillierte Inhalt vonWie kann ich verschachtelte Listen in Pandas DataFrames in separate Zeilen erweitern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!