Skip to content
PYGWALKER
PyGWalker

PyGWalker

Uma Biblioteca Python para Análise Exploratória de Dados com Visualização - PyGWalker

O PyGWalker pode simplificar seu fluxo de trabalho de análise de dados e visualização de dados no Jupyter Notebook, transformando seu dataframe do pandas em uma interface de usuário interativa para exploração visual.

O PyGWalker (pronunciado como "Pig Walker", apenas por diversão) é nomeado como uma abreviação de "Python Graphic Walker". Ele integra o Jupyter Notebook com o Graphic Walker (opens in a new tab), uma alternativa de código aberto ao Tableau. Isso permite que cientistas de dados visualizem / limpem / anotem os dados com operações simples de arrastar e soltar e até mesmo consultas em linguagem natural.

Visite o Google Colab (opens in a new tab), Kaggle Code (opens in a new tab) ou Demo Online do Graphic Walker (opens in a new tab) para testá-lo!

Se você prefere usar R, confira o GWalkR (opens in a new tab), o wrapper R do Graphic Walker.

Começando

Execute no Kaggle (opens in a new tab)Execute no Colab (opens in a new tab)
Kaggle Code (opens in a new tab)Google Colab (opens in a new tab)

Configurando o pygwalker

Antes de usar o pygwalker, certifique-se de instalar os pacotes via linha de comando usando pip ou conda.

pip

pip install pygwalker

Observação

Para um teste inicial, você pode instalar com pip install pygwalker --upgrade para manter sua versão atualizada com o último lançamento ou até pip install pygwalker --upgrade --pre para obter os últimos recursos e correções de bugs.

Conda-forge

conda install -c conda-forge pygwalker

ou

mamba install -c conda-forge pygwalker

Consulte o conda-forge feedstock (opens in a new tab) para obter mais ajuda.

Usando pygwalker no Jupyter Notebook

Início Rápido

Importe pygwalker e pandas em seu Jupyter Notebook para começar.

import pandas as pd
import pygwalker as pyg

Você pode usar o pygwalker sem interromper seu fluxo de trabalho existente. Por exemplo, você pode chamar o PyGWalker com o dataframe carregado desta forma:

df = pd.read_csv('./bike_sharing_dc.csv')
walker = pyg.walk(df)

É isso. Agora você tem uma interface de usuário interativa para analisar e visualizar dados com operações simples de arrastar e soltar.

Coisas interessantes que você pode fazer com o PyGWalker:

  • Você pode alterar o tipo de marca em outros para criar gráficos diferentes, por exemplo, um gráfico de linha: graphic walker line chart

  • Para comparar diferentes medidas, você pode criar uma visualização concatenada adicionando mais de uma medida em linhas/colunas. graphic walker area chart

  • Para fazer uma visualização das facetas de várias subvisualizações divididas pelo valor na dimensão, coloque as dimensões em linhas ou colunas para criar uma visualização em facetas. graphic walker scatter chart

  • PyGWalker contém uma tabela de dados poderosa, que fornece uma visualização rápida dos dados e sua distribuição, perfil. Você também pode adicionar filtros ou alterar os tipos de dados na tabela.

pygwalker-data-preview
  • Você pode salvar o resultado da exploração de dados em um arquivo local

Melhores Práticas

Existem alguns parâmetros importantes que você deve conhecer ao usar o pygwalker:

  • spec: para salvar/carregar a configuração do gráfico (string JSON ou caminho do arquivo)
  • kernel_computation: para usar o duckdb como mecanismo de cálculo, o que permite lidar com conjuntos de dados maiores mais rapidamente em sua máquina local.
  • kernel_computation: Obsoleto, use kernel_computation em seu lugar.
df = pd.read_csv('./bike_sharing_dc.csv')
walker = pyg.walk(
    df,
    spec="./chart_meta_0.json",    # este arquivo JSON salvará o estado do seu gráfico, você precisa clicar no botão de salvar na interface do usuário manualmente quando terminar um gráfico, 'autosave' será suportado no futuro.
    kernel_computation=True,          # defina `kernel_computation=True`, o pygwalker usará o duckdb como mecanismo de cálculo, ele permite que você explore conjuntos de dados maiores (<=100GB).
)

Exemplo em notebook local

Exemplo em notebook na nuvem

Use pygwalker no Streamlit

O Streamlit permite hospedar uma versão web do pygwalker sem precisar entender detalhes de como funciona a aplicação web.

Aqui estão alguns exemplos de aplicativos construídos com pygwalker e streamlit:

(opens in a new tab)

from pygwalker.api.streamlit import StreamlitRenderer
import pandas as pd
import streamlit as st
 
# Ajuste a largura da página do Streamlit
st.set_page_config(
    page_title="Usar Pygwalker no Streamlit",
    layout="wide"
)
 
# Adicionar Título
st.title("Usar Pygwalker no Streamlit")
 
