Seleccionar datos de DataFrames con Pandas loc[]
Pandas DataFrame.loc[]
es un indexador de la Biblioteca Python Pandas que se utiliza para seleccionar datos de un DataFrame basándose en etiquetas. De esta manera, puedes extraer filas y columnas específicas de un DataFrame.
- Rápido, seguro, flexible y escalable
- Certificado SSL/DDoS incluido
- Dominio y asesor personal incluidos
Sintaxis de Pandas loc[]
El parámetro que se le pasa a loc[]
es la selección de etiquetas deseada. Por lo demás, la sintaxis es muy simple:
En Pandas loc[], la selección se realiza principalmente en función de etiquetas. El parámetro que se pasa puede ser una etiqueta individual, una lista o un rango de etiquetas. Sin embargo, también se pueden utilizar arrays booleanos.
Diferencias entre loc[]
y iloc[]
Mientras que Pandas DataFrame.loc[]
selecciona datos basados en etiquetas, existe otro indexador similar en Pandas, DataFrame.iloc, que se utiliza para seleccionar datos basados en posiciones de enteros.
El siguiente ejemplo ilustra de una forma clara las diferencias entre ambos indexadores. Primero, se crea un DataFrame de Pandas:
El DataFrame resultante sería el siguiente:
Nombre Edad
0 Ana 23
1 Juan 35
2 Tomás 30
Si quisiéramos extraer a “Ana” del DataFame, se podrían utilizar tanto loc[]
como iloc[]
. El resultado que se obtiene es el mismo, pero siguiendo dos rutas diferentes:
Cómo utilizar Pandas DataFrame.loc[]
Pandas loc[]
sirve para extraer subconjuntos de un DataFrame, ya sea una o varias filas o columnas. El indexador loc[]
puede tener diferentes aplicaciones de uso.
Selección de una fila individual
A continuación, crearemos un DataFrame de ejemplo usando el siguiente código:
El DataFrame resultante sería el siguiente:
Nombre Edad Ciudad
0 Ana 23 Detroit
1 Juan 35 Atlanta
2 Tomás 30 Seattle
Para seleccionar los datos de la fila con el índice 1 (que corresponde a Juan), se puede utilizar el indexador Pandas loc[]
:
El resultado sería el siguiente:
Nombre Juan
Edad 35
Ciudad Atlanta
Name: 1, dtype: object
Selección de varias columnas
También puedes usar DataFrame.loc[]
para seleccionar un subconjunto de columnas. El código selecciona las columnas “Nombre” y “Ciudad” para todas las filas:
Como resultado, obtienes un subconjunto del DataFrame original:
Nombre Ciudad
0 Ana Detroit
1 Juan Atlanta
2 Tomás Seattle
Selección basada en una condición
Con Pandas loc[]
también es posible seleccionar filas basadas en una condición. En este caso, se utilizan operadores de comparación booleanos. En el siguiente código, por ejemplo, se filtrarán todas las personas que tienen más de 25 años:
Nombre Edad Ciudad
1 Juan 35 Atlanta
2 Tomás 30 Seattle