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

Einen Kommentar hinzufügen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert