Matplotlib e o Excel com Python para projetos de Data Science

Matplotlib e o Excel com Python para projetos de Data Science

Nos últimos anos, o campo de Data Science tem experimentado um crescimento exponencial, impulsionado pela abundância de dados disponíveis e pela necessidade de extrair informações valiosas desses dados.

Uma das ferramentas mais populares atualmente para salvar informações é o Excel, com ela você pode manualmente separar os dados em tabelas contendo diferentes linhas e colunas. Para plotar esses dados em gráficos, pode ser utilizado o próprio Excel de forma manual ou outra ferramenta bastante versátil que é a biblioteca Matplotlib.

Neste artigo, falaremos como manipular ambos utilizando a linguagem Python, a fim de automatizar o fluxo de dados.

Matplotlib

A instalação e os primeiros passos com o Matplotlib são simples e diretos. Para começar é necessário ter o Python instalado no seu computador. Em seguida, você pode instalar a biblioteca utilizando o gerenciador de pacotes do Python, como o pip, digitando o seguinte comando no terminal:


Após a instalação, você poderá importar a biblioteca no seu código e começar a explorar suas funcionalidades. Para criar um gráfico simples, basta utilizar a função plot(), passando como argumento um array contendo os valores do eixo Y e outro contendo os valores do eixo X:


Esse código criará um gráfico linear, por padrão, será um gráfico branco com uma linha azul, mas você pode mudar o estilo da linha passando o parâmetro linestyle que pode ser uma linha contínua ‘solid’, em forma de pontos ‘dotted’, traços ‘dashed’ ou ainda uma mistura de pontos e traços ‘dashdot’:


Outros parâmetros de estilo que podem ser alterados é a cor e espessura da linha. A cor é dada pelo parâmetro color e é uma string de uma cor em inglês, enquanto a espessura é o linewidth, que é um valor inteiro:


Para visualizar mais facilmente onde cada dado está, utilize o parâmetro “marker” para adicionar um marcador e chame a função grid() que criará linhas horizontais e verticais:


Linhas horizontais e verticais também podem ser adicionadas em pontos específicos com as funções axhline e axvline respectivamente:


Múltiplas linhas podem ser plotadas apenas chamando novamente a função plot() e passando os valores de X e Y. Para diferenciar cada uma delas mais facilmente, podemos adicionar legendas passando o nome correspondente ao que cada linha significa para o parâmetro label:


Só com essas informações já podemos, por exemplo, plotar o gráfico de Levey-Jennings, muito utilizado por laboratórios de análises clínicas para fazer o controle de qualidade. Ele consiste em colocar o valor da concentração do controle de um determinado exame em função do tempo, também tem linhas horizontais que representam a média e o desvio padrão somado com a média.

Através da análise dos padrões criados no gráfico, que são determinados pelas regras de Westgard, podemos prever se houve um erro aleatório ou sistemático e tomar ações para corrigir.


O título você coloca com a função “title” e as legendas do eixo X e Y com as funções xlabel e ylabel, respectivamente:


Por padrão, o matplotlib coloca nos ticks dos eixos apenas alguns dos valores dentro das listas, mas dá para mudar e colocar os valores desejados com a função xticks, neste exemplo é necessário ter os dias no eixo X para correlacionar com a concentração obtida, então basta passar a variável dias na função xticks:

A imagem obtida do gráfico pode ser salva manualmente. Quando a janela do Matplotlib abrir, basta clicar em save the figure e selecionar o local e nome. Ou através do código chamando a função savefig, antes da função show e passando uma string contendo o caminho, o nome da figura e a extensão .png:


Além do gráfico de linha, o Matplotlib também permite plotar diferentes gráficos, como o de barras, círculos, pilhas, pontos e até mesmo gráficos em 3D. Para conferir os que estão disponíveis, você pode acessar o site oficial e ver os exemplos. Outro exemplo de aplicação para o Matplotlib é para quem trabalha com o mercado financeiro, utilizando a biblioteca auxiliar mplfinance, é possível plotar gráficos de Candlestick, com os valores de abertura, fechamento, mínimo e máximo de uma determinada ação em um determinado tempo, conforme o exemplo abaixo:


O Matplotlib ainda permite que múltiplos gráficos sejam plotados em uma mesma figura. Para isso, em vez de utilizar a função plot(), chamamos a função subplots() passando a quantidade de linhas e colunas, seguido de uma tupla para o parâmetro figsize para determinar o tamanho da figura. Essa função retornará a figura e os Axes, que basicamente é uma matriz que é acessada através de índices:


Excel

É essencial para um cientista de dados conhecer o Excel, pois como é uma ferramenta bastante popular, muitas vezes os dados a serem analisados estão nesse formato. Por exemplo, voltando ao caso do gráfico de Levey-Jennings, os dados referentes à concentração da glicose em função do tempo, podem estar vindo de uma máquina automatizada do laboratório, que está retornando os dados em formato Excel. Então, sabendo extrair os dados de forma programada, podemos facilmente criar os gráficos, conforme foi demonstrado no início.

As bibliotecas utilizadas para a manipulação de dados em uma planilha no excel através do python são o Pandas e o Openpyxl, a instalação é feita pelo seguinte comando no terminal:


O primeiro passo agora é importar a biblioteca Pandas, depois podemos criar um dicionário no Python e converter para um dataframe Pandas:


Utilizando a função do dataframe to_excel, é possível transformar um dataframe em uma tabela Excel. O primeiro parâmetro será o nome do arquivo e o index=False vai impedir que o índice gerado por padrão do Pandas seja passado para a tabela. Se o arquivo não existir ainda, ele será criado e se já existir, será sobrescrito:


Para adicionar novas colunas, você pode criar um novo dicionário, com as mesmas chaves do primeiro dataframe, então será feita a conversão para dataframe e concatenará com o dataframe já existente:


Para carregar dados de uma planilha Excel usando o Pandas, podemos utilizar a função read_excel() da biblioteca. Essa função permite ler os dados de uma planilhas específica e convertê-los em um dataframe do Pandas. Veja o exemplo a seguir:


No exemplo acima, usamos a função read_excel() para ler os dados da planilha Planilha1 do arquivo arquivo_dados.xlsx. O parâmetro sheet_name é usado para especificar o nome da planilha que desejamos carregar. Caso não seja especificado, a função carregará a primeira planilha por padrão.

Ao imprimir o dataframe, df, você verá os dados da planilha carregada. Isso permite que você tenha acesso aos valores, colunas e linhas do Excel para análise e manipulação. Além disso, é possível especificar outras opções ao ler uma planilha Excel, como por exemplo:


Nesse exemplo, adicionamos duas opções extras ao carregar os dados da planilha. O parâmetro skiprows permite pular um número específico de linhas a partir do início do arquivo. Já o parâmetro usecols permite selecionar apenas um subconjunto de colunas para carregar, especificando uma lista com os índices das colunas desejadas.

Essas são algumas opções que você pode utilizar ao carregar dados de uma planilha Excel com o Pandas. É importante lembrar de ajustar o caminho e o nome do arquivo conforme o seu caso. Dessa forma, com a biblioteca pandas e a função read_excel(), você pode facilmente carregar dados de uma planilha Excel para realizar análises, visualizações com a biblioteca Matplotlib e manipulações utilizando Python. Essa integração oferece uma flexibilidade para cientistas de dados e profissionais que lidam com dados nesse formato amplamente utilizado.


Conclusão

As bibliotecas Matplotllib e Pandas são uma poderosa combinação de ferramentas para visualização e análise de dados, que podem ser utilizados em diferentes projetos de Data Science, como no exemplo da bioinformática com o gráfico de Levey-Jennings, no mercado financeiro com a biblioteca mplfinance que é uma extensão do Matplotlib ou outros projetos que envolvam inteligência artificial, como é o exemplo da imagem, onde são plotados múltiplos gráficos relacionando a geração com outros parâmetros de uma rede neural em um algoritmo neuroevolutivo.

A integração destas tecnologias é um processo relativamente simples, e seu uso possibilita uma grande versatilidade para personalização de gráficos que podem ser apresentados em artigos científicos, palestras, etc. Outros exemplos de projetos de Data Science incluem análises de vendas dos produtos de uma empresa, monitoramento de métricas de desempenho de aplicativos e análise de dados biológicos, como a expressão de genes ao longo do tempo em um experimento de microarray.

À medida que o campo da ciência de dados avança, a importância de métodos para tratar esses dados fica cada vez mais evidente, dito isso, ao dominar o uso dessas ferramentas, podemos ter diversas oportunidades profissionais surgindo.

💡
As opiniões e comentários expressos neste artigo são de propriedade exclusiva de seu autor e não representam necessariamente o ponto de vista da Revelo.

A Revelo Content Network acolhe todas as raças, etnias, nacionalidades, credos, gêneros, orientações, pontos de vista e ideologias, desde que promovam diversidade, equidade, inclusão e crescimento na carreira dos profissionais de tecnologia.