So wählen sie mit pandas loc zeilen basierend auf mehreren bedingungen aus
Sie können die folgenden Methoden verwenden, um Zeilen aus einem Pandas-DataFrame basierend auf mehreren Bedingungen auszuwählen:
Methode 1: Zeilen auswählen, die mehrere Bedingungen erfüllen
df. loc [((df[' col1 '] == ' A ') & (df[' col2' ] == ' G '))]
Methode 2: Wählen Sie Zeilen aus, die eine von mehreren Bedingungen erfüllen
df. loc [((df[' col1 '] > 10) | (df[' col2' ] < 8))]
Die folgenden Beispiele zeigen, wie jede dieser Methoden in der Praxis mit dem folgenden Pandas DataFrame verwendet wird:
import pandas as pd #createDataFrame df = pd. DataFrame ({' team ': ['A', 'A', 'A', 'A', 'B', 'B', 'B', 'B'], ' position ': ['G', 'G', 'F', 'F', 'G', 'G', 'F', 'F'], ' assists ': [5, 7, 7, 9, 12, 9, 9, 4], ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12]}) #view DataFrame df team position assists rebounds 0 A G 5 11 1 A G 7 8 2 A F 7 10 3 A F 9 6 4 B G 12 6 5 B G 9 5 6 B F 9 9 7 B F 4 12
Methode 1: Zeilen auswählen, die mehrere Bedingungen erfüllen
Der folgende Code zeigt, wie nur Zeilen aus dem DataFrame ausgewählt werden, bei denen Team gleich „A“ und Position gleich „G“ ist:
#select rows where team is equal to 'A' and position is equal to 'G'
df. loc [((df[' team '] == ' A ') & (df[' position '] == ' G '))]
team position assists rebounds
0 A G 5 11
1 A G 7 8
Es gab nur zwei Zeilen im DataFrame, die diese beiden Bedingungen erfüllten.
Methode 2: Wählen Sie Zeilen aus, die eine von mehreren Bedingungen erfüllen
Der folgende Code zeigt, wie nur Zeilen im DataFrame ausgewählt werden, in denen die Assists größer als 10 oder die Rebounds kleiner als 8 sind:
#select rows where assists is greater than 10 or rebounds is less than 8
df. loc [((df[' assists '] > 10) | (df[' rebounds '] < 8))]
team position assists rebounds
3 A F 9 6
4 B G 12 6
5 B G 9 5
Es gab nur drei Zeilen im DataFrame, die diese beiden Bedingungen erfüllten.
Hinweis: In diesen beiden Beispielen haben wir die Zeilen basierend auf zwei Bedingungen gefiltert, jedoch unter Verwendung von & und | Attribute . Mit den Operatoren können wir nach so vielen Bedingungen filtern, wie wir möchten.
Zusätzliche Ressourcen
In den folgenden Tutorials wird erläutert, wie andere gängige Vorgänge in Pandas ausgeführt werden:
So erstellen Sie eine neue Spalte basierend auf einer Bedingung in Pandas
So löschen Sie Zeilen, die einen bestimmten Wert in Pandas enthalten
So entfernen Sie doppelte Zeilen in Pandas