Pandas ist eine leistungsstarke Python-Bibliothek zur Datenmanipulation und -analyse. Ihr Kern ist das DataFrame, eine vielseitige zweidimensionale Datenstruktur mit Beschriftungen. Häufig müssen Sie DataFrames aus bestehenden Daten erstellen, und Listen bieten einen gängigen und komfortablen Ausgangspunkt. Dieser Artikel untersucht verschiedene effiziente Methoden zum Erstellen von Pandas DataFrames aus verschiedenen Listenstrukturen.
Inhaltsverzeichnis
- Methode 1: Aus einer einfachen Liste
- Methode 2: Aus einer Liste von Listen
- Methode 3: Aus einer Liste von Dictionaries
- Methode 4: Nutzung von NumPy Arrays
- Fazit
- FAQ
Methode 1: Aus einer einfachen Liste
Der einfachste Ansatz verwendet eine einzelne Liste, um ein DataFrame zu erstellen. Dies ist ideal für Daten, die eine einzelne Spalte darstellen.
import pandas as pd
data = [10, 20, 30, 40, 50]
df = pd.DataFrame(data, columns=['Werte'])
print(df)
Dies erstellt ein DataFrame mit einer Spalte, ‚Werte‘, die mit den Elementen aus der data
-Liste gefüllt ist.
Methode 2: Aus einer Liste von Listen
Für DataFrames mit mehreren Spalten ist eine Liste von Listen vielseitiger. Jede innere Liste stellt eine Zeile dar.
import pandas as pd
data = [[1, 'Alice', 25], [2, 'Bob', 30], [3, 'Charlie', 28]]
df = pd.DataFrame(data, columns=['ID', 'Name', 'Alter'])
print(df)
Die äußere Liste enthält Zeilen, und columns
gibt die Spaltennamen an. Stellen Sie sicher, dass jede innere Liste die gleiche Länge wie die Anzahl der Spalten hat.
Methode 3: Aus einer Liste von Dictionaries
Diese Methode bietet verbesserte Lesbarkeit und Flexibilität, insbesondere bei benannten Spalten. Jedes Dictionary stellt eine Zeile dar, wobei die Schlüssel als Spaltennamen dienen.
import pandas as pd
data = [{'ID': 1, 'Name': 'Alice', 'Age': 25},
{'ID': 2, 'Name': 'Bob', 'Age': 30},
{'ID': 3, 'Name': 'Charlie', 'Age': 28}]
df = pd.DataFrame(data)
print(df)
Spaltennamen werden automatisch aus den Dictionary-Schlüsseln abgeleitet. Dies ist im Allgemeinen für die Übersichtlichkeit zu bevorzugen, insbesondere bei größeren Datensätzen.
Methode 4: Nutzung von NumPy Arrays
Für numerische Daten bieten NumPy-Arrays Leistungsvorteile.
import pandas as pd
import numpy as np
data = np.array([[1, 2, 3], [4, 5, 6], [7, 8, 9]])
df = pd.DataFrame(data, columns=['A', 'B', 'C'])
print(df)
Die effiziente Speicherung von NumPy verbessert die Geschwindigkeit der DataFrame-Erstellung, insbesondere bei umfangreichen numerischen Daten.
Fazit
Das Erstellen von Pandas DataFrames aus Listen bietet einen flexiblen und effizienten Workflow. Der beste Ansatz hängt von Ihrer Datenstruktur und Ihren Leistungsanforderungen ab. Listen von Dictionaries bieten oft die beste Balance zwischen Lesbarkeit und Benutzerfreundlichkeit, während NumPy-Arrays ideal für die Leistungsoptimierung bei großen numerischen Datensätzen sind.
FAQ
- F: Was passiert, wenn innere Listen unterschiedliche Längen haben? A: Pandas löst einen
ValueError
aus. Halten Sie konsistente Längen über alle inneren Listen hinweg ein. - F: Kann ich ein DataFrame mit einer einzelnen Zeile erstellen? A: Ja, verwenden Sie eine beliebige Methode mit einer einzelnen Liste, einer Liste mit einer inneren Liste oder einer Liste mit einem Dictionary.
- F: Wie behandelt Pandas gemischte Datentypen? A: Pandas leitet den am besten geeigneten Datentyp für jede Spalte ab.
- F: Wie stelle ich fehlende Daten dar? A: Verwenden Sie
np.nan
(Not a Number), um fehlende Werte darzustellen.