Filtro de pandas por valor de columna

Filtro de pandas por valor de columna
Una de las técnicas más populares para limpiar los datos es filtrar los datos de un marco de datos. Según la etiqueta y la posición de las columnas y filas, Pandas ofrece una variedad de técnicas o métodos para la selección de datos. Además, PANDAS le permite filtrar las filas utilizando la indexación booleana y extraer un subconjunto de datos según los tipos de columnas. Los métodos más populares para extraer los subconjuntos de datos de un marco de datos de pandas se cubren en este artículo, seleccionando una columna por etiqueta, seleccionando varias columnas por etiqueta, etc.

Cómo cambiar la columna Pandas a la cadena

Existen múltiples métodos y técnicas que podemos usar para filtrar los datos del marco de datos PANDAS en función de los valores en las columnas. Demostraremos algunos métodos para filtrar los datos de un marco de datos en los siguientes ejemplos:

Primero, veremos cómo filtrar las filas Pandas DataFrame dependiendo de los valores de las columnas utilizando operadores condicionales y relacionales específicos.

Ejemplo 1: Filtrar las filas de DataFrame usando []

Para demostrar este ejemplo, primero necesitamos un marco de datos. El marco de datos se crea utilizando los pandas.Función DataFrame (), por lo que importamos la biblioteca Pandas primero para crear nuestro DataFrame.


Creamos nuestro marco de datos usando un diccionario de Python y luego lo pasamos dentro del PD.Función DataFrame (). Especificamos los nombres de las columnas de nuestroframe de datos como "estudiante", "edad", "asignatura" y "tarifa". Podemos usar la función print () para ilustrar nuestro marco de datos "DF".


En el DataFrame anterior, hay 4 columnas. "Estudiante" almacena los nombres ("Anna", "Dany", "John", "Rick", "Jim", "Kenny"). "Age" almacena las edades de los individuos (25, 23, 22, 18, 19, 20). "Asunto" consta de nombres de asignaturas ("Contabilidades", "Negocios", "Ciencias", "Matemáticas", "Arquitectura", "AI"). Y la "tarifa" consiste en la tarifa de cada sujeto (900, 690, 799, 960, 970, 1080). Supongamos que tenemos que filtrar las filas donde el valor es mayor que 900 en la columna "Tarifa".


Para acceder a los valores de la columna "tarifa", ponemos el nombre de la columna, i.mi. "Tarifa", dentro de los paréntesis. Después de acceder a los valores, aplicamos una condición DF ['Fee']> 900. Para almacenar los valores que cumplen con la condición, creamos la variable de "salida".


Tenemos tres filas que satisfacen la condición anterior. Podemos usar las diferentes columnas dentro de los paréntesis [].

Ejemplo 2: Filtrar las filas de DataFrame utilizando el método LOC []

En este ejemplo, el método LOC [] se utiliza para acceder a los valores desde las columnas de DataFrame. Luego, usamos los operadores relacionales o condicionales para filtrar las filas de DataFrame. La función loc () hace que sea fácil obtener rápidamente los valores de un marco de datos. Al pasar un nombre de columna, nombre de fila o valor de índice a la función loc (), podemos recuperar los valores de datos que se almacenan dentro de la fila o columna específicas.


Para recuperar los valores de las columnas de edad, pasamos el DF ['edad'] dentro del DF.Función LOC []. También utilizamos una condición dentro de la función para recuperar solo aquellas filas donde el valor de la edad es mayor que 19. Para verificar si recuperó las filas correctas o no, ilustramos nuestro marco de datos usando la función print ().


En los ejemplos dados anteriormente, hemos visto cómo usar los operadores relacionales o condicionales para filtrar las filas específicas en función de los valores de la columna. Ahora, veremos cómo filtrar los datos utilizando la función ISIN ().

Ejemplo 3: Filtrar las filas de DataFrame con valores dentro de la lista utilizando el método ISIN ()

Los elementos de DataFrame se verifican para ver si están contenidos en valores utilizando la función ISIN (). Solo si todas las etiquetas coinciden en una ubicación determinada, el resultado será cierto. Creemos nuestro marco de datos después de importar el módulo pandas. De nuevo, el PD.DataFrame () se utiliza para crear nuestro nuevo DataFrame.


Creamos un marco de datos con tres columnas: "nombre", "designación" y "salario" que almacenan los datos ("Richard", "Will", "Steve", "Larry", "Lana", "Tony"), ("Contador", "Contador", "Gerente", "Secretario", "Secretario", "Gerente") y (1200, 1250, 2100, 1000, 990, 2200) respectivamente. Ahora, creamos un objeto de lista que se pasa dentro de la función ISIN () como una entrada para que coincida con los valores de la lista de los valores de columna especificados de nuestro DataFrame.


Primero creamos una lista donde colocamos los valores "Contador" y "Gerente" y asignamos esta lista a una variable "Desig". Se accede al valor de la columna de "designación" utilizando el nombre de la columna, i.mi. "Designación", Inside []. Utilizamos la función ISIN () en los valores evaluados de la columna para que coincidan con los valores en la lista con los valores dentro de la columna "designación" en nuestro marco de datos.


Utilizamos los valores de "Contador" y "Gerente" dentro de la lista. Entonces, la función devolvió las filas donde la columna de designación tiene los valores del administrador y el contador.

Ejemplo 4: Filtrar los datos en función de los valores en las columnas de DataFrame utilizando el método LOC [] e ISIN ()

Ahora, utilizamos el método Loc [] para recuperar o acceder a las columnas específicas de nuestro DataFrame. Después de acceder a los datos, usamos la función ISIN () para filtrar los datos en nuestro DataFrame.


En el script anterior, tenemos una lista de "Sal" con [1200, 2100, 2200] valores. Luego, la lista "SAL" se pasa dentro de la función ISIN () como un argumento para que coincida con los valores de la lista con la columna "Salario". Después de hacer coincidir los valores, las filas obtenidas de la función se almacenan en una nueva variable "df_filter". Ahora, vemos el resultado usando la función print ().


Se puede ver que las filas requeridas con los valores 1200, 2100 y 2200 se extraen del marco de datos "DF".

Ahora, en el siguiente ejemplo, filtraremos los datos utilizando múltiples condiciones.

Ejemplo 5: Filtrar las filas de DataFrame utilizando múltiples condiciones en las columnas de DataFrame

Creemos un marco de datos primero donde aplicamos las múltiples condiciones para filtrar las filas del DataFrame.


Hay un total de 4 columnas en el marco de datos anterior: "estudiante", "edad", "cursos" y "tarifa". La columna "Estudiante" almacena el nombre de los estudiantes ("Mike", "Rob", "Arya", "Tom", "Jack", "Luca", "Mark", "Max" y "Alex"). La columna "Age" contiene las edades de cada estudiante (21, 21, 23, 22, 19, 20, 25, 23, 22). Mientras que las columnas de "cursos" y "tarifas" almacenan el nombre de los cursos ("Contabilidades", "Negocios", "Ciencias", "Matemáticas", "Arquitectura", "AI", "Contabilidades", "Negocios", "AI ") Y la tarifa de cada curso para un estudiante (1000, 1190, 1250, 1320, 1245, 1580, 1420, 1600, 1600). Aplicemos las condiciones para extraer las filas requeridas.


Creamos una lista de "sub" con elementos "Contabilidades" y "AI". La lista se pasa en la función ISIN () para que coincida con los elementos de la lista con los valores de la columna "Cursos". Utilizamos otra condición de que el valor en la columna de "tarifa" debe ser mayor que 1250. El script anterior recupera las filas que satisfacen ambas condiciones.


Estas filas cumplen ambas condiciones.

Conclusión

En este tutorial, discutimos los múltiples métodos y técnicas que se pueden utilizar para filtrar los datos del marcado de datos de Pandas en función de los valores en las columnas. Intentamos hacer que pueda filtrar los datos en función de los valores de la columna por sí mismo. Implementamos los diferentes ejemplos en este artículo para enseñarle cómo usar las funciones loc [] e isin (), así como operadores relacionales o condicionales para extraer los datos del marcado de datos dados dependiendo de los valores de la columna.