Como obter a média de uma coluna de dados PandasFrame
Quando trabalhamos com grandes conjuntos de dados, às vezes temos que tomar a média ou média da coluna. Por exemplo, você tem uma lista de notas dos alunos e quer saber a média das notas ou alguma outra coluna. A seguir estão listadas as diferentes maneiras de se conseguir esta tarefa.
Utilizaremos o mesmo DataFrame
nas próximas seções como a seguir,
import pandas as pd
data = {
"name": ["Oliver", "Harry", "George", "Noah"],
"percentage": [90, 99, 50, 65],
"grade": [88, 76, 95, 79],
}
df = pd.DataFrame(data)
Abaixo está o exemplo DataFrame
.
name percentage grade
0 Oliver 90 88
1 Harry 99 76
2 George 50 95
3 Noah 65 79
df.mean()
Método para calcular a média de uma coluna DataFrame de Pandas
Vamos pegar a coluna da média das notas presentes em nosso array de dados.
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)
O seguinte será produzido.
84.5
Vamos pegar outro exemplo e aplicar a função df.mean()
em todo o 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)
Não especificamos o nome da coluna no método mean()
do exemplo acima. O método mean()
determina automaticamente quais colunas são elegíveis para a aplicação da função mean
.
O seguinte será emitido.
percentage 76.0
grade 84.5
dtype: float64
df.describe()
Método
Este método cria o resultado de uma estatística completa do array de dados. Vamos dar uma olhada em como utilizá-lo.
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())
Resultado:
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
O resultado do método df.describle()
é um DataFrame
, portanto, você poderia obter a média de percentage
e grade
, referindo-se ao nome da coluna e nome da linha.
df.describe()["grade"]["mean"]
df.describe()["percentage"]["mean"]
O método df.describe()
também pode funcionar para uma coluna específica. Vamos aplicar esta função na coluna 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())
O seguinte será emitido.
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
O resultado é Series
quando a coluna é especificada. Poderíamos obter o valor médio referindo-nos diretamente ao mean
.
df["grade"].describe()["mean"]