Método summarize()
Agrupa as linhas em um dataframe com base em valores idênticos em uma ou mais colunas. Conta o número de linhas em cada grupo e subtotaliza as colunas numéricas especificadas para cada grupo.
Sintaxe
nome_dataframe.summarize(on = ["coluna_chave", "...n"], calculate = ["coluna_numérica", "...n"]|None, statistics = True|False)
Parâmetros
Nome | Descrição |
---|---|
on = ["coluna_chave", "...n"] |
Uma ou mais colunas-chave a sumarizar. Se você sumarizar por mais de uma coluna, criará grupos aninhados. A ordem do aninhamento seguirá a ordem em que as colunas forem especificadas. As colunas-chave ficam na posição mais à esquerda no dataframe sumarizado. Observação O método summarize() ordena automaticamente o dataframe pelas colunas-chave antes de sumarizar os dados em grupos. Os resultados de saída contêm um único grupo para cada conjunto de valores idênticos ou combinações idênticas de valores em uma ou mais colunas-chave. |
calculate = ["coluna_numérica", "...n"] | None opcional |
Se o parâmetro for omitido, nenhuma coluna será subtotalizada. |
statistics = True | False opcional |
Se você especificar True, os seguintes valores estatísticos serão calculados para cada coluna subtotalizada, divididos por grupo:
Se statistics for omitido, será usado o padrão False. |
Retorna
Dataframe do HCL.
Exemplos
Valor total de transações por cliente
Sumarize um dataframe de contas a receber com base na coluna Customer_Number e subtotalize a coluna Trans_Amount. A saída é agrupada por cliente e inclui o valor total de transações para cada cliente:
customer_total = accounts_receivable.summarize(on = ["Customer_Number"], calculate = ["Trans_Amount"], statistics = False)
Valor total de transações por cliente por data de transação
Sumarize um dataframe de contas a receber com base nas colunas Customer_Number e Trans_Date. Subtotalize a coluna Trans_Amount.
A saída é agrupada por cliente e, em cada cliente, por data, incluindo o valor total das transações de cada cliente em cada data em que o cliente teve transações.
customer_total_by_date = accounts_receivable.summarize(on = ["Customer_Number", "Trans_Date"], calculate = ["Trans_Amount"], statistics = False)
Valor total de transações com valores estatísticos, por cliente e por data de transação
Esse exemplo é idêntico ao mostrado acima, mas você especifica True para o parâmetro statistics.
Além do valor subtotalizado das transações de cada cliente em cada data em que o cliente teve transações, também serão calculados diversos valores estatísticos para cada cliente em cada data:
customer_stats_by_date = accounts_receivable.summarize(on = ["Customer_Number", "Trans_Date"], calculate = ["Trans_Amount"], statistics = True)
Observações
Como funciona?
O método summarize() agrupa linhas com o mesmo valor em uma coluna ou a mesma combinação de valores em várias colunas. O dataframe de saída contém uma única linha para cada grupo, com uma contagem do número de linhas no dataframe de origem que pertencem ao grupo. A saída também calcula a porcentagem linhas do dataframe que pertencem a cada grupo.
Subtotal e estatísticas: cálculos e nomes de colunas nos resultados de saída
Você pode usar os parâmetros calculate e statistics para executar cálculos estatísticos em qualquer coluna subtotalizada especificada. Os resultados dos cálculos estatísticos são divididos por grupo nos resultados de saída.
parâmetro calculate
Nome da coluna no dataframe de saída | Cálculo executado na coluna subtotalizada |
---|---|
nome da coluna subtotalizada + _sum | Valores subtotalizados para cada grupo |
nome da coluna subtotalizada + _sum% |
O subtotal de cada grupo, expresso como uma porcentagem do total da coluna |
Parâmetro statistics
Título da coluna no dataframe de saída | Cálculo executado na coluna subtotalizada |
---|---|
nome da coluna subtotalizada + _min |
Valor mínimo para cada grupo |
nome da coluna subtotalizada + _max |
Valor máximo para cada grupo |
nome da coluna subtotalizada + _mean |
Valor médio para cada grupo |
nome da coluna subtotalizada + _median |
Valor de mediana para cada grupo
|
nome da coluna subtotalizada + _std |
O desvio padrão para cada grupo |
nome da coluna subtotalizada + _mode |
O valor que ocorre com maior frequência em cada grupo Em caso de valores que ocorrem o mesmo número de vezes, exibe o valor mais baixo. Se nenhum valor ocorre mais de uma vez, exibe o valor mínimo na coluna. |
nome da coluna subtotalizada + _q25 |
O valor do primeiro quartil para cada grupo (valor do quartil inferior) |
nome da coluna subtotalizada + _q75 |
O valor do terceiro quartil para cada grupo (valor do quartil superior) |