Pandas DataFrame DataFrame.aggregate() Função
-
Sintaxe de
pandas.DataFrame.aggregate()
-
Códigos de exemplo: Pandas
DataFrame.aggregate()
-
Códigos de exemplo:
DataFrame.aggregate()
Com as funções múltiplas -
Códigos de exemplo:
DataFrame.aggregate()
Com uma Coluna Especificada
A função pandas.DataFrame.aggregate()
agrega as colunas ou linhas de um DataFrame
. As funções de agregação mais utilizadas são min
, max
, e sum
. Essas funções de agregação resultam na redução do tamanho do DataFrame
.
Sintaxe de pandas.DataFrame.aggregate()
DataFrame.aggregate(func, axis, *args, **kwargs)
Parâmetros
func |
É a função de agregação a ser aplicada. Pode ser uma callable ou uma lista de callable , string ou uma lista de strings, ou um dicionário. |
axis |
0 por padrão. Se for 0 ou 'index' então a função é aplicada às colunas individuais. Se for 1 ou 'columns' , então a função é aplicada às linhas individuais. |
*args |
É um argumento posicional. |
**kwargs |
É um argumento de palavra-chave. |
Retornar
Esta função retorna um scalar
, Series
, ou um DataFrame
.
- Ela retorna um
scalar
se uma única função for chamada comSeries.agg()
. - Retorna uma
Series
se uma única função for chamada comDataFrame.agg()
. - Retorna um
DataFrame
se múltiplas funções forem chamadas comDataFrame.agg()
.
Códigos de exemplo: Pandas DataFrame.aggregate()
DataFrame.agg()
é um pseudônimo para DataFrame.aggregate()
. É melhor utilizar o pseudônimo. Então estaremos utilizando DataFrame.agg()
nos códigos de exemplo.
import pandas as pd
dataframe=pd.DataFrame({'Attendance': {0: 60, 1: 100, 2: 80,3: 78,4: 95},
'Name': {0: 'Olivia', 1: 'John', 2: 'Laura',3: 'Ben',4: 'Kevin'},
'Obtained Marks': {0: 90, 1: 75, 2: 82, 3: 64, 4: 45}})
print(dataframe)
O exemplo DataFrame
está abaixo.
Attendance Name Obtained Marks
0 60 Olivia 90
1 100 John 75
2 80 Laura 82
3 78 Ben 64
4 95 Kevin 45
Primeiro verificaremos a função DataFrame.agg()
utilizando apenas uma única função de agregação.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 78, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 90, 1: 75, 2: 82, 3: 64, 4: 45},
}
)
dataframe1 = dataframe.agg("sum")
print(dataframe1)
Resultado:
Attendance 413
Name OliviaJohnLauraBenKevin
Obtained Marks 356
dtype: object
A função de agregação sum
é aplicada às colunas individuais.
Para a coluna do tipo integer
, ela gerou soma; e para a coluna do tipo string
, ela concatenou as strings. O dtype: object
mostra que uma Series
é retornada.
Códigos de exemplo: DataFrame.aggregate()
Com as funções múltiplas
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 78, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 90, 1: 75, 2: 82, 3: 64, 4: 45},
}
)
dataframe1 = dataframe.agg(["sum", "min"])
print(dataframe1)
Resultado:
Attendance Name Obtained Marks
sum 413 OliviaJohnLauraBenKevin 356
min 60 Ben 45
As funções de agregação sum
e min
são aplicadas às colunas individuais.
Para a coluna do tipo integer
, a função min
gerou o valor mínimo, e para a coluna do tipo string
, mostrou a string com comprimento mínimo.
Códigos de exemplo: DataFrame.aggregate()
Com uma Coluna Especificada
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 78, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 90, 1: 75, 2: 82, 3: 64, 4: 45},
}
)
dataframe1 = dataframe.agg({"Obtained Marks": "sum"})
print(dataframe1)
Resultado:
Obtained Marks 356
dtype: int64
A soma de uma única coluna é devolvida. O dtype: int64
mostra que esta função retornou uma Series
.
Poderíamos também aplicar múltiplas funções em uma única coluna.
import pandas as pd
dataframe = pd.DataFrame(
{
"Attendance": {0: 60, 1: 100, 2: 80, 3: 78, 4: 95},
"Name": {0: "Olivia", 1: "John", 2: "Laura", 3: "Ben", 4: "Kevin"},
"Obtained Marks": {0: 90, 1: 75, 2: 82, 3: 64, 4: 45},
}
)
dataframe1 = dataframe.agg({"Obtained Marks": ["sum", "max"]})
print(dataframe1)
Resultado:
Obtained Marks
sum 356
max 90