Top 5 Cursos de Python para 2025

Descubra os melhores cursos de programação para acelerar sua carreira e aprender do jeito certo!

Home > Blog > Python
Python
Programação

Como Dominar o Pandas no Python para Análise de Dados

Atualizado em: 17 de junho de 2025

Logo do Pandas

Introdução ao Pandas

O Pandas é uma biblioteca fundamental do ecossistema Python voltada para análise e manipulação de dados. Ele fornece estruturas de dados poderosas e ferramentas eficientes para trabalhar com dados tabulares e séries temporais.

Seu nome vem de “Python Data Analysis Library”, e ele é amplamente utilizado em ciência de dados, machine learning, estatística e engenharia de dados. Com o Pandas, tarefas que seriam complexas com listas e dicionários se tornam intuitivas, como filtrar linhas, agrupar dados, lidar com valores ausentes e muito mais.

Além disso, o Pandas integra-se facilmente com outras bibliotecas populares como NumPy, Matplotlib e Scikit-learn, tornando-se uma peça-chave em qualquer pipeline de dados em Python.

Instalando e configurando o Pandas

Antes de começar, é necessário instalar o Pandas. Isso pode ser feito facilmente com o pip:

Bash
pip install pandas

Para quem utiliza o Anaconda, o Pandas já vem pré-instalado, mas pode ser atualizado com:

Bash
conda update pandas

Após a instalação, basta importar a biblioteca em seu script ou notebook:

Python
import pandas as pd

A convenção pd é usada pela comunidade para facilitar a escrita de código.

Entendendo Series e DataFrames

As duas principais estruturas de dados do Pandas são:

Series

Uma Series é uma estrutura unidimensional que pode armazenar dados de qualquer tipo (inteiros, strings, floats, objetos Python, etc.). Ela é semelhante a uma lista ou array, mas com rótulos para cada elemento.

Python
import pandas as pd

serie = pd.Series([10, 20, 30], index=['a', 'b', 'c'])
print(serie)

DataFrame

O DataFrame é a estrutura mais usada no Pandas. Ele é uma tabela bidimensional com rótulos de linhas e colunas. Pode ser comparado a uma planilha ou tabela de banco de dados.

Python
dados = {'Nome': ['Ana', 'Bruno', 'Carlos'],
         'Idade': [28, 34, 25]}

df = pd.DataFrame(dados)
print(df)

O DataFrame é extremamente versátil, oferecendo inúmeras formas de acessar, modificar e analisar dados.

Carregando e explorando conjuntos de dados

Uma das grandes vantagens do Pandas é sua capacidade de ler e escrever dados em diversos formatos, como CSV, Excel, JSON, entre outros.

Carregando arquivos CSV

Python
df = pd.read_csv('dados.csv')

Você também pode passar parâmetros como delimitador, codificação e colunas específicas:

Python
df = pd.read_csv('dados.csv', sep=';', encoding='utf-8', usecols=['nome', 'idade'])

Explorando dados

Após carregar o DataFrame, algumas funções são essenciais para conhecer seu conteúdo:

Python
df.head()       # Mostra as primeiras 5 linhas
df.tail()       # Mostra as últimas 5 linhas
df.shape        # Mostra o número de linhas e colunas
df.columns      # Lista os nomes das colunas
df.info()       # Exibe informações gerais sobre o DataFrame
df.describe()   # Mostra estatísticas descritivas das colunas numéricas

Esses comandos são ideais para fazer uma análise exploratória inicial dos dados.

Manipulação de dados: filtragem, ordenação e seleção

Seleção de colunas e linhas

Para acessar uma coluna:

Python
df['idade']

Para acessar várias colunas:

Python
df[['nome', 'idade']]

Para acessar linhas por índice:

Python
df.iloc[0]      # Primeira linha
df.iloc[0:3]    # Da linha 0 até a 2

Para acessar por rótulo:

Python
df.loc[0]       # Linha com índice 0

Filtrando dados

Você pode aplicar condições para filtrar:

Python
df[df['idade'] > 30]

Ordenando dados

Ordenação por uma coluna:

Python
df.sort_values(by='idade')

