A menudo, es posible que desee filtrar un DataFrame de pandas en más de una condición. Afortunadamente, esto es fácil de hacer usando operaciones booleanas.
Este tutorial proporciona varios ejemplos de cómo filtrar los siguientes Pandas DataFrame en múltiples condiciones:
importar pandas como pd #create DataFrame df = pd.DataFrame ({'equipo': ['A', 'A', 'B', 'B', 'C'], 'puntos': [25, 12, 15, 14, 19], 'asiste': [5, 7, 7, 9, 12], 'rebotes': [11, 8, 10, 6, 6]}) #view DataFrame df puntos de equipo ayuda a rebotes 0 A 25 5 11 1 A 12 7 8 2 B 15 7 10 3 B 14 9 6 4 C 19 12 6
Ejemplo 1: Filtrar por múltiples condiciones usando ‘Y’
El siguiente código ilustra cómo filtrar el DataFrame usando el operador and ( & ):
#Return solo filas donde los puntos son mayores que 13 y las asistencias son mayores que 7 df [(df. points > 13) & (df. assists > 7)] puntos de equipo ayuda a rebotes 3 B 14 9 6 4 C 19 12 6 # devuelva solo las filas donde el equipo es 'A' y los puntos son mayores o iguales a 15 gl [(df. equipo == 'A') & (df. puntos > = 15)] puntos de equipo ayuda a rebotes 0 A 25 5 11
Ejemplo 2: Filtrar por múltiples condiciones usando ‘O’
El siguiente código ilustra cómo filtrar el DataFrame usando el operador o ( | ):
#Return solo filas donde los puntos son mayores que 13 o las asistencias son mayores que 7 df [(df. puntos > 13) | (df. asistencias > 7)] puntos de equipo ayuda a rebotes 0 A 25 5 11 2 B 15 7 10 3 B 14 9 6 4 C 19 12 6 #Regrese solo las filas donde el equipo es 'A' o los puntos son mayores o iguales a 15 gl [(gl. equipo == 'A') | (df. puntos > = 15)] puntos de equipo ayuda a rebotes 0 A 25 5 11 1 A 12 7 8 2 B 15 7 10 4 C 19 12 6
Ejemplo 3: Filtrar por múltiples condiciones usando una lista
El siguiente código ilustra cómo filtrar el DataFrame donde están los valores de fila en alguna lista.
#define una lista de valores filter_list = [12, 14, 15] #Return solo las filas donde los puntos están en la lista de valores df [df. puntos . ISIN (filter_list)] puntos de equipo ayuda a rebotes 1 A 12 7 8 2 B 15 7 10 3 B 14 9 6 #define otra lista de valores filter_list2 = ['A', 'C'] #retornar solo las filas donde el equipo está en la lista de valores df [df. equipo . ISIN (filter_list2)] puntos de equipo ayuda a rebotes 0 A 25 5 11 1 A 12 7 8 4 C 19 12 6
Puedes encontrar más tutoriales de pandas aquí .
- https://r-project.org
- https://www.python.org/
- https://www.stata.com/