Um guia para iniciantes em visualização de dados com Python e Seaborn
Início Geral Um guia para iniciantes em visualização de dados com Python e Seaborn
A visualização de dados é uma técnica que permite aos cientistas de dados converter dados brutos em gráficos e gráficos que geram percepções valiosas. Os gráficos reduzem a complexidade dos dados e facilitam o entendimento para qualquer usuário.
Existem muitas ferramentas para realizar a visualização de dados, como Tableau, Power BI, ChartBlocks e mais, que são ferramentas sem código. Eles são ferramentas muito poderosas e têm seu público. No entanto, ao trabalhar com dados brutos que requerem transformação e um bom playground para os dados, o Python é uma excelente escolha.
Embora mais complicado porque requer conhecimento de programação, Python permite que você execute qualquer manipulação, transformação e visualização de seus dados. É ideal para cientistas de dados.
Existem muitos motivos pelos quais Python é a melhor escolha para ciência de dados, mas um dos mais importantes é seu ecossistema de bibliotecas. Muitas bibliotecas excelentes estão disponíveis para Python trabalhar com dados como numpy, pandas, matplotlib, tensorflow.
Matplotlib é provavelmente a biblioteca de plotagem mais reconhecida que existe, disponível para Python e outras linguagens de programação como R. É seu nível de personalização e operabilidade que o definiu em primeiro lugar. No entanto, algumas ações ou personalizações podem ser difíceis de lidar ao usá-lo.
Os desenvolvedores criaram uma nova biblioteca baseada em matplotlib chamada seaborn. Seaborn é tão poderoso quanto matplotlib ao mesmo tempo, fornece uma abstração para simplificar plotagens e trazer alguns recursos exclusivos.
Neste artigo, vamos nos concentrar em como trabalhar com a Seaborn para criar os melhores gráficos da classe. Se quiser acompanhar você pode criar seu próprio projeto ou simplesmente dar uma olhada no meu projeto de guia marítimo no GitHub.
O que é Seaborn?
Seaborn é uma biblioteca para fazer gráficos estatísticos em Python. Ele se baseia em matplotlib e se integra estreitamente com estruturas de dados do pandas .
O design Seaborn permite que você explore e entenda seus dados rapidamente. Seaborn funciona capturando frames inteiros de dados ou arrays contendo todos os seus dados e realizando todas as funções internas necessárias para mapeamento semântico e agregação estatística para converter dados em gráficos informativos.
Ele abstrai a complexidade enquanto permite que você projete seus gráficos de acordo com seus requisitos.
Instalando Seaborn
Instalando seaborn é tão fácil quanto instalar uma biblioteca usando seu gerenciador de pacotes Python favorito. Ao instalar seaborn, a biblioteca instalará suas dependências, incluindo matplotlib, pandas, numpye scipy.
Vamos então instalar o Seaborn e, claro, também o pacote caderno para ter acesso ao nosso parque de dados.
Além disso, vamos importar alguns módulos antes de começar.
Construindo seus primeiros lotes
Antes de começarmos a plotar qualquer coisa, precisamos de dados. A beleza de seaborn é que funciona diretamente com pandas dataframes, tornando-o super conveniente. Ainda mais, a biblioteca vem com alguns conjuntos de dados integrados que agora você pode carregar do código, sem a necessidade de baixar arquivos manualmente.
Vamos ver como isso funciona carregando um conjunto de dados que contém informações sobre voos.
Um gráfico de dispersão é um diagrama que exibe pontos com base em duas dimensões do conjunto de dados. Criar um gráfico de dispersão na biblioteca Seaborn é tão simples e com apenas uma linha de código.
Gráfico de dispersão de amostra
Muito fácil, certo? A função scatterplot espera o conjunto de dados que queremos plotar e as colunas que representam o x e y eixo.
Este gráfico desenha uma linha que representa a revolução de dados contínuos ou categóricos. É um tipo de gráfico popular e conhecido e muito fácil de produzir. Da mesma forma que antes, usamos a função lineplot com o conjunto de dados e as colunas que representam o x e y eixo. Seaborn fará o resto.
Gráfico de linha de amostra
É provavelmente o tipo de gráfico mais conhecido e, como você deve ter previsto, podemos traçar esse tipo de gráfico com seaborn da mesma forma que fazemos para linhas e gráficos de dispersão usando a função barplot.
Gráfico de barra de amostra
É muito colorido, eu sei, aprenderemos a personalizá-lo mais tarde no guia.
Extensão com matplotlib
Seaborn constrói em cima de matplotlib, estendendo sua funcionalidade e abstraindo a complexidade. Com isso dito, ele não limita suas capacidades. Qualquer seaborn gráfico pode ser personalizado usando funções do matplotlib biblioteca. Pode ser útil para operações específicas e permite que os marítimos aproveitem o poder do matplotlib sem ter que reescrever todas as suas funções.
Digamos que você, por exemplo, queira plotar vários gráficos simultaneamente usando seaborn; então você poderia usar o subplot função de matplotlib.
Parcela de amostra com sub-parcelas
Usando o subplot função, podemos desenhar mais de um gráfico em um único gráfico. A função tem três parâmetros, o primeiro é o número de linhas, o segundo é o número de colunas e o último é o número do gráfico.
Estamos renderizando um seaborn gráfico em cada subtrama, misturando matplotlib com seaborn funções.
Seaborn adora pandas
Já falamos sobre isso, mas seaborn O amor é pandas a tal ponto que todas as suas funções são construídas em cima do pandas quadro de dados. Até agora, vimos exemplos de como usar seaborn com dados pré-carregados, mas e se quisermos desenhar um gráfico de dados que já carregamos usando pandas?
Parcela de amostra com pandas
Fazendo lindas plotagens com estilos
O Seaborn oferece a capacidade de alterar a interface de seus gráficos e oferece cinco estilos diferentes prontos para uso: darkgrid, Whitegrid, Sombrio, brancoe carrapatos.
Parcela de amostra com estilo darkgrid
Parcela de amostra com estilo de grade branca
Casos de uso legais
Nós sabemos o básico de seaborn, agora vamos colocá-los em prática criando vários gráficos sobre o mesmo conjunto de dados. No nosso caso, usaremos as "dicas" do conjunto de dados que você pode baixar diretamente usando seaborn.
Primeiro, carregue o conjunto de dados.
Vamos criar uma coluna adicional para o conjunto de dados com a porcentagem que representa o valor da gorjeta sobre o total da conta.
A seguir, podemos começar a traçar alguns gráficos.
Compreender as percentagens de gorjeta
Vamos tentar primeiro entender a distribuição da porcentagem de gorjeta. Para isso, podemos usar histplot que irá gerar um gráfico de histograma.
Compreendendo o gráfico de porcentagens de ponta
Isso é bom, tivemos que personalizar o binwidth para torná-lo mais legível, mas agora podemos avaliar rapidamente nossa compreensão dos dados. A maioria dos clientes daria uma gorjeta entre 15 e 20% e temos alguns casos extremos em que a gorjeta é superior a 70%. Esses valores são anomalias e sempre vale a pena explorá-los para determinar se os valores são erros ou não.
Também seria interessante saber se a porcentagem da gorjeta muda dependendo do momento do dia,
Compreendendo as porcentagens de dicas por gráfico de tempo
Desta vez, carregamos o gráfico com o conjunto de dados completo em vez de apenas uma coluna e, em seguida, definimos a propriedade hue para a coluna time. Isso forçará o gráfico a usar cores diferentes para cada valor de time e adicione uma legenda a ele.
Total de dicas por dia da semana
Outra métrica interessante é saber quanto dinheiro em gorjetas o pessoal pode esperar dependendo do dia da semana.
Compreendendo as porcentagens de ponta por gráfico de dia
Parece que sexta-feira é um bom dia para ficar em casa.
Impacto do tamanho da mesa e dia na ponta
Às vezes, queremos entender como as variáveis ​​funcionam juntas para determinar a saída. Por exemplo, como o dia da semana e o tamanho da mesa afetam a porcentagem da gorjeta?
Para desenhar o próximo gráfico, vamos combinar o pivot função dos pandas para pré-processar as informações e, em seguida, desenhar um gráfico de mapa de calor.
Compreender as porcentagens de ponta por dia e o gráfico do tamanho da tabela
Claro, podemos fazer muito mais com seaborn, e você pode aprender mais casos de uso visitando o documentação oficial. Espero que você tenha gostado deste artigo tanto quanto eu gostei de escrevê-lo.
Artigo anteriorDefendendo a Terra contra asteróides perigosos: perguntas e respostas com Lindley Johnson da NASA