Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprenda Agrupamento Avançado | Agregando Dados
Manipulação de Dados com Pandas
Seção 4. Capítulo 4
single

single

bookAgrupamento Avançado

Deslize para mostrar o menu

Vamos expandir nosso conhecimento sobre o método .groupby(). Como você se lembra, podemos usar o método .agg(). A principal vantagem dessa função é sua flexibilidade: ela permite aplicar múltiplas e diferentes agregações a múltiplas colunas ao mesmo tempo, retornando uma tabela resumo organizada.

Veja o exemplo abaixo. Agrupamos os voos por 'Airline'. Em seguida, usando .agg(), contamos o número total de voos (utilizando a coluna 'Delay') e, simultaneamente, encontramos as menores e maiores durações de voo (utilizando a coluna 'Length'). Muito prático, não é mesmo?

1234
import pandas as pd data = pd.read_csv('https://codefinity-content-media.s3.eu-west-1.amazonaws.com/4bf24830-59ba-4418-969b-aaf8117d522e/plane', index_col = 0) data_flights = data.groupby('Airline').agg({'Delay': 'count', 'Length': ['min', 'max']}) print(data_flights.head(10))
copy

Explicação:

.agg({'Delay': 'count', 'Length': ['min', 'max']})
  • .agg(): Abreviação de "aggregate" (agregar). Este método pega os dados agrupados e os condensa em estatísticas resumidas com base nas regras fornecidas.
  • {}: Utilizamos um dicionário Python para mapear colunas específicas para operações específicas. As chaves são os nomes das colunas que você deseja selecionar, e os valores são as funções que você deseja aplicar.
  • 'Delay': 'count': Instrui o pandas a aplicar a função de contagem na coluna 'Delay' para cada grupo. Observe que passamos o alias em string 'count' em vez de escrever count(). O pandas reconhece esses nomes padrão em string para estatísticas comuns.
  • 'Length': ['min', 'max']: Se você quiser aplicar mais de uma função a uma única coluna, deve colocar os nomes das funções dentro de uma lista []. Aqui, calculamos tanto o valor mínimo quanto o máximo para a coluna 'Length'.

Como aplicamos múltiplas funções, o DataFrame resultante criará automaticamente colunas hierárquicas (MultiIndex). Você verá Length no nível superior, com min e max organizados logo abaixo.

Tarefa

Deslize para começar a programar

Sua tarefa é aprofundar-se e analisar os tempos médios e máximos de atraso dependendo do aeroporto de origem do voo e, em seguida, do aeroporto de destino. Além disso, observe a mediana da duração do voo. Siga o algoritmo:

Agrupar dados:

  • Aplique o método .groupby() ao conjunto de dados data;
  • Dentro do método .groupby(), insira as colunas 'AirportFrom' e 'AirportTo'; a ordem é fundamental;
  • Utilizando o método .agg(), calcule os valores agregados: o valor médio e máximo na coluna 'Time', e o valor mediano da coluna 'Length'.

Solução

Switch to desktopMude para o desktop para praticar no mundo realContinue de onde você está usando uma das opções abaixo
Tudo estava claro?

Como podemos melhorá-lo?

Obrigado pelo seu feedback!

Seção 4. Capítulo 4
single

single

Pergunte à IA

expand

Pergunte à IA

ChatGPT

Pergunte o que quiser ou experimente uma das perguntas sugeridas para iniciar nosso bate-papo

some-alt