análise-de-dados

Use esta skill quando o usuário enviar arquivos Excel (.xlsx/.xls) ou CSV e quiser realizar análise de dados, gerar estatísticas, criar resumos, tabelas dinâmicas, consultas SQL ou qualquer forma de exploração estruturada de dados. Suporta pastas de trabalho do Excel com várias planilhas, agregação, filtragem, junções (joins) e exportação de resultados para CSV/JSON/Markdown.

O que é análise-de-dados?

Esta skill permite que agentes de IA analisem arquivos Excel e CSV enviados por usuários usando DuckDB, um mecanismo SQL analítico embutido. Ela oferece inspeção de esquemas, consultas SQL arbitrárias, resumos estatísticos e exportação de resultados, tudo por meio de um único script Python. É particularmente útil para explorar dados estruturados, identificar tendências, gerar relatórios e realizar análises ad-hoc sem a necessidade de ferramentas externas. A skill suporta arquivos grandes, múltiplas planilhas do Excel e junções entre arquivos, tornando-a ideal para cenários como análise de vendas, relatórios financeiros e limpeza de dados. O cache automático de dados acelera consultas repetidas, e a interface é toda baseada em parâmetros de linha de comando, facilitando a integração com assistentes de IA.

Funciona com~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/bytedance/deer-flow/tree/main/skills/public/data-analysis

Installed? Explore more Programação e Desenvolvimento skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

Skill de Análise de Dados

Visão Geral

Esta skill analisa arquivos Excel/CSV enviados pelo usuário usando DuckDB – um mecanismo SQL analítico em processo. Ela suporta inspeção de esquemas, consultas baseadas em SQL, resumos estatísticos e exportação de resultados, tudo por meio de um único script Python.

Capacidades Principais

  • Inspecionar estrutura de arquivos Excel/CSV (planilhas, colunas, tipos, contagens de linhas)
  • Executar consultas SQL arbitrárias contra os dados carregados
  • Gerar resumos estatísticos (média, mediana, desvio padrão, percentis, nulos)
  • Suportar pastas de trabalho do Excel com várias planilhas (cada planilha se torna uma tabela)
  • Exportar resultados de consultas para CSV, JSON ou Markdown
  • Lidar com arquivos grandes de forma eficiente com o mecanismo colunar do DuckDB

Fluxo de Trabalho

Etapa 1: Entender os Requisitos

Quando um usuário enviar arquivos de dados e solicitar análise, identifique:

  • Localização do arquivo: Caminho(s) para os arquivos Excel/CSV em /mnt/user-data/uploads/
  • Objetivo da análise: Quais insights o usuário deseja (resumo, filtragem, agregação, comparação, etc.)
  • Formato de saída: Como os resultados devem ser apresentados (tabela, exportação CSV, JSON, etc.)
  • Você não precisa verificar a pasta em /mnt/user-data

Etapa 2: Inspecionar a Estrutura do Arquivo

Primeiro, inspecione o arquivo enviado para entender seu esquema:

python /mnt/skills/public/data-analysis/scripts/analyze.py \
  --files /mnt/user-data/uploads/data.xlsx \
  --action inspect

Isso retorna:

  • Nomes das planilhas (para Excel) ou nome do arquivo (para CSV)
  • Nomes das colunas, tipos de dados e contagens de não nulos
  • Contagem de linhas por planilha/arquivo
  • Dados de exemplo (primeiras 5 linhas)

Etapa 3: Realizar a Análise

Com base no esquema, construa consultas SQL para responder às perguntas do usuário.

Executar Consulta SQL

python /mnt/skills/public/data-analysis/scripts/analyze.py \
  --files /mnt/user-data/uploads/data.xlsx \
  --action query \
  --sql "SELECT categoria, COUNT(*) as contagem, AVG(valor) as valor_medio FROM Planilha1 GROUP BY categoria ORDER BY contagem DESC"

Gerar Resumo Estatístico

python /mnt/skills/public/data-analysis/scripts/analyze.py \
  --files /mnt/user-data/uploads/data.xlsx \
  --action summary \
  --table Planilha1

Isso retorna para cada coluna numérica: contagem, média, desvio padrão, mínimo, 25%, 50%, 75%, máximo, contagem_nulos. Para colunas de texto: contagem, únicos, valor principal, frequência, contagem_nulos.

Exportar Resultados

