É possivel gerar um arquivo xlsx , buscando dados de um banco e filtrando estas informaçoes, e assim gerar uma tabela formatada, com filtros com a biblioteca pandas?
É possivel gerar um arquivo xlsx , buscando dados de um banco e filtrando estas informaçoes, e assim gerar uma tabela formatada, com filtros com a biblioteca pandas?
Olá Aline, tudo bem com você?
Peço desculpas pela demora em obter um retorno.
É possível, sim, gerar um arquivo Excel a partir de um banco de dados, aplicar filtros, formatar e exportar a tabela para o Excel utilizando o Pandas. Para isso, você deverá usar o conector do seu banco de dados para acessar as informações e em seguida, utilizar o pandas para ler os dados com a função read_sql_query
, aplicar os filtros necessários e por fim, exportar a tabela.
No exemplo de código abaixo, tenho um arquivo chamado empresa.db
, que é um tipo de arquivo do banco SQLite e utilizo a função read_sql_query
para executar uma query que trará todos os dados de uma tabela chamada "empresas" e em seguida, filtro com recursos do próprio pandas, todas as empresas que possuem faturamento maior que R$ 900.000 (novecentos mil) e por último, transformo essa tabela filtrada em um arquivo XLSX:
import pandas as pd
import sqlite3
# Conectar-se ao banco de dados
conn = sqlite3.connect('exemplo_empresa.db')
# Consulta SQL para buscar todos os dados da tabela "empresas"
query = "SELECT * FROM empresas"
# Ler os dados do banco de dados para um DataFrame do Pandas
df = pd.read_sql_query(query, conn)
print(df)
# Definir o valor limite para o filtro de faturamento
valor_limite = 900000
# Filtrar com base no faturamento os dados do banco através do pandas
df_filtrado = df[df['faturamento'] > valor_limite]
print(df_filtrado)
# Criar um arquivo Excel (XLSX) com os dados filtrados
df_filtrado.to_excel('dados_filtrados.xlsx', index=False)
# Fechar a conexão com o banco de dados
conn.close()
Inclusive, na Alura temos um curso de Pandas I/O: trabalhando com diferentes formatos de arquivos que possui um capítulo dedicado a consultas de banco de dados SQL através do pandas, recomendo que o faça. E caso ainda seja iniciante do mundo pandas e queira explorar ainda mais os recursos dessa biblioteca que, aliás, é muito poderosa no que diz respeito a análises de dados, recomendo a Formação Python para Data Science.
Espero ter ajudado. Continue mergulhando em conhecimento e não hesite em voltar ao fórum para continuar aprendendo e interagindo com a comunidade.
Em caso de dúvidas estou à disposição.
Abraços e bons estudos!