Explorando bancos de dados em Python usando Pandas

Explorando bancos de dados em Python usando Pandas


Neste artigo, vou cobrir em detalhes sobre como trabalhar com bancos de dados em Python usando Pandas e SQLAlchemy. Isso faz parte da série “Aprenda Pandas em Python”Onde falo sobre as várias técnicas para trabalhar com o módulo Pandas em Python.

Em meu artigo anterior da série, expliquei como criar um mecanismo usando o módulo SQLAlchemy e como conectar-se a bancos de dados em Python enquanto usa o módulo Pandas. Você pode usar qualquer banco de dados para se conectar a partir do MySQL, SQL Server, PostgreSQL, SQLite, etc. No entanto, por causa dos tutoriais, continuarei usando o PostgreSQL. Além disso, também expliquei em detalhes como criar um dataframe Pandas em Python e inserir dados do dataframe em uma tabela em um banco de dados PostgreSQL. Isso envolveu o uso do “to_sql ()”Método do objeto dataframe para interagir com o banco de dados. Também aprendemos sobre os vários argumentos que podem ser aceitos por esse método e para que servem esses argumentos.

Criar dataframe Pandas a partir de tabelas SQL

Conforme explicado no artigo anterior, criamos uma tabela a partir do dataframe do Pandas e inserimos registros nela usando a mesma. Estaremos usando a mesma tabela agora para ler dados e criar um dataframe a partir dela. Carregar dados de uma tabela SQL é bastante fácil. Você pode usar o seguinte comando para carregar dados de uma tabela SQL em um dataframe Pandas.

Esta é a maneira mais fácil de criar um dataframe a partir de uma tabela SQL. Neste, acabamos de fornecer os dois argumentos obrigatórios que dizem aos Pandas para se conectarem ao tabela com a conexão motor. Se você quiser saber mais sobre como criamos o mecanismo, sugiro que dê uma olhada rápida em meu artigo anterior sobre o mesmo tópico. Lá, expliquei em detalhes como criar o mecanismo SQLAlchemy para se conectar ao banco de dados.

Leia Também  Introdução aos Aplicativos de Função do Azure

Além disso, podemos apenas imprimir as 5 principais linhas do conjunto de dados que importamos usando o “cabeça()”Método do dataframe do pandas.

Lendo os 5 principais registros do dataframe - bancos de dados em python

Figura 1 – Lendo os 5 principais registros de bancos de dados em Python

Como você pode ver na figura acima, quando usamos o “cabeça()”, Ele exibe os cinco principais registros do conjunto de dados que criamos importando dados do banco de dados. Você também pode imprimir uma lista de todas as colunas que existem no dataframe usando o botão “info ()”Método do dataframe Pandas. Você pode imprimir uma lista das colunas usando o comando abaixo.

Impressão de todas as colunas do dataframe - bancos de dados em python

Figura 2 – Lendo dados de bancos de dados em Python

Como você pode ver na imagem acima, a lista de todas as colunas disponíveis no conjunto de dados é listada junto com os tipos de dados. Todas as strings são representadas como “objeto”Tipo de dados no console, enquanto os campos inteiros e decimais são representados como“int64”E“float64”Respectivamente.

Seguindo em frente, vamos tentar entender quais são os outros parâmetros que podem ser fornecidos ao chamar o “read_sql_table ()”Método do dataframe Pandas.

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br
  • Nome da tabela – Como já mencionado anteriormente, este é um parâmetro obrigatório que dirá ao interpretador python qual tabela ler os dados do banco de dados
  • com – Este também é um argumento obrigatório, que leva o valor do mecanismo usado para se conectar ao banco de dados
  • esquema – Se a tabela da qual você deseja ler os dados estiver em um esquema diferente do padrão, será necessário fornecer o nome do esquema para este parâmetro. Se o nome do esquema não for fornecido, ele pesquisará a tabela no esquema padrão, o que pode não estar correto ou lançará uma exceção, pois a tabela não estará presente no esquema padrão
  • index_col – Isso nos ajuda a criar uma coluna de índice no dataframe do Pandas enquanto lemos os dados de uma tabela SQL. Este índice será criado durante a execução do Python e é independente da coluna do índice na tabela SQL. Você pode mencionar o nome de uma única coluna como uma string ou passar uma lista de strings se quiser que o seu índice seja criado a partir de várias colunas
  • coerce_float – Este é um campo booleano definido como TRUE por padrão. Isso ajuda o dataframe do Pandas a converter automaticamente os campos numéricos do banco de dados em números de ponto flutuante
  • colunas – Este argumento nos permite passar uma lista de nomes de coluna da qual queremos ler os dados. Por padrão, se você não fornecer este parâmetro, o “read_sql_table ()”Método tentará ler todas as colunas da tabela. Isso basicamente gera um “SELECT * FROM nome_tabela;” inquerir. No entanto, quando você fornece uma lista de colunas para este parâmetro, a consulta gerada para ler a tabela será algo como – “SELECT col1, col2 FROM nome_tabela;“. Esta é uma abordagem melhor de buscar dados de tabelas SQL, pois você pode não querer carregar todas as colunas no dataframe no qual não haverá nenhuma análise realizada
  • parse_dates – Este argumento aceita uma lista de colunas que queremos converter como datas ao ler os dados da tabela SQL
Leia Também  What is Oracle ASM to Azure IaaS?

Vamos agora modificar nosso script anterior e passar todos os parâmetros que acabamos de discutir.

Adicionando argumentos opcionais para demonstração - bancos de dados em Python

Figura 3 – Adicionando argumentos opcionais para demonstração

Como você pode ver na figura acima, adicionamos os parâmetros opcionais para selecionar algumas colunas e também fornecemos a coluna de data que deve ser analisada como uma data. Se você olhar para o console abaixo, os tipos de dados agora são claramente exibidos para as datas em oposição ao da Figura-2.

Execução de consultas SQL para ler dados de bancos de dados em Python

Além do que já vimos até agora, há também uma opção para escrever consultas SQL simples e executá-las em uma tabela no banco de dados SQL. Isso pode ser feito com a ajuda do “read_sql ()”Método que está disponível no objeto dataframe do Pandas. Este método é útil quando você deseja ter mais controle sobre os dados que deseja trazer para o ambiente Python. Você também pode juntar várias tabelas na instrução SQL e filtrar a consulta comprar adicionando a cláusula where nela. O resultado final será executado na tabela e os dados serão buscados no ambiente Python.

Vamos agora ver isso em ação.

Execução de consultas para ler dados da tabela SQL - Bancos de dados em Python

Figura 4 – Execução de consultas para ler dados da tabela SQL

Como você pode ver na figura acima, usei o método “read_sql ()”Disponível no objeto Pandas para ler dados da tabela SQL executando um script SQL simples. Você também pode projetar seus scripts escrevendo consultas complexas, como condições de junção entre várias tabelas ou executando subconsultas, etc.

Conclusão

Neste artigo, vimos como trabalhar com bancos de dados em Python usando o módulo Pandas e SQLAlchemy. O Pandas é um módulo de análise de dados popular que ajuda os usuários a lidar com dados estruturados com comandos simples. Usando o dataframe Pandas, você pode carregar dados de arquivos CSV ou qualquer banco de dados no código Python e, em seguida, executar operações nele. Finalmente, depois que sua análise for concluída, você também pode gravar os dados de volta na tabela no banco de dados ou gerar um arquivo simples para armazenar os dados. A conexão aos bancos de dados é feita com a ajuda do plugin SQLAlchemy que nos ajuda a conectar aos bancos de dados em Python enquanto trabalhamos com o módulo Pandas.

Leia Também  Lembrete de integridade das estatísticas do SQL Server - Uma chance do SQLEspresso

Aveek That
Últimos posts de Aveek Das (ver tudo)

cupom com desconto - o melhor site de cupom de desconto cupomcomdesconto.com.br