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
Técnicas Avançadas em Pandas

bookAgrupamento Avançado

Vamos expandir nosso conhecimento sobre o método .groupby(). Como você deve se lembrar, podemos utilizar o método .agg(). De fato, a principal vantagem dessa função é que podemos aplicar diferentes funções às colunas numéricas com uma única chave de agrupamento. Observe o exemplo em que agrupamos os voos pela coluna 'Airline', depois contamos os valores em 'Delay' para cada 'Airline' e calculamos os valores mínimo e máximo para 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() – método que permite aplicar funções em uma série ou em cada elemento separadamente;
  • {} – utilizamos chaves para especificar a coluna e aplicar funções diretamente a elas;
  • 'Delay': 'count' – aplica a função .count() aos valores da coluna 'Delay' que possuem a mesma chave de agrupamento;
  • 'Length': ['min', 'max'] – aplica as funções .min() e .max() aos valores da coluna 'Length' que possuem a mesma chave de agrupamento. Basta colocar apenas o nome da coluna sem os símbolos () ou . na função. Atenção: se desejar aplicar várias funções à mesma coluna, é necessário colocá-las em uma lista.
Tarefa

Swipe to start coding

Podemos supor que um atraso depende da companhia aérea ou do aeroporto, mas vamos aprofundar 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

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

Suggested prompts:

Can you explain what the output of this code would look like?

What other functions can I use with `.agg()` besides 'count', 'min', and 'max'?

How can I group by multiple columns using `.groupby()` and `.agg()`?

close

Awesome!

Completion rate improved to 3.03

bookAgrupamento Avançado

Deslize para mostrar o menu

Vamos expandir nosso conhecimento sobre o método .groupby(). Como você deve se lembrar, podemos utilizar o método .agg(). De fato, a principal vantagem dessa função é que podemos aplicar diferentes funções às colunas numéricas com uma única chave de agrupamento. Observe o exemplo em que agrupamos os voos pela coluna 'Airline', depois contamos os valores em 'Delay' para cada 'Airline' e calculamos os valores mínimo e máximo para 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() – método que permite aplicar funções em uma série ou em cada elemento separadamente;
  • {} – utilizamos chaves para especificar a coluna e aplicar funções diretamente a elas;
  • 'Delay': 'count' – aplica a função .count() aos valores da coluna 'Delay' que possuem a mesma chave de agrupamento;
  • 'Length': ['min', 'max'] – aplica as funções .min() e .max() aos valores da coluna 'Length' que possuem a mesma chave de agrupamento. Basta colocar apenas o nome da coluna sem os símbolos () ou . na função. Atenção: se desejar aplicar várias funções à mesma coluna, é necessário colocá-las em uma lista.
Tarefa

Swipe to start coding

Podemos supor que um atraso depende da companhia aérea ou do aeroporto, mas vamos aprofundar 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

some-alt