Panda's: rijen selecteren op basis van kolomwaarden


U kunt een van de volgende methoden gebruiken om rijen in een Panda DataFrame te selecteren op basis van kolomwaarden:

Methode 1: Selecteer rijen waarbij kolom gelijk is aan een specifieke waarde

 df. loc [df[' col1 '] == value]

Methode 2: Selecteer rijen waar de kolomwaarde in de lijst met waarden voorkomt

 df. loc [df[' col1 ']. isin ([value1, value2, value3, ...])]

Methode 3: Selecteer rijen op basis van meerdere kolomvoorwaarden

 df. loc [(df[' col1 '] == value) & (df[' col2 '] < value)]

In het volgende voorbeeld ziet u hoe u elke methode kunt gebruiken met de volgende panda’s DataFrame:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['A', 'A', 'B', 'B', 'B', 'C', 'C', 'C'],
                   ' points ': [5, 7, 7, 9, 12, 9, 9, 4],
                   ' rebounds ': [11, 8, 10, 6, 6, 5, 9, 12],
                   ' blocks ': [4, 7, 7, 6, 5, 8, 9, 10]})

#view DataFrame
df

	team points rebound blocks
0 A 5 11 4
1 To 7 8 7
2 B 7 10 7
3 B 9 6 6
4 B 12 6 5
5 C 9 5 8
6 C 9 9 9
7 C 4 12 10

Methode 1: Selecteer rijen waarbij kolom gelijk is aan een specifieke waarde

De volgende code laat zien hoe u elke rij van het DataFrame selecteert waarbij de kolom ‚punten‘ gelijk is aan 7:

 #select rows where 'points' column is equal to 7
df. loc [df[' points '] == 7]

	team points rebound blocks
1 To 7 8 7
2 B 7 10 7

Methode 2: Selecteer rijen waar de kolomwaarde in de lijst met waarden voorkomt

De volgende code laat zien hoe u elke rij van het DataFrame selecteert waarbij de kolom ‚punten‘ gelijk is aan 7, 9 of 12:

 #select rows where 'points' column is equal to 7
df. loc [df[' points ']. isin ([7, 9, 12])]

        team points rebound blocks
1 To 7 8 7
2 B 7 10 7
3 B 9 6 6
4 B 12 6 5
5 C 9 5 8
6 C 9 9 9

Methode 3: Selecteer rijen op basis van meerdere kolomvoorwaarden

De volgende code laat zien hoe u elke rij van het DataFrame selecteert waarbij de kolom ‚team‘ gelijk is aan ‚B‘ en de kolom ‚punten‘ groter is dan 8:

 #select rows where 'team' is equal to 'B' and points is greater than 8
df. loc [(df[' team '] == ' B ') & (df[' points '] > 8)]

	team points rebound blocks
3 B 9 6 6
4 B 12 6 5

Merk op dat alleen de twee lijnen waar het team gelijk is aan „B“ en „punten“ groter zijn dan 8, worden geretourneerd.

Aanvullende bronnen

In de volgende tutorials wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in panda’s kunt uitvoeren:

Hoe rijen op index te selecteren in Pandas
Hoe afzonderlijke rijen in Panda’s te selecteren
Hoe u rijen selecteert waar de waarde in een willekeurige kolom in Pandas verschijnt

Einen Kommentar hinzufügen

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