5 Funções Essenciais do Pandas que Todo Programador Precisa Dominar

Aprenda 5 funções essenciais do Pandas para de forma simples e com exemplos de uso. Se você está começando a trabalhar com análise de dados em Python, provavelmente já ouviu falar da biblioteca Pandas.

As funções essenciais do Pandas para análise de dados são describe(), que resume estatísticas das colunas; apply(), que aplica cálculos personalizados; groupby(), que agrupa e resume dados; fillna(), que preenche valores vazios; e merge(), que junta tabelas. Dominar essas cinco funções permite organizar, limpar e entender grandes volumes de dados com poucas linhas.

Essa biblioteca é como uma caixa de ferramentas para quem precisa organizar, limpar e entender grandes quantidades de dados.

Mas, para aproveitar todo o potencial dela, existem algumas funções que você simplesmente precisa conhecer.

Neste post, vamos conhecer cinco delas: describe(), apply(), groupby(), fillna() e merge(). Essas funções são fáceis de aprender e vão transformar a maneira como você lida com dados. Vamos lá?

Este conteúdo também está disponível em vídeo! Assista aqui embaixo ou acesse o nosso canal do YouTube!

O que você aprende neste vídeo

Resposta rápida: A aula mostra cinco funções essenciais do pandas em Python usando uma tabela de funcionários. Você aprende a resumir a base com describe(), aplicar cálculos coluna a coluna com apply() e lambda, agrupar e tirar médias com groupby(), preencher vazios com fillna() e juntar duas tabelas com merge(), além de descartar colunas com drop().

Neste vídeo (18 min):

  • 1:00 - Import do pandas com o apelido pd e criação do DataFrame a partir de um dicionário
  • 2:00 - describe() devolvendo contagem, média, desvio padrão, mínimo, máximo e quartis das colunas numéricas
  • 4:00 - apply() com uma função lambda criando a coluna de salário reajustado
  • 6:00 - groupby() agrupando os funcionários pela coluna de área
  • 8:00 - numeric_only=True para a média ignorar a coluna de texto em vez de dar erro
  • 9:00 - fillna() preenchendo salário vazio com um valor fixo ou com a média da coluna
  • 12:00 - merge() juntando a tabela de funcionários com a tabela de áreas
  • 14:00 - Diferença entre how='left' e how='right' na hora de mesclar as tabelas
  • 15:00 - left_on e right_on quando as colunas de referência têm nomes diferentes
  • 16:00 - Método drop() com o parâmetro columns descartando a coluna duplicada

Trechos do vídeo:

  • O pandas se instala com pip install pandas e, por convenção, é importado com o apelido pd.
  • No describe(), a linha de 25% mostra até onde chega um quarto da base e a de 75%, três quartos.
  • A função passada ao apply() recebe um valor por vez, e por isso costuma ser uma lambda.
  • Em merge(), o how='left' mantém todas as linhas da tabela da esquerda e completa com o que achar na direita.

Para fazer o download do(s) arquivo(s) utilizados na aula, preencha com o seu e-mail:

Não vamos te encaminhar nenhum tipo de SPAM! A Hashtag Treinamentos é uma empresa preocupada com a proteção de seus dados e realiza o tratamento de acordo com a Lei Geral de Proteção de Dados (Lei n. 13.709/18). Qualquer dúvida, nos contate.

Preparando o ambiente

Para usar o Pandas, você precisa instalá-lo (basta um pip install pandas no terminal) e importar a biblioteca no seu código com o famoso import pandas as pd.

Python
import pandas as pd

Aqui, vamos criar uma tabela simples com nomes, idades e salários de funcionários para nossos exemplos:

Python
dados = {
    'Nome': ['Ana', 'Bruno', 'Carlos', 'Daniela', 'Eduardo'],
    'Idade': [25, 30, 35, 40, 45],
    'Salário': [3000, None, 7000, None, 11000]
}
tabela = pd.DataFrame(dados)

Repare que alguns salários estão como None (vazios). Isso é comum em bases de dados reais e vamos lidar com isso mais tarde!

Ícone PythonPython Impressionador

Você vai aprender a linguagem de Programação que mais cresce no Mundo para fazer automações incríveis, desenvolver sites, fazer análises de dados, trabalhar com Ciência de Dados, Inteligência Artificial, mesmo que você nunca tenha tido nenhum contato com Programação na vida.

Começar agoraSeta para a direita
Fundo PythonTelas Python
Luz Python

1. describe() – Um Raio-X dos Seus Dados

Quer saber tudo sobre seus dados num piscar de olhos? A função describe() é o seu atalho. Ela te dá um resumo estatístico das colunas numéricas, como média, mínimo, máximo e até os quartis.

Python
print(tabela.describe())

Com isso, você descobre que a média de idade é 35 anos e que 75% dos funcionários ganham até R$ 9.000. É perfeito para ter uma visão geral rapidinha, especialmente quando você está começando a explorar uma base de dados.

2. apply() – Personalize Seus Cálculos

E se você precisar ajustar os salários com um aumento de 10%? A função apply() deixa você aplicar uma operação em cada item de uma coluna de forma simples e eficiente. Olha só:

Python
tabela["Salario Ajustado"] = tabela["Salário"].apply(lambda x: x * 1.1)
print(tabela)

Aqui, criamos uma nova coluna com os salários ajustados. O lambda x: x * 1.1 multiplica cada valor por 1.1 (10% a mais). É como mágica: você pode usar funções simples ou até criar cálculos mais complexos para personalizar seus dados.

3. groupby() – Organize e Resuma por Grupos

Imagine que você quer saber a média de idade e salário por área da empresa (como Administrativo, Financeiro ou Vendas). O groupby() agrupa os dados e faz cálculos para você. Vamos adicionar uma tabela com áreas:

Python
tabela_areas = pd.DataFrame({
    "Nome Funcionario": ['Ana', 'Bruno', 'Carlos', 'Eduardo'],
    'Área': ["Administrativo", "Financeiro", "Vendas", "Financeiro"]
})

Depois de juntar as tabelas (falaremos disso no merge()), você pode usar:

Python
medias_area = tabela.groupby("Área").mean(numeric_only=True)
print(medias_area)

Isso te mostra, por exemplo, que o Financeiro tem uma média salarial de R$ 8.000. Simples, rápido e poderoso para análises por categoria!

4. fillna() – Adeus, Valores Vazios

Dados incompletos são um pesadelo, né? Na nossa tabela, Daniela e Bruno não têm salário preenchido. O fillna() resolve isso substituindo os valores vazios. Vamos usar a média dos salários:

Python
media_salarial = tabela["Salário"].mean()
tabela["Salário"] = tabela["Salário"].fillna(media_salarial)
print(tabela)

Aqui, calculamos a média (R$ 7.000) e preenchemos os campos vazios com esse valor. Você pode usar a média, zero ou qualquer número que faça sentido para o seu caso. Problema resolvido!

5. merge() – Junte Tabelas como um Mestre

E se os dados estiverem espalhados em várias tabelas? O merge() é a solução para combinar tudo. Vamos juntar nossa tabela principal com a tabela de áreas:

Python
tabela = tabela.merge(tabela_areas, how="left", left_on="Nome", right_on="Nome Funcionario")
tabela = tabela.drop(columns="Nome Funcionario")
print(tabela)

Com how="left", mantemos todos os funcionários da tabela original e adicionamos as áreas quando disponíveis. Daniela, por exemplo, fica sem área porque não está na segunda tabela. O drop() no final remove a coluna extra que não precisamos. É como montar um quebra-cabeça de dados!

Perguntas frequentes

1. Para que serve a função describe() do Pandas?

A describe() gera um resumo estatístico das colunas numéricas de um DataFrame: contagem, média, desvio padrão, mínimo, máximo e os quartis. É como um raio-X inicial dos dados, útil para entender a distribuição e detectar valores estranhos logo no começo da análise. Para colunas de texto, ela mostra contagem e frequência.

2. Qual a diferença entre apply() e map() no Pandas?

O apply() funciona em Series e DataFrames e pode operar em linhas ou colunas inteiras, aplicando uma função a cada elemento ou eixo. Já o map() atua só em uma Series, substituindo valores um a um. Em resumo, apply() é mais flexível e serve para cálculos personalizados mais complexos.

3. Como usar o groupby() do Pandas?

O groupby() agrupa as linhas por uma ou mais colunas e depois aplica uma agregação, como soma ou média. Por exemplo, df.groupby("categoria")["vendas"].sum() soma as vendas por categoria. É a ferramenta ideal para resumir grandes bases e responder perguntas como total, média ou contagem por grupo.

4. Como preencher valores vazios com fillna() no Pandas?

O fillna() substitui os valores nulos (NaN) por um valor definido. Você pode usar um número fixo, como df.fillna(0), ou a média/mediana da coluna, ou ainda propagar o valor anterior com o parâmetro method. É um passo essencial na limpeza de dados antes de análises e modelos.

Conclusão - Por que essas funções são essenciais?

Essas cinco funções cobrem o básico de qualquer análise de dados: explorar (describe), transformar (apply), agrupar (groupby), limpar (fillna) e combinar (merge). Elas são fáceis de usar e te dão um controle incrível sobre seus dados.

Quer praticar mais? Experimente criar um projeto com essas funções – quem sabe calcular médias salariais ou simular ajustes em uma base de dados da sua empresa fictícia. Com o Pandas, o céu é o limite!

E se quiser mais conteúdos como esse, não deixe de conferir nossos outros conteúdos sobre Python.

Hashtag Treinamentos

Para acessar outras publicações de Python, clique aqui!


Quer aprender mais sobre Python com um minicurso básico gratuito?

Posts mais recentes de Python

Posts mais recentes da Hashtag Treinamentos