Panda: filtra per colonna non uguale a valori specifici


È possibile utilizzare i seguenti metodi per filtrare un DataFrame panda in cui una colonna non corrisponde a valori specifici:

Metodo 1: filtra dove la colonna non è uguale a un valore specifico

 #filter rows where team column is not equal to 'Nets'
df_filtered = df[df[' team '] != ' Nets ']

Metodo 2: filtra quando la colonna non è uguale a diversi valori specifici

 #filter rows where team column is not equal to 'Nets', 'Mavs' or 'Kings'
df_filtered = df[ ~ df[' team ']. isin ([' Nets ', ' Mavs ', ' Kings '])]

I seguenti esempi mostrano come utilizzare ciascun metodo nella pratica con i seguenti DataFrame panda:

 import pandas as pd

#createDataFrame
df = pd. DataFrame ({' team ': ['Mavs', 'Mavs', 'Nets', 'Nets', 'Heat', 'Heat', 'Kings'],
                   ' points ': [22, 28, 35, 34, 29, 28, 23]})

#view DataFrame
print (df)

    team points
0 Mavs 22
1 Mavs 28
2 Nets 35
3 Nets 34
4 Heat 29
5 Heat 28
6 Kings 23

Esempio 1: filtro in cui la colonna non è uguale a un valore specifico

Possiamo utilizzare la seguente sintassi per filtrare DataFrame in modo che contenga solo righe in cui la colonna della squadra non è uguale a “Nets”:

 #filter rows where team column is not equal to 'Nets'
df_filtered = df[df[' team '] != ' Nets ']

#view filtered DataFrame
print (df_filtered)

    team points
0 Mavs 22
1 Mavs 28
4 Heat 29
5 Heat 28
6 Kings 23

Tieni presente che ogni riga in cui il nome della squadra era “Nets” è stata filtrata da DataFrame.

Nota : il simbolo ! = rappresenta “non uguale” nei panda.

Esempio 2: filtro in cui la colonna non è uguale a diversi valori specifici

Possiamo utilizzare la seguente sintassi per filtrare il DataFrame in modo che contenga solo righe in cui la colonna della squadra non è uguale a “Nets”, “Mavs” o “Kings”:

 #filter rows where team column is not equal to 'Nets', 'Mavs' or 'Kings'
df_filtered = df[ ~ df[' team ']. isin ([' Nets ', ' Mavs ', ' Kings '])]

#view filtered DataFrame
print (df_filtered)

   team points
4 Heat 29
5 Heat 28

Tieni presente che ogni riga in cui il nome della squadra era “Nets”, “Mavs” o “Kings” è stata filtrata dal DataFrame.

Nota : il simbolo ~ rappresenta “no” nei panda.

Documentazione : puoi trovare la documentazione completa per la funzione panda isin() qui .

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni dei panda:

Panda: come aggiungere un filtro alla tabella pivot
Panda: come filtrare “Non contiene”
Panda: come filtrare le righe contenenti una stringa specifica

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *