DataFrame: un DataFrame es una estructura de datos tabulares bidimensional, de tamaño variable y potencialmente heterogénea con ejes etiquetados (filas y columnas) en pandas.
Operadores lógicos: Pandas utiliza operadores lógicos como & (y), |(o) y ~ (no) para crear declaraciones de selección complejas para filtrar datos en función de múltiples condiciones.
Enmascaramiento booleano: el enmascaramiento booleano, o indexación booleana, es un método utilizado en pandas para filtrar datos aplicando una cuadrícula booleana sobre el índice de un DataFrame, seleccionando solo los valores que corresponden a Verdadero.
Ahora que ya sabes cómo seleccionar datos en pandas haciendo referencia a filas y columnas, el siguiente paso es aprender a usar máscaras booleanas. Los profesionales de los datos utilizan máscaras booleanas para seleccionar datos en pandas basándose en condiciones. En esta lectura, descubrirá el enmascaramiento booleano y cómo utilizar los operadores lógicos de pandas para formar sentencias de selección multi-condicionales. Entender los fundamentos de Pandas le ayudará a hacer su trabajo como profesional de datos más fácil y eficiente.
Máscaras booleanas
Ya sabes que Boolean se utiliza para describir cualquier variable binaria cuyos posibles valores son verdadero o falso. Con pandas, el enmascaramiento booleano, también llamado indexación booleana, se utiliza para superponer una rejilla booleana sobre el índice de un marco de datos con el fin de seleccionar sólo los valores del marco de datos que se alinean con los valores True de la rejilla.
Vuelva al ejemplo del vídeo. Suponga que tiene un marco de datos de planetas, sus radios y su número de lunas:
planeta | radio_km | lunas |
|---|---|---|
Mercurio | 2,440 | 0 |
Venus | 6,052 | 0 |
Tierra | 6,371 | 1 |
Marte | 3,390 | 2 |
Júpiter | 69,911 | 80 |
Saturno | 58,232 | 83 |
Urano | 25,362 | 27 |
Neptuno | 24,622 | 14 |
Supongamos ahora que queremos quedarnos con las filas de los planetas que tienen menos de 20 lunas y filtrar el resto. Una máscara booleana es un objeto pandas Series que indica si esta condición es verdadera o falsa para cada valor de la columna moons:
¿Lunas < 20? | |
|---|---|
0 | True |
1 | True |
2 | True |
3 | True |
4 | False |
5 | False |
6 | False |
7 | True |
El dtype contenido en esta serie es bool. El enmascaramiento booleano superpone efectivamente esta serie booleana al índice del marco de datos. El resultado es que todas las filas del marco de datos indicadas como False en la máscara booleana se filtran, y todas las filas indicadas como True permanecen en el marco de datos:
planeta | radio_km | lunas |
|---|---|---|
Mercurio | 2,440 | 0 |
Venus | 6,052 | 0 |
Tierra | 6,371 | 1 |
Marte | 3,390 | 2 |
Neptuno | 24,622 | 14 |
Codificación de máscaras booleanas en pandas
A continuación se muestra cómo realizar esta operación en pandas.
Comience con un objeto DataFrame.
Sentencias lógicas complejas
En las sentencias que utilizan múltiples condiciones, Pandas utiliza operadores lógicos para indicar qué datos mantener y cuáles filtrar. Estos operadores son:
Operador | Lógico |
|---|---|
& | and |
| | or |
~ | not |
Importante: Cada componente de una sentencia lógica multi-condicional debe estar entre paréntesis. De lo contrario, la sentencia arrojará un error o, peor aún, devolverá algo que no es lo que usted pretendía.
Por ejemplo, aquí se muestra cómo crear una máscara booleana que seleccione todos los planetas que tengan menos de 10 lunas o más de 50 lunas:
>>mask = (df['moons'] < 10) | (df['moons'] > 50)
Trabajar con dataframes de pandas, utilizar sus atributos y métodos, y seleccionar datos utilizando máscaras booleanas son algunas de las actividades diarias fundamentales de un profesional de los datos. Pronto utilizarás estas herramientas con frecuencia a medida que avances en tu viaje con pandas.
Puntos clave
Una máscara booleana es un método para aplicar un filtro a un marco de datos. La máscara superpone una rejilla booleana sobre su dataframe con el fin de seleccionar sólo los valores en el dataframe que se alinean con los valores True de la rejilla. Para crear comparaciones booleanas, Pandas tiene sus propios operadores lógicos. Estos operadores son:
& (and)
| (or)
~ (no)
Cada criterio de una sentencia de selección multi-condicional debe ir encerrado en su propio conjunto de paréntesis. Con práctica, hacer sentencias de selección complejas en Pandas es posible y eficiente.
No hay comentarios.:
Publicar un comentario