# Você deve armazenar em cache seu renderizador do pygwalker para evitar que sua memória exploda
@st.cache_resource
def get_pyg_renderer() -> "StreamlitRenderer":
    df = pd.read_csv("./bike_sharing_dc.csv")
    # Se deseja usar o recurso de salvar a configuração do gráfico, defina `spec_io_mode="rw"`
    return StreamlitRenderer(df, spec="./gw_config.json", spec_io_mode="rw")
 
 
renderer = get_pyg_renderer()
 
renderer.explorer()

Referência da API (opens in a new tab)

pygwalker.walk (opens in a new tab)

ParâmetroTipoPadrãoDescrição
datasetUnion[DataFrame, Connector]-O dataframe ou conector a ser usado.
gidUnion[int, str]NoneID para a div do container do GraphicWalker, formatado como gwalker-\{gid\}.
envLiteral['Jupyter', 'JupyterWidget']'JupyterWidget'Ambiente usando pygwalker.
field_specsOptional[Dict[str, FieldSpec]]NoneEspecificações de campos. Serão inferidos automaticamente do dataset se não especificados.
hide_data_source_configboolTrueSe Verdadeiro, oculta o botão de importação e exportação de fonte de dados.
theme_keyLiteral['vega', 'g2']'g2'Tipo de tema para o GraphicWalker.
appearanceLiteral['media', 'light', 'dark']'media'Configuração de tema. 'media' detectará automaticamente o tema do sistema operacional.
specstr""Dados de configuração do gráfico. Pode ser um ID de configuração, JSON ou URL de arquivo remoto.
use_previewboolTrueSe Verdadeiro, usa a função de visualização.
kernel_computationboolFalseSe Verdadeiro, usa cálculo do kernel para os dados.
**kwargsAny-Argumentos de palavras-chave adicionais.

Ambientes Testados

  • Jupyter Notebook
  • Google Colab
  • Kaggle Code
  • Jupyter Lab
  • Jupyter Lite
  • Databricks Notebook (Desde a versão 0.1.4a0)
  • Extensão Jupyter para Visual Studio Code (Desde a versão 0.1.4a0)
  • A maioria das aplicações web compatíveis com kernels IPython. (Desde a versão 0.1.4a0)
  • Streamlit (Desde a versão 0.1.4.9), habilitado com pyg.walk(df, env='Streamlit')
  • DataCamp Workspace (Desde a versão 0.1.4a0)
  • Projetos Hex
  • ...sinta-se à vontade para relatar um problema para mais ambientes.

Configuração e Política de Privacidade (pygwalker >= 0.3.10)

Você pode usar pygwalker config para definir sua configuração de privacidade.

$ pygwalker config --help
 
uso: pygwalker config [-h] [--set [chave=valor ...]] [--reset [chave ...]] [--reset-all] [--list]
 
Modificar arquivo de configuração. (padrão: ~/Library/Application Support/pygwalker/config.json) 
Configurações disponíveis:
 
- privacidade  ['offline','update-only','events'] (padrão: events).
    "offline": totalmente offline, nenhum dado é enviado ou api é solicitada
    "update-only": somente verifica se  uma nova versão do pygwalker para atualizar
    "events": compartilhe quais eventos sobre quais recursos são usados no pygwalker, ele contém apenas dados de eventos sobre quais recursos você acessa para otimização do produto. NENHUM DADO DE ANÁLISE É ENVIADO. Os dados de eventos serão relacionados a um ID exclusivo, que é gerado pelo pygwalker quando instalado com base no carimbo de data e hora. Não coletaremos nenhuma outra informação sobre você.
    
- kanaries_token  ['seu token kanaries'] (padrão: string vazia).
    seu token kanaries, você pode obtê-lo em https://kanaries.net.
    consulte: https://space.kanaries.net/t/how-to-get-api-key-of-kanaries.
    com o token kanaries, você pode usar o serviço da kanaries no pygwalker, como compartilhar gráficos, compartilhar configurações.
    
 
opções:
  -h, --help            mostrar esta mensagem de ajuda e sair
  --set [chave=valor ...]
                        Definir configuração. por exemplo "pygwalker config --set privacidade=update-only"
  --reset [chave ...]   Redefinir a configuração do usuário e usar os valores padrão. por exemplo "pygwalker config --reset privacidade"
  --reset-all           Redefinir todas as configurações do usuário e usar os valores padrão. por exemplo "pygwalker config --reset-all"
  --list                Listar a configuração atualmente utilizada.

Para mais detalhes, consulte: Como definir sua configuração de privacidade? (opens in a new tab)

Licença

Licença Apache 2.0 (opens in a new tab)

Recursos

PyGWalker Cloud foi lançado! Agora você pode salvar seus gráficos na nuvem, publicar a célula interativa como um aplicativo web e usar recursos avançados alimentados pelo GPT. Confira o PyGWalker Cloud (opens in a new tab) para mais detalhes.