Ordenação decrescente:

Python
df.sort_values(by='idade', ascending=False)

Essas técnicas são a base para limpar e organizar seus dados de forma eficaz.

Tratando dados faltantes e inconsistências

Dados reais raramente são perfeitos. O Pandas oferece recursos robustos para lidar com valores ausentes e inconsistências.

Detectando valores nulos

Python
df.isnull()           # Indica com True os valores ausentes
df.isnull().sum()     # Conta quantos valores ausentes por coluna

Preenchendo valores nulos

Você pode substituir valores ausentes por uma constante ou estatística:

Python
df.fillna(0)                          # Substitui por 0
df.fillna(df['salario'].mean())      # Substitui pela média

Removendo valores nulos

Python
df.dropna()              # Remove linhas com qualquer valor nulo
df.dropna(how='all')     # Remove linhas só se todos os valores forem nulos
df.dropna(subset=['idade'])  # Remove linhas com nulos na coluna 'idade'

Corrigindo inconsistências

Renomear colunas, substituir valores e alterar tipos:

Python
df.columns = df.columns.str.lower()
df['estado'] = df['estado'].str.strip()
df['idade'] = df['idade'].astype(int)

Essas práticas garantem dados mais limpos e prontos para análise.

Operações estatísticas e agregações

O Pandas oferece métodos estatísticos integrados para análise rápida dos dados.

Estatísticas descritivas

Python
df['idade'].mean()         # Média
df['idade'].median()       # Mediana
df['idade'].std()          # Desvio padrão
df['idade'].min()          # Mínimo
df['idade'].max()          # Máximo
df['idade'].value_counts() # Frequência de valores

Agregações com groupby

O método groupby é poderoso para análises por grupos:

Python
df.groupby('estado')['salario'].mean()

Você pode aplicar várias funções:

Python
df.groupby('departamento')['salario'].agg(['mean', 'max', 'min'])

Essas ferramentas permitem gerar relatórios e sumarizações com poucas linhas de código.

Mesclando e combinando DataFrames

Em muitos casos, seus dados estarão distribuídos em várias tabelas. O Pandas facilita a junção e concatenação desses dados.

Concatenando DataFrames

Unir dados verticalmente ou horizontalmente:

Python
df_concatenado = pd.concat([df1, df2], axis=0)  # Por linhas
df_concatenado = pd.concat([df1, df2], axis=1)  # Por colunas

Mesclando DataFrames

Similar ao SQL JOIN:

Python
df_merged = pd.merge(df1, df2, on='id')  # junção por coluna comum

Você também pode definir o tipo de junção:

Python
pd.merge(df1, df2, how='left', on='id')
pd.merge(df1, df2, how='inner', on='id')

Isso é essencial para integrar informações vindas de fontes diferentes.

Exportando dados para diversos formatos

Após manipular seus dados, você pode exportá-los para diversos formatos com facilidade.

Exportando para CSV

Python
df.to_csv('saida.csv', index=False)

Exportando para Excel

Python
df.to_excel('saida.xlsx', index=False)

Exportando para JSON

Python
df.to_json('saida.json')

Essas exportações permitem compartilhar ou reutilizar seus dados em outros sistemas.

Dicas avançadas para otimizar seu código com Pandas

Trabalhe com amostras menores

Para bases grandes, analise uma amostra:

Python
df.sample(100)

Use tipos de dados otimizados

Converter colunas categóricas ajuda a economizar memória:

Python
df['categoria'] = df['categoria'].astype('category')

Use métodos vetorizados

Evite loops; prefira operações diretas com Pandas:

Python
df['nova_coluna'] = df['coluna1'] + df['coluna2']

Use o método query para filtros complexos

Python
df.query('idade > 30 and estado == "SP"')

Essas práticas tornam seu código mais rápido, legível e eficiente.

Top 5 Melhores Cursos de Python em 2025 Para Iniciantes

Confira os melhores cursos de Python de 2025, com opções para iniciantes e avançados, e aprenda a programar de forma eficiente

Os comentários estão desativados.

POSTS RELACIONADOS

Ver todos

Seta para a direita