Pandas es una potente librería de Python para la manipulación y el análisis de datos. Calcular el promedio (media) de una columna en un DataFrame de Pandas es una tarea frecuente. Este artículo muestra dos métodos eficientes para lograrlo: usando el método df.mean()
y el método df.describe()
.
Tabla de contenido:
Calculando la media con df.mean()
El método df.mean()
ofrece una forma directa de calcular el promedio de todas las columnas numéricas de tu DataFrame. Para obtener el promedio de una columna específica, simplemente selecciona la columna usando notación de corchetes o de punto y luego aplica el método mean()
.
Aquí hay un ejemplo:
import pandas as pd
# DataFrame de ejemplo
data = {'Nombre': ['Alicia', 'Bob', 'Carlos', 'David'],
'Edad': [25, 30, 22, 28],
'Puntuación': [85, 92, 78, 88]}
df = pd.DataFrame(data)
# Edad promedio usando notación de corchetes
edad_promedio = df['Edad'].mean()
print(f"Edad promedio: {edad_promedio}")
# Puntuación promedio usando notación de punto
puntuacion_promedio = df.Puntuación.mean()
print(f"Puntuación promedio: {puntuacion_promedio}")
Esto producirá:
Edad promedio: 26.25
Puntuación promedio: 85.75
Es importante destacar que df.mean()
maneja inteligentemente los valores faltantes (NaN) excluyéndolos del cálculo. Sin embargo, si tu columna contiene datos no numéricos, te encontrarás con un TypeError
. Asegúrate siempre de que tu columna contenga solo valores numéricos antes de usar este método.
Explorando estadísticas descriptivas con df.describe()
El método df.describe()
genera un resumen completo de las estadísticas descriptivas de tu DataFrame. Esto incluye la media, el conteo, la desviación estándar, el mínimo, el máximo y los cuartiles para cada columna numérica. Si bien proporciona más que solo el promedio, es una forma práctica de obtener la media junto con otras medidas estadísticas valiosas.
Usando el mismo DataFrame:
import pandas as pd
# DataFrame de ejemplo (igual que antes)
data = {'Nombre': ['Alicia', 'Bob', 'Carlos', 'David'],
'Edad': [25, 30, 22, 28],
'Puntuación': [85, 92, 78, 88]}
df = pd.DataFrame(data)
# Estadísticas descriptivas
estadisticas_resumen = df.describe()
print(estadisticas_resumen)
Esto producirá una tabla como esta:
Edad Puntuación
count 4.0 4.0
mean 26.25 85.75
std 3.50 6.24
min 22.00 78.00
25% 23.75 81.25
50% 26.50 86.50
75% 29.25 90.25
max 30.00 92.00
La media para ‘Edad’ y ‘Puntuación’ son claramente visibles. Recuerda que df.describe()
solo procesa columnas numéricas.
En resumen, tanto df.mean()
como df.describe()
proporcionan formas efectivas de calcular promedios de columnas en DataFrames de Pandas. Selecciona el método que mejor se adapte a tus necesidades: df.mean()
solo para el promedio, o df.describe()
para una visión general estadística más amplia. Siempre maneja posibles errores de tipo de datos antes de aplicar estos métodos.