Hinzufügen von Zeilen zu Pandas DataFrame: Ein Schritt-für-Schritt-Anleitung
Published on
In Datenanalyse- und Machine Learning-Projekten müssen Sie häufig neue Beobachtungen zu einem Pandas DataFrame hinzufügen. Egal, ob Sie mit Umfragedaten, Sensorabgaben oder Benutzer-Verhaltensprotokollen arbeiten, Sie müssen in der Lage sein, neue Zeilen effizient zu einem bestehenden DataFrame hinzuzufügen. Pandas, eine beliebte Datenmanipulationsbibliothek in Python, bietet mehrere Methoden zum Hinzufügen von Zeilen zu einem DataFrame. In diesem Tutorial werden wir drei davon erkunden: .loc
, .append
und .concat
. Fangen wir an.
Möchten Sie Datenvisualisierungen in Python schnell erstellen?
PyGWalker ist ein Open Source Python Projekt, das Ihnen helfen kann, den Datenanalyse- und Visualisierungsworkflow direkt in einer Jupyter Notebook-Umgebung zu beschleunigen.
PyGWalker (opens in a new tab) verwandelt Ihr Pandas Dataframe (oder Polars Dataframe) in eine visuelle Benutzeroberfläche, in der Sie Variablen per Drag & Drop ziehen und ablegen können, um Diagramme einfach zu erstellen. Verwenden Sie einfach den folgenden Code:
pip install pygwalker
import pygwalker as pyg
gwalker = pyg.walk(df)
Sie können PyGWalker jetzt mit diesen Online-Notebooks ausführen:
Und vergessen Sie nicht, uns ⭐️ auf GitHub zu geben!
Hinzufügen einer Zeile mit der .loc Methode
Die .loc
Methode in Pandas ermöglicht es Ihnen, eine Teilmenge eines DataFrame basierend auf seinen Labels auszuwählen. Sie können sie auch verwenden, um eine neue Zeile zu einem DataFrame hinzuzufügen. So funktioniert es:
import pandas as pd
# Erstellen eines Beispieldatenframes
df = pd.DataFrame({
'Name': ['John', 'Sara', 'Tim'],
'Age': [25, 34, 41],
'City': ['New York', 'London', 'Paris']
})
# Hinzufügen einer neuen Zeile mit .loc
df.loc[3] = ['Anna', 29, 'Berlin']
print(df)
Im obigen Code erstellen wir zuerst einen DataFrame df
mit drei Zeilen und drei Spalten. Dann verwenden wir die .loc
Methode und geben einen Zeilenindex von 3 an. Schließlich geben wir eine Liste von Werten für die neue Zeile an.
Ausgabe:
Name Age City
0 John 25 New York
1 Sara 34 London
2 Tim 41 Paris
3 Anna 29 Berlin
Beachten Sie, dass der Zeilenindex der neuen Zeile 3 ist, was bedeutet, dass sie nach der letzten Zeile des DataFrames hinzugefügt wird. Sie können .loc
auch verwenden, um eine Zeile an einer bestimmten Position einzufügen, indem Sie das Zeilenlabel angeben. Um beispielsweise eine neue Zeile nach der zweiten Zeile des DataFrames einzufügen, können Sie Folgendes tun:
# Einfügen einer neuen Zeile nach der zweiten Zeile
df.loc[2.5] = ['Peter', 37, 'Los Angeles']
print(df)
Ausgabe:
Name Age City
0 John 25 New York
1 Sara 34 London
2 Tim 41 Paris
2.5 Peter 37 Los Angeles
3 Anna 29 Berlin
Hier fügen wir die neue Zeile nach dem Label 2
ein, indem wir ein Label von 2.5
verwenden. Pandas ordnet die Zeilenlabels automatisch um, um sie in aufsteigender Reihenfolge zu halten.
Hinzufügen einer Zeile mit der .append Methode
Die .append
Methode in Pandas ermöglicht es Ihnen, zwei DataFrames vertikal zu kombinieren. Sie können sie verwenden, um eine neue Zeile zu einem DataFrame hinzuzufügen, indem Sie einen DataFrame mit einer einzelnen Zeile an die .append
Methode übergeben. Hier ist ein Beispiel:
# Erstellen einer neuen Zeile als DataFrame
new_row = pd.DataFrame({
'Name': ['Julia'],
'Age': [31],
'City': ['Tokyo']
})
# Verwendung von .append, um die neue Zeile hinzuzufügen
df = df.append(new_row, ignore_index=True)
print(df)
Ausgabe:
Name Age City
0 John 25 New York
1 Sara 34 London
2 Tim 41 Paris
3 Anna 29 Berlin
4 Julia 31 Tokyo
Im obigen Code erstellen wir zuerst einen neuen DataFrame new_row
mit einer einzelnen Zeile von Daten. Dann verwenden wir die .append
Methode und übergeben new_row
als Argument. Der Parameter ignore_index=True
teilt Pandas mit, den DataFrame von 0 bis 4 neu zu indizieren.
Hinzufügen mehrerer Zeilen mit der .concat Methode
Die .concat
Methode in Pandas ermöglicht es Ihnen, zwei DataFrames entlang einer angegebenen Achse zu verketten. Sie können sie verwenden, um mehrere Zeilen zu einem DataFrame hinzuzufügen, indem Sie eine Liste von DataFrames an die .concat
Methode übergeben. So können Sie mit .concat
zwei neue Zeilen zum DataFrame df
hinzufügen.
# Erstellen von zwei neuen Zeilen als DataFrames
new_rows = [pd.DataFrame({
'Name': ['Maria', 'Adam'],
'Age': [27, 45],
'City': ['Sydney', 'Toronto']}),
]
# Verwendung von .concat, um die neuen Zeilen hinzuzufügen
df = pd.concat([df] + new_rows, ignore_index=True)
print(df)
Ausgabe:
Name Age City
0 John 25 New York
1 Sara 34 London
2 Tim 41 Paris
3 Anna 29 Berlin
4 Maria 27 Sydney 5 Adam 45 Toronto
In dem obigen Code erstellen wir zunächst zwei neue DataFrames `new_rows`. Dann übergeben wir sie als Liste an die `.concat`-Methode zusammen mit `df`. Der Parameter `ignore_index=True` ordnet den Index von 0 bis 5 neu.
## Fazit
In diesem Tutorial haben wir drei verschiedene Methoden erkundet, um neue Zeilen zu einem Pandas DataFrame in Python hinzuzufügen: `.loc`, `.append` und `.concat`. Jede Methode hat ihre Vor- und Nachteile, abhängig von der Situation. Die `.loc`-Methode ist nützlich, wenn Sie eine einzelne Zeile an einer bestimmten Stelle hinzufügen möchten. Die `.append`-Methode ist eine einfache Möglichkeit, eine einzelne Zeile am Ende eines DataFrames hinzuzufügen. Die `.concat`-Methode ist ideal, wenn Sie mehrere Zeilen auf einmal hinzufügen möchten. Das Wissen über diese Methoden wird Ihnen helfen, DataFrames effizient und effektiv in Ihren Datenanalyse- und Machine Learning-Projekten zu manipulieren. Viel Spaß beim Codieren!
import BeehiivEmbed von '../../../components/BeehiivEmbed';
<BeehiivEmbed />