Skip to content

Folha de Dicas do Pandas (Cheat Sheet)

Guia detalhado para usar a biblioteca Pandas.

Instalação do Pandas

Comando Descrição
conda install pandas A melhor maneira de obter o pandas é via conda
python3 -m pip install --upgrade pandas Via PyPI
pip install pandas Instalação padrão via pip

Abreviações principais e importação de pacotes

Abreviação Descrição
df Qualquer objeto Pandas DataFrame
s Qualquer objeto Pandas Series

Métodos de importação

Comando Descrição
import pandas as pd Importar pandas com o alias pd
import numpy as np Importar numpy com o alias np

Seleção de dados

Comando Descrição
df[col] Retorna uma coluna como Series baseada no nome da coluna
df[[col1, col2]] Retorna várias colunas como DataFrame
s.iloc[0] Selecionar dados por posição
s.loc['index_one'] Selecionar dados por índice
df.iloc[0,:] Retorna a primeira linha
df.iloc[0,0] Retorna o primeiro elemento da primeira coluna

Limpeza de dados

Comando Descrição
df.columns = ['a','b','c'] Renomear colunas
pd.isnull() Verifica valores nulos em um DataFrame; retorna um array booleano
pd.notnull() Verifica valores não nulos em um DataFrame; retorna um array booleano
df.dropna() Exclui todas as linhas que contêm valores nulos
df.dropna(axis=1) Exclui todas as colunas que contêm valores nulos
df.dropna(axis=1, thresh=n) Exclui todas as linhas com menos de n valores não nulos
df.fillna(x) Substitui todos os valores nulos em um DataFrame por x
s.astype(float) Converte o tipo de dados da Series para float
s.replace(1, 'one') Substitui todos os valores iguais a 1 por ‘one’
s.replace([1,3], ['one', 'three']) Substitui 1 com ‘one’ e 3 com ’three’
df.rename(columns=lambda x: x + 1) Renomear colunas em lote
df.rename(columns={'old_name': 'new_name'}) Renomear colunas seletivamente
df.set_index('column_one') Alterar a coluna de índice
df.rename(index=lambda x: x + 1) Renomear índices em lote

Importação de dados

Comando Descrição
pd.read_csv(filename) Importar dados de um arquivo CSV
pd.read_table(filename) Importar dados de um arquivo de texto delimitado
pd.read_excel(filename) Importar dados de um arquivo Excel
pd.read_sql(query, connection_object) Importar dados de uma tabela/banco de dados SQL
pd.read_json(json_string) Importar dados de uma string JSON
pd.read_html(url) Extrair tabelas de um URL, string ou arquivo HTML
pd.read_clipboard() Busca conteúdo da área de transferência e o passa para read_table()
pd.DataFrame(dict) Importar dados de um objeto de dicionário (as chaves são nomes de colunas, os valores são dados)

Exportação de dados

Comando Descrição
df.to_csv(filename) Exportar dados para um arquivo CSV
df.to_excel(filename) Exportar dados para um arquivo Excel
df.to_sql(table_name, connection_object) Exportar dados para uma tabela SQL
df.to_json(filename) Exportar dados para um arquivo de texto no formato JSON

Processamento de dados: Filter, Sort e GroupBy

Comando Descrição
df[df[col] > 0.5] Selecionar linhas onde o valor na coluna ‘col’ é > 0,5
df.sort_values(col1) Ordenar dados pela coluna col1 (crescente por padrão)
df.sort_values(col2, ascending=False) Ordenar dados pela coluna col2 em ordem decrescente
df.sort_values([col1, col2], ascending=[True, False]) Ordenar por col1 crescente e depois por col2 decrescente
df.groupby(col) Retorna um objeto GroupBy agrupado pela coluna ‘col’
df.groupby([col1, col2]) Retorna um objeto GroupBy agrupado por várias colunas
df.groupby(col1)[col2].mean() Retorna a média da coluna col2 para cada grupo em col1
df.pivot_table(index=col1, values=[col2, col3], aggfunc=max) Criar uma tabela dinâmica agrupada por col1, calculando o máximo para col2 e col3
df.groupby(col1).agg(np.mean) Retorna a média de todas as colunas agrupadas por col1
df.apply(np.mean) Aplicar a função np.mean a cada coluna
df.apply(np.max, axis=1) Aplicar a função np.max a cada linha

Criação de objetos de teste

Comando Descrição
pd.DataFrame(np.random.rand(20,5)) Criar um DataFrame com 20 linhas e 5 colunas de números aleatórios
pd.Series(my_list) Criar uma Series de um objeto iterável my_list
df.index = pd.date_range('1900/1/30', periods=df.shape[0]) Adicionar um índice de data

Visualização e inspeção de dados

Comando Descrição
df.head(n) Visualizar as primeiras n linhas de um DataFrame
df.tail(n) Visualizar as últimas n linhas de um DataFrame
df.shape Visualizar o número de linhas e colunas
df.info() Visualizar índice, tipos de dados e informações de memória
df.describe() Visualizar estatísticas resumidas para colunas numéricas
s.value_counts(dropna=False) Visualizar valores únicos e contagens para uma Series
df.apply(pd.Series.value_counts) Visualizar valores únicos e contagens para cada coluna em um DataFrame

Fusão de dados

Comando Descriere
df1.append(df2) Acrescentar linhas de df2 ao final de df1
pd.concat([df1, df2], axis=1) Acrescentar colunas de df2 ao final de df1
df1.join(df2, on=col1, how='inner') Join estilo SQL entre colunas de df1 e df2

Estatísticas de dados

Comando Descrição
df.describe() Visualizar estatísticas resumidas para colunas numéricas
df.mean() Retorna a média de todas as colunas
df.corr() Retorna o coeficiente de correlação entre colunas
df.count() Retorna o número de valores não nulos em cada coluna
df.max() Retorna o valor máximo de cada coluna
df.min() Retorna o valor mínimo de cada coluna
df.median() Retorna a mediana de cada coluna
df.std() Retorna o desvio padrão de cada coluna