Pandas ist eine weit verbreitete Python-Bibliothek, die für die Datenmanipulation und -analyse verwendet wird. Eine häufige Aufgabe beim Arbeiten mit Dataframes in Pandas besteht darin, Zeilen basierend auf einer bestimmten Bedingung zu filtern. In diesem Artikel werden wir verschiedene Möglichkeiten diskutieren, wie Sie Zeilen in einem Pandas-Dataframe basierend auf einer Bedingung filtern können.
Beispiel-Dataset erstellen
Bevor wir uns mit dem Filtern von Zeilen befassen, müssen wir zuerst ein Beispiel-Dataset erstellen, mit dem wir arbeiten können. Hier ist ein einfaches Beispiel-Dataset:
“’python
import pandas as pd
data = {
‚Name‘: [‚Alice‘, ‚Bob‘, ‚Charlie‘, ‚David‘, ‚Emma‘],
‚Alter‘: [25, 30, 35, 40, 45],
‚Stadt‘: [‚Berlin‘, ‚Hamburg‘, ‚München‘, ‚Köln‘, ‚Frankfurt‘]
}
df = pd.DataFrame(data)
print(df)
“‘
Dieser Code erstellt ein einfaches Pandas-Dataframe mit den Spalten ‚Name‘, ‚Alter‘ und ‚Stadt‘. Das Dataframe sieht wie folgt aus:
“‘
Name Alter Stadt
0 Alice 25 Berlin
1 Bob 30 Hamburg
2 Charlie 35 München
3 David 40 Köln
4 Emma 45 Frankfurt
“‘
Zeilen filtern basierend auf einer Bedingung
Es gibt verschiedene Möglichkeiten, wie Sie Zeilen in einem Pandas-Dataframe basierend auf einer Bedingung filtern können. Eine Möglichkeit besteht darin, den ‚loc‘-Befehl zu verwenden, um die Zeilen zu filtern, die bestimmte Kriterien erfüllen.
Zum Beispiel, um nur die Zeilen im Dataframe zu behalten, in denen das Alter größer als 30 ist, können Sie folgenden Code verwenden:
“’python
filtered_df = df.loc[df[‚Alter‘] > 30]
print(filtered_df)
“‘
Der obige Code filtert die Zeilen im Dataframe und gibt nur die Zeilen zurück, in denen das Alter größer als 30 ist. Das Ergebnis sieht wie folgt aus:
“‘
Name Alter Stadt
2 Charlie 35 München
3 David 40 Köln
4 Emma 45 Frankfurt
“‘
Python Pandas Tutorial (Part 4): Filtering – Using…
Mehrere Bedingungen kombinieren
Sie können auch mehrere Bedingungen kombinieren, um Zeilen in einem Pandas-Dataframe zu filtern. Zum Beispiel, um nur die Zeilen zu behalten, in denen das Alter größer als 30 ist und die Stadt ‚Berlin‘ ist, können Sie folgenden Code verwenden:
“’python
filtered_df = df.loc[(df[‚Alter‘] > 30) & (df[‚Stadt‘] == ‚Berlin‘)]
print(filtered_df)
“‘
Der obige Code kombiniert zwei Bedingungen und gibt nur die Zeilen zurück, die beide Bedingungen erfüllen. Das Ergebnis sieht wie folgt aus:
“‘
Name Alter Stadt
2 Charlie 35 München
3 David 40 Köln
“‘
Filtern von Zeilen anhand einer Liste von Werten
Manchmal möchten Sie Zeilen filtern, die bestimmte Werte in einer Spalte enthalten. Zum Beispiel, um nur die Zeilen zu behalten, in denen der Name ‚Bob‘ oder ‚David‘ ist, können Sie folgenden Code verwenden:
“’python
filtered_df = df[df[‚Name‘].isin([‚Bob‘, ‚David‘])]
print(filtered_df)
“‘
Der obige Code filtert die Zeilen anhand der Werte in der Spalte ‚Name‘ und gibt nur die Zeilen zurück, in denen der Name ‚Bob‘ oder ‚David‘ ist. Das Ergebnis sieht wie folgt aus:
“‘
Name Alter Stadt
1 Bob 30 Hamburg
3 David 40 Köln
“‘
Fazit
In diesem Artikel haben wir verschiedene Möglichkeiten diskutiert, wie Sie Zeilen in einem Pandas-Dataframe basierend auf einer bestimmten Bedingung filtern können. Die Verwendung von ‚loc‘, das Kombinieren mehrerer Bedingungen und das Filtern von Zeilen anhand einer Liste von Werten sind einige der gängigsten Techniken, die in der Pandas-Bibliothek verwendet werden können. Wir hoffen, dass dieser Artikel Ihnen geholfen hat, ein besseres Verständnis dafür zu bekommen, wie Sie Daten in Pandas filtern können.