Estruturas essenciais de manipulação e análise de dados de forma simples e visual.
Como importar a biblioteca e carregar arquivos no formato CSV utilizando a estrutura principal de DataFrame.
# Importa o pandas import pandas as pd # A variável "df" recebe um arquivo do tipo csv df = pd.read_csv('arquivo.csv') # Imprime a tabela na tela print(df) display(df)
Função nativa do Python. Exibe os dados como texto puro (sem formatação), quebrando as linhas se a tabela for muito grande. Usada em qualquer terminal ou script executável .py.
Função do ecossistema IPython/Jupyter. Exibe os dados em uma tabela interativa, estilizada em HTML com linhas alternadas e bordas suaves, facilitando muito a leitura dinâmica.
Funções rápidas para entender as primeiras linhas, registros finais ou amostras aleatórias da base.
# Imprime as 5 primeiras linhas da tabela display(df.head()) # Imprime as 5 últimas linhas da tabela display(df.tail()) # Imprime 7 linhas aleatórias da base display(df.sample(7))
Obtendo dimensões, nomes de colunas, tipos de dados e resumos estatísticos gerais da base.
# Imprime o formato do DataFrame (número de linhas e colunas) display(df.shape) # Imprime as colunas da tabela display(df.columns) # Transforma e imprime as colunas em forma de lista Python nativa display(list(df.columns)) # Informações completas sobre as colunas e tipos de dados display(df.info()) # Descrição estatística (média, desvio padrão, min, max, etc.) display(df.describe())
Selecionando colunas específicas e eliminando variáveis irrelevantes para a análise.
# Retorna somente a coluna "Paciente" da base de dados display(df['Paciente']) # Retorna um sub-dataframe com as colunas Paciente e Telefone display(df[['Paciente', 'Telefone']]) # Exclui a coluna "Compl" e armazena o resultado em um novo DataFrame df_analise = df.drop(columns=['Compl']) # Exclui valores nulos df_analise = df.dropna() # Preenche os valores nulos, da coluna “CPF”, com a palavra ‘“Vazio” df_analise['CPF'] = df_analise['CPF'].fillna('Vazio')
Utilizando dados de uma planilha, chamada pacientes.csv vamos retirar todos os valores nulos e apresentar somente o paciente e a sua respectiva última vez em que este foi visitado. O resultado será apresentado por ordem crescente de data.
# 1. Carrega o arquivo df = pd.read_csv('pacientes.csv') # 2. Filtra as colunas desejadas e remove as linhas nulas df_filtrado = df[['Paciente', 'Última VD']].dropna().copy() # 3. Converte a coluna para o formato de data (datetime) para garantir a ordenação cronológica correta df_filtrado['Última VD'] = pd.to_datetime(df_filtrado['Última VD'], format='%d/%m/%Y') # 4. Ordena por ordem crescente de data df_ordenado = df_filtrado.sort_values(by='Última VD') # 5. Opcional: Formata a data de volta para o padrão brasileiro (DD/MM/AAAA) antes de exibir df_ordenado['Última VD'] = df_ordenado['Última VD'].dt.strftime('%d/%m/%Y') # 6. Exibe o resultado estilizado no Jupyter Notebook display(df_ordenado)
Aqui vamos multiplicar as colunas "Preço" e "Qtd", apresentando o resultado em uma nova coluna: "Total"
import pandas as pd # 1. Garante que tudo é texto e remove R$ e espaços extras df_analise['Preco_Unitário'] = ( df_analise['Preco_Unitário'] .astype(str) .str.replace('R$', '', regex=False) .str.strip() ) # 2. Remove o ponto de milhar (ex: 1.500 -> 1500) e troca a vírgula pelo ponto decimal (ex: 10,00 -> 10.00) df_analise['Preco_Unitário'] = ( df_analise['Preco_Unitário'] .str.replace('.', '', regex=False) .str.replace(',', '.', regex=False) ) # 3. Converte para float (converte valores inválidos/vazios em NaN sem quebrar o código) df_analise['Preco_Unitário'] = pd.to_numeric(df_analise['Preco_Unitário'], errors='coerce') # 4. Agora pode calcular o faturamento normalmente df_analise['Faturamento'] = df_analise['Preco_Unitário'] * df_analise['Qtd']