Pandas DataFrame Loc
Los DataFrames son estructuras de datos en forma de cuadrícula que permiten trabajar con información tabular en Python. Pandas es una de las bibliotecas más populares para manipular DataFrames y series de datos. En este artículo, nos enfocaremos en la función loc de Pandas DataFrame, que nos permite seleccionar filas y columnas de un DataFrame de manera precisa. En este tutorial, aprenderás cómo utilizar esta función para realizar tareas comunes como filtrar datos, modificar valores y seleccionar información específica dentro de un DataFrame.
¿Qué es Pandas DataFrame Loc?
Pandas DataFrame Loc es una función utilizada para acceder, seleccionar y modificar valores dentro de un DataFrame en Python. La función loc es una abreviatura de "location" y nos permite seleccionar filas y columnas de un DataFrame utilizando etiquetas o etiquetas booleanas. Es importante destacar que la función loc no funciona con índices numéricos, para ello se utiliza iloc.
Sintaxis de Pandas DataFrame Loc
Para utilizar Pandas DataFrame Loc se utiliza la siguiente sintaxis:
df.loc[etiquetas_fila, etiquetas_columna]
Donde:
- etiquetas_fila: son las etiquetas correspondientes a las filas que se quieren seleccionar. Se pueden utilizar un rango, una lista de etiquetas o una etiqueta booleana.
- etiquetas_columna: son las etiquetas correspondientes a las columnas que se quieren seleccionar. Se pueden utilizar un rango, una lista de etiquetas o una etiqueta booleana.
Cómo utilizar Pandas DataFrame Loc
Veamos algunos ejemplos para entender cómo utilizar Pandas DataFrame Loc:
Seleccionar una sola fila y una sola columna
Para seleccionar una sola fila y una sola columna en un DataFrame se utiliza la siguiente sintaxis:
df.loc[etiqueta_fila, etiqueta_columna]
Donde etiqueta_fila y etiqueta_columna son las etiquetas correspondientes a la fila y columna que se quiere seleccionar, respectivamente. Por ejemplo, para seleccionar la celda ubicada en la fila con etiqueta "A" y la columna con etiqueta "1", se utiliza el siguiente código:
df.loc["A", "1"]
Seleccionar varias filas y varias columnas
Para seleccionar varias filas y varias columnas al mismo tiempo, se utiliza una lista de etiquetas. Por ejemplo, para seleccionar las filas con etiquetas "A" y "B" y las columnas con etiquetas "1" y "2", se utiliza el siguiente código:
df.loc[["A", "B"], ["1", "2"]]
Filtrar filas con una etiqueta booleana
Para filtrar filas que cumplan una condición booleana, se utiliza una etiqueta booleana. Por ejemplo, para seleccionar todas las filas donde la columna "1" es mayor a 4, se utiliza el siguiente código:
df.loc[df["1"] > 4]
Modificar valores en un DataFrame
Para modificar los valores de un DataFrame, se utiliza la función loc junto con el operador de asignación (=). Por ejemplo, para cambiar el valor de la celda ubicada en la fila con etiqueta "A" y la columna con etiqueta "1" a 10, se utiliza el siguiente código:
df.loc["A", "1"] = 10
Ejemplos de Pandas DataFrame Loc
Selección de datos
En este ejemplo, seleccionaremos diferentes datos de un DataFrame para mostrar cómo funciona Pandas DataFrame Loc.
import pandas as pd
# Crear DataFrame
datos = {
"Nombre": ["Alicia", "Beatriz", "Carmen", "David", "Elena"],
"Edad": [25, 30, 35, 40, 45],
"Salario": [5000, 6000, 7000, 8000, 9000],
"Ciudad": ["Madrid", "Barcelona", "Valencia", "Sevilla", "Bilbao"]
}
df = pd.DataFrame(datos)
# Seleccionar una sola fila y una sola columna
print(df.loc[1, "Ciudad"])
# Seleccionar varias filas y varias columnas
print(df.loc[[0, 3], ["Nombre", "Ciudad"]])
# Filtrar filas con una etiqueta booleana
print(df.loc[df["Salario"] > 7000])
# Modificar valores en un DataFrame
df.loc[1, "Ciudad"] = "Málaga"
print(df)
Crear un DataFrame al azar
En este ejemplo, crearemos un DataFrame al azar y utilizaremos la función loc para realizar algunas operaciones.
import pandas as pd
import numpy as np
# Crear un DataFrame al azar
df = pd.DataFrame(np.random.randn(5, 4), columns=list("ABCD"))
# Seleccionar una sola fila y una sola columna
print(df.loc[0, "A"])
# Seleccionar varias filas y varias columnas
print(df.loc[[0, 3], ["B", "D"]])
# Filtrar filas con una etiqueta booleana
print(df.loc[df["C"] > 0])
# Modificar valores en un DataFrame
df.loc[2, "D"] = 0
print(df)
Conclusión
La función loc de Pandas DataFrame es muy útil para manipular los valores de un DataFrame de manera precisa. En este tutorial, hemos aprendido cómo utilizar esta función para seleccionar filas y columnas, filtrar datos y modificar valores. A medida que te familiarices con Pandas y Python, podrás utilizar esta función para realizar tareas más complejas en tus proyectos de análisis de datos.
Preguntas frecuentes
¿Se puede utilizar Pandas DataFrame Loc con índices numéricos?
No, la función loc no funciona con índices numéricos. Para ello, se utiliza iloc.
¿Cómo puedo filtrar filas que contienen valores faltantes?
Para filtrar filas que contienen valores faltantes, se utiliza la función dropna() de Pandas. Por ejemplo, para eliminar todas las filas que contienen al menos un valor faltante, se utiliza el siguiente código:
df.dropna()
¿Cómo puedo seleccionar todas las filas de un DataFrame?
Para seleccionar todas las filas de un DataFrame, se utiliza el siguiente código:
df.loc[:, :]
¿Cómo puedo seleccionar todas las columnas de un DataFrame?
Para seleccionar todas las columnas de un DataFrame, se utiliza el siguiente código:
df.loc[:, "Nombre":"Ciudad"]
Deja una respuesta