python /mnt/skills/public/data-analysis/scripts/analyze.py \
  --files /mnt/user-data/uploads/data.xlsx \
  --action query \
  --sql "SELECT * FROM Planilha1 WHERE valor > 1000" \
  --output-file /mnt/user-data/outputs/resultados-filtrados.csv

Formatos de saída suportados (detectados automaticamente pela extensão):

  • .csv — Valores separados por vírgula
  • .json — Array JSON de registros
  • .md — Tabela Markdown

Parâmetros

ParâmetroObrigatórioDescrição
--filesSimCaminhos separados por espaço para arquivos Excel/CSV
--actionSimUm de: inspect, query, summary
--sqlPara queryConsulta SQL a ser executada
--tablePara summaryNome da tabela/planilha a ser resumida
--output-fileNãoCaminho para exportar resultados (CSV/JSON/MD)

[!NOTE] NÃO leia o arquivo Python, apenas chame-o com os parâmetros.

Regras de Nomenclatura de Tabelas

  • Arquivos Excel: Cada planilha se torna uma tabela com o nome da planilha (ex.: Planilha1, Vendas, Clientes)
  • Arquivos CSV: O nome da tabela é o nome do arquivo sem extensão (ex.: dados.csv → dados)
  • Múltiplos arquivos: Todas as tabelas de todos os arquivos estão disponíveis no mesmo contexto de consulta, permitindo junções entre arquivos
  • Caracteres especiais: Nomes de planilhas/arquivos com espaços ou caracteres especiais são sanitizados automaticamente (espaços → underscores). Use aspas duplas para nomes que começam com números ou contêm caracteres especiais, ex.: "2024_Vendas"

Padrões de Análise

Exploração Básica

-- Contagem de linhas
SELECT COUNT(*) FROM Planilha1

-- Valores distintos em uma coluna
SELECT DISTINCT categoria FROM Planilha1

-- Distribuição de valores
SELECT categoria, COUNT(*) as contagem FROM Planilha1 GROUP BY categoria ORDER BY contagem DESC

-- Intervalo de datas
SELECT MIN(data_coluna), MAX(data_coluna) FROM Planilha1

Agregação e Agrupamento

-- Receita por categoria e mês
SELECT categoria, DATE_TRUNC('month', data_pedido) as mes,
       SUM(receita) as receita_total
FROM Vendas
GROUP BY categoria, mes
ORDER BY mes, receita_total DESC

-- Top 10 clientes por gasto
SELECT nome_cliente, SUM(valor) as gasto_total
FROM Pedidos GROUP BY nome_cliente
ORDER BY gasto_total DESC LIMIT 10

Junções Entre Arquivos

-- Juntar vendas com informações de clientes de arquivos diferentes
SELECT s.id_pedido, s.valor, c.nome_cliente, c.regiao
FROM vendas s
JOIN clientes c ON s.id_cliente = c.id
WHERE s.valor > 500

Funções de Janela

-- Total acumulado e classificação
SELECT data_pedido, valor,
       SUM(valor) OVER (ORDER BY data_pedido) as total_acumulado,
       RANK() OVER (ORDER BY valor DESC) as classificacao_valor
FROM Vendas

Análise Estilo Tabela Dinâmica

-- Tabela dinâmica: receita mensal por categoria
SELECT categoria,
       SUM(CASE WHEN MES(data) = 1 THEN receita END) as Jan,
       SUM(CASE WHEN MES(data) = 2 THEN receita END) as Fev,
       SUM(CASE WHEN MES(data) = 3 THEN receita END) as Mar
FROM Vendas
GROUP BY categoria

Exemplo Completo

Usuário envia vendas_2024.xlsx (com planilhas: Pedidos, Produtos, Clientes) e pergunta: "Analise meus dados de vendas — mostre os principais produtos por receita e tendências mensais."

Etapa 1: Inspecionar o arquivo

python /mnt/skills/public/data-analysis/scripts/analyze.py \
  --files /mnt/user-data/uploads/vendas_2024.xlsx \
  --action inspect

Etapa 2: Principais produtos por receita

python /mnt/skills/public/data-analysis/scripts/analyze.py \
  --files /mnt/user-data/uploads/vendas_2024.xlsx \
  --action query \
  --sql "SELECT p.nome_produto, SUM(o.quantidade * o.preco_unitario) as receita_total, SUM(o.quantidade) as total_unidades FROM Pedidos o JOIN Produtos p ON o.id_produto = p.id GROUP BY p.nome_produto ORDER BY receita_total DESC LIMIT 10"

Etapa 3: Tendências mensais de receita

python /mnt/skills/public/data-analysis/scripts/analyze.py \
  --files /mnt/user-data/uploads/vendas_2024.xlsx \
  --action query \
  --sql "SELECT DATE_TRUNC('month', data_pedido) as mes, SUM(quantidade * preco_unitario) as receita FROM Pedidos GROUP BY mes ORDER BY mes" \
  --output-file /mnt/user-data/outputs/tendencias-mensais.csv

Etapa 4: Resumo estatístico

python /mnt/skills/public/data-analysis/scripts/analyze.py \
  --files /mnt/user-data/uploads/vendas_2024.xlsx \
  --action summary \
  --table Pedidos

Apresente os resultados ao usuário com explicações claras sobre descobertas, tendências e insights acionáveis.

Exemplo com Múltiplos Arquivos

Usuário envia pedidos.csv e clientes.xlsx e pergunta: "Qual região tem o maior valor médio de pedido?"

python /mnt/skills/public/data-analysis/scripts/analyze.py \
  --files /mnt/user-data/uploads/pedidos.csv /mnt/user-data/uploads/clientes.xlsx \
  --action query \
  --sql "SELECT c.regiao, AVG(p.valor) as valor_medio_pedido, COUNT(*) as quantidade_pedidos FROM pedidos p JOIN Clientes c ON p.id_cliente = c.id GROUP BY c.regiao ORDER BY valor_medio_pedido DESC"

Manipulação da Saída

Após a análise:

  • Apresente os resultados das consultas diretamente na conversa como tabelas formatadas
  • Para resultados grandes, exporte para um arquivo e compartilhe usando a ferramenta present_files
  • Sempre explique as descobertas em linguagem simples com os principais pontos
  • Sugira análises de acompanhamento quando os padrões forem interessantes
  • Ofereça-se para exportar os resultados se o usuário quiser mantê-los

Cache

O script armazena em cache automaticamente os dados carregados para evitar reanalisar arquivos a cada chamada:

  • No primeiro carregamento, os arquivos são analisados e armazenados em um banco de dados DuckDB persistente em /mnt/user-data/workspace/.data-analysis-cache/
  • A chave do cache é um hash SHA256 de todo o conteúdo dos arquivos de entrada — se os arquivos mudarem, um novo cache é criado
  • Chamadas subsequentes com os mesmos arquivos usarão o banco de dados em cache diretamente (inicialização quase instantânea)
  • O cache é transparente — nenhum parâmetro extra é necessário

Isso é especialmente útil ao executar várias consultas contra os mesmos arquivos de dados (inspecionar → consultar → resumir).

Notas

  • DuckDB suporta SQL completo, incluindo funções de janela, CTEs, subconsultas e agregações avançadas
  • Colunas de data do Excel são analisadas automaticamente; use funções de data do DuckDB (DATE_TRUNC, EXTRACT, etc.)
  • Para arquivos muito grandes (100MB+), o DuckDB lida com eles eficientemente sem carregar tudo na memória
  • Nomes de colunas com espaços são acessíveis usando aspas duplas: "Nome da Coluna"

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

academic-paper-review

Use this skill when the user requests to review, analyze, critique, or summarize academic papers, research articles, preprints, or scientific publications. Supports comprehensive structured reviews covering methodology assessment, contribution evaluation, literature positioning, and constructive feedback generation. Trigger on queries involving paper URLs, uploaded PDFs, arXiv links, or requests like "review this paper", "analyze this research", "summarize this study", or "write a peer review".

bootstrap

Generate a personalized SOUL.md through a warm, adaptive onboarding conversation. Trigger when the user wants to create, set up, or initialize their AI partner's identity — e.g., "create my SOUL.md", "bootstrap my agent", "set up my AI partner", "define who you are", "let's do onboarding", "personalize this AI", "make you mine", or when a SOUL.md is missing. Also trigger for updates: "update my SOUL.md", "change my AI's personality", "tweak the soul".

bytedance/academic-paper-review

Use this skill when the user requests to review, analyze, critique, or summarize academic papers, research articles, preprints, or scientific publications. Supports comprehensive structured reviews covering methodology assessment, contribution evaluation, literature positioning, and constructive feedback generation. Trigger on queries involving paper URLs, uploaded PDFs, arXiv links, or requests like "review this paper", "analyze this research", "summarize this study", or "write a peer review".

bytedance/chart-visualization

This skill should be used when the user wants to visualize data. It intelligently selects the most suitable chart type from 26 available options, extracts parameters based on detailed specifications, and generates a chart image using a JavaScript script.

bytedance/claude-to-deerflow

Interact with DeerFlow AI agent platform via its HTTP API. Use this skill when the user wants to send messages or questions to DeerFlow for research/analysis, start a DeerFlow conversation thread, check DeerFlow status or health, list available models/skills/agents in DeerFlow, manage DeerFlow memory, upload files to DeerFlow threads, or delegate complex research tasks to DeerFlow. Also use when the user mentions deerflow, deer flow, or wants to run a deep research task that DeerFlow can handle.

bytedance/consulting-analysis

Use this skill when the user requests to generate, create, or write professional research reports including but not limited to market analysis, consumer insights, brand analysis, financial analysis, industry research, competitive intelligence, investment due diligence, or any consulting-grade analytical report. This skill operates in two phases — (1) generating a structured analysis framework with chapter skeleton, data query requirements, and analysis logic, and (2) after data collection by other skills, producing the final consulting-grade report with structured narratives, embedded charts, and strategic insights.

bytedance/data-analysis

Use this skill when the user uploads Excel (.xlsx/.xls) or CSV files and wants to perform data analysis, generate statistics, create summaries, pivot tables, SQL queries, or any form of structured data exploration. Supports multi-sheet Excel workbooks, aggregation, filtering, joins, and exporting results to CSV/JSON/Markdown.

bytedance/deep-research

Use this skill instead of WebSearch for ANY question requiring web research. Trigger on queries like "what is X", "explain X", "compare X and Y", "research X", or before content generation tasks. Provides systematic multi-angle research methodology instead of single superficial searches. Use this proactively when the user's question needs online information.

bytedance/find-skills

Helps users discover and install agent skills when they ask questions like "how do I do X", "find a skill for X", "is there a skill that can...", or express interest in extending capabilities. This skill should be used when the user is looking for functionality that might exist as an installable skill.

bytedance/frontend-design

Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, artifacts, posters, or applications (examples include websites, landing pages, dashboards, React components, HTML/CSS layouts, or when styling/beautifying any web UI). Generates creative, polished code and UI design that avoids generic AI aesthetics.

bytedance/github-deep-research

Conduct multi-round deep research on any GitHub Repo. Use when users request comprehensive analysis, timeline reconstruction, competitive analysis, or in-depth investigation of GitHub. Produces structured markdown reports with executive summaries, chronological timelines, metrics analysis, and Mermaid diagrams. Triggers on Github repository URL or open source projects.

bytedance/image-generation

Use this skill when the user requests to generate, create, imagine, or visualize images including characters, scenes, products, or any visual content. Supports structured prompts and reference images for guided generation.

bytedance/podcast-generation

Use this skill when the user requests to generate, create, or produce podcasts from text content. Converts written content into a two-host conversational podcast audio format with natural dialogue.

bytedance/ppt-generation

Use this skill when the user requests to generate, create, or make presentations (PPT/PPTX). Creates visually rich slides by generating images for each slide and composing them into a PowerPoint file.

bytedance/skill-creator

Create new skills, modify and improve existing skills, and measure skill performance. Use when users want to create a skill from scratch, edit, or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy.

bytedance/surprise-me

Create a delightful, unexpected "wow" experience for the user by dynamically discovering and creatively combining other enabled skills. Triggers when the user says "surprise me" or any request expressing a desire for an unexpected creative showcase. Also triggers when the user is bored, wants inspiration, or asks for "something interesting".

bytedance/vercel-deploy

Deploy applications and websites to Vercel. Use this skill when the user requests deployment actions such as "Deploy my app", "Deploy this to production", "Create a preview deployment", "Deploy and give me the link", or "Push this live". No authentication required - returns preview URL and claimable deployment link.

bytedance/video-generation

Use this skill when the user requests to generate, create, or imagine videos. Supports structured prompts and reference image for guided generation.

bytedance/web-design-guidelines

Review UI code for Web Interface Guidelines compliance. Use when asked to "review my UI", "check accessibility", "audit design", "review UX", or "check my site against best practices".

chart-visualization

This skill should be used when the user wants to visualize data. It intelligently selects the most suitable chart type from 26 available options, extracts parameters based on detailed specifications, and generates a chart image using a JavaScript script.

Habilidades Relacionadas