Guia simples de Análise de Dados com Pandas e Altair

Uma breve análise das músicas coletadas do Spotify

Pandas é uma biblioteca de análise e manipulação de dados altamente popular em Python. Contém inúmeras funções e métodos para análise eficiente de dados. Embora o Pandas ofereça algumas visualizações básicas, uma biblioteca de visualização de dados é mais preferível para criar visualizações de dados avançadas e versáteis.

Altair e Pandas

Existem muitas bibliotecas de visualização de dados para Python, como Matplotlib, Seaborn e Altair. Neste artigo, usaremos altair junto com Pandas para analisar um conjunto de dados de músicas coletadas da API do Spotify.

Altair é uma biblioteca de visualização estatística. Sua sintaxe é limpa e fácil de entender como veremos nos exemplos a seguir. Altair é altamente flexível em termos de transformações de dados, o que torna a biblioteca ainda mais eficiente para análise exploratória de dados.

Vamos começar com a importação das bibliotecas e a leitura do conjunto de dados em um DataFrame pandas.

O conjunto de dados (data_by_year) contém vários recursos que explicam as características das músicas de 1921 a 2020.

Faremos algumas modificações nos dados.

  • dropar as colunas “mode” e “key”
  • Converter a coluna de “duration_ms” de milissegundos em segundos e renomeando-a em “duration_s”
  • Arredondar os números de pontos flutuantes até dois pontos decimais

Uma ação típica seria verificar a tendência de um recurso (variável) ao longo do período de 1921 e 2020. Assim, começaremos com a criação de um gráfico de linha.

Eu coloquei cada passo em uma linha separada para enfatizar as operações em cadeia. O primeiro passo é criar um objeto Gráfico de nível superior. Os dados são passados para o objeto Gráfico.

Na segunda linha, selecionamos o tipo de visualização (por exemplo, mark_circle, mark_line e assim por diante).

A função de codificação encode especifica o que plotar no dataframe dado. Assim, qualquer coisa que escrevemos na função de codificação deve estar vinculada ao dataframe.

Finalmente, a função propriedades pode ser usada para personalizar o plot gerado.

A duração das canções parece flutuar até 1970. Em seguida, observamos uma tendência mais estável até 2015, que é seguida por uma queda relativamente abrupta.

O gráfico pode ficar melhor se não tiver todo o espaço livre no eixo y. A faixa do eixo começa de zero por padrão, mas podemos ajustá-la

Para ajustar a escala em um eixo, podemos especificar as colunas na função de codificação conforme abaixo:

A plotagem parece mais atraente agora.

Podemos ter vários plots em uma única visualização. Altair é bastante flexível em termos de como combinar subplots.

O código acima cria dois gráficos de linha e as combina. O sinal de &coloca as tramas em cima uma da outra. O sinal de “|” combina as tramas lado a lado.

Parece que a danceability aumenta durante o período em que a acústica tende a cair.

A distribuição de uma variável numérica nos dá uma visão geral de como os valores são espalhados. Um tipo de visualização para verificar a distribuição é o histograma.

Vamos criar um histograma da coluna tempo.

Os argumentos na função de codificação indicam que a coluna tempo será dividida em bins e o número de observações em cada bins será contado.

Parece que a variável tempo pode ser convertida em uma variável categórica que contém 3 categorias. Pandas tem a função cut para tais tarefas.

A função cut divide automaticamente os valores em intervalos discretos com base no número dado de lixeiras. No entanto, também podemos selecionar manualmente as faixas de valor para lixeiras.

Por exemplo, usaríamos o seguinte argumento para o parâmetro de bins para selecionar manualmente os intervalos.

Outro tipo informativo de visualização é o gráfico de dispersão. É usado principalmente para investigar a relação entre duas variáveis numéricas.

Por exemplo, podemos comparar as colunas de energia e vida. Além disso, podemos usar a coluna tempo como separador de pontos de dados.

Uma observação óbvia é que as colunas de energia e tempo estão altamente correlacionadas. Os pontos de dados que pertencem à classe de alto tempo têm alta energia.

Revelamos algumas descobertas sobre as músicas de 1921 a 2020. Algumas medidas de características da música mudaram ao longo do tempo.

O foco principal deste artigo é a prática da análise e visualização de dados com Pandas e Altair. Há, é claro, muito mais que possamos fazer neste conjunto de dados.

Obrigado.

Composing a repository of books (i bought), authors (i follow) & blogs (direct ones) for my own understanding.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store