Cómo obtener el promedio de una columna de un pandas DataFrame
Cuando trabajamos con grandes conjuntos de datos, a veces tenemos que tomar el promedio o la media de la columna. Por ejemplo, tiene una lista de calificación de estudiantes y desea conocer el promedio de calificaciones o alguna otra columna. A continuación se enumeran las diferentes formas de lograr esta tarea.
Utilizaremos el mismo DataFrame
en las siguientes secciones de la siguiente manera,
import pandas as pd
data = {
"name": ["Oliver", "Harry", "George", "Noah"],
"percentage": [90, 99, 50, 65],
"grade": [88, 76, 95, 79],
}
df = pd.DataFrame(data)
A continuación se muestra el ejemplo DataFrame
.
name percentage grade
0 Oliver 90 88
1 Harry 99 76
2 George 50 95
3 Noah 65 79
Método df.mean()
para calcular el promedio de una columna Pandas DataFrame
Tomemos la media de la columna de calificaciones presente en nuestro conjunto de datos.
import pandas as pd
data = {
"name": ["Oliver", "Harry", "George", "Noah"],
"percentage": [90, 99, 50, 65],
"grade": [88, 76, 95, 79],
}
df = pd.DataFrame(data)
mean_df = df["grade"].mean()
print(mean_df)
Lo siguiente será enviado.
84.5
Tomemos otro ejemplo y apliquemos la función df.mean()
en todo el DataFrame.
import pandas as pd
data = {
"name": ["Oliver", "Harry", "George", "Noah"],
"percentage": [90, 99, 50, 65],
"grade": [88, 76, 95, 79],
}
df = pd.DataFrame(data)
mean_df = df.mean()
print(mean_df)
No especificamos el nombre de la columna en el método mean()
en el ejemplo anterior. El método mean()
determina automáticamente qué columnas son elegibles para aplicar la función mean
.
Lo siguiente será enviado.
percentage 76.0
grade 84.5
dtype: float64
Método df.describe()
Este método crea la salida de una estadística completa del conjunto de datos. Echemos un vistazo a cómo usarlo.
import pandas as pd
data = {
"name": ["Oliver", "Harry", "George", "Noah"],
"percentage": [90, 99, 50, 65],
"grade": [88, 76, 95, 79],
}
df = pd.DataFrame(data)
print(df.describe())
Producción :
percentage grade
count 4.000000 4.000000
mean 76.000000 84.500000
std 22.524061 8.660254
min 50.000000 76.000000
25% 61.250000 78.250000
50% 77.500000 83.500000
75% 92.250000 89.750000
max 99.000000 95.000000
El resultado del método df.describle()
es un DataFrame
, por lo tanto, puede obtener el promedio de porcentaje
y grade
al referirse al nombre de la columna y al nombre de la fila.
df.describe()["grade"]["mean"]
df.describe()["percentage"]["mean"]
df.describe()
también puede funcionar para una columna específica. Apliquemos esta función en la columna grade
.
import pandas as pd
data = {
"name": ["Oliver", "Harry", "George", "Noah"],
"percentage": [90, 99, 50, 65],
"grade": [88, 76, 95, 79],
}
df = pd.DataFrame(data)
print(df["grade"].describe())
Lo siguiente será enviado.
count 4.000000
mean 84.500000
std 8.660254
min 76.000000
25% 78.250000
50% 83.500000
75% 89.750000
max 95.000000
Name: grade, dtype: float64
El resultado es Series
cuando se especifica la columna. Podríamos obtener el valor promedio al referirnos a mean
directamente.
df["grade"].describe()["mean"]