data-analysis-report

👤 眰恦💫 📦 v1.1.0 ⭐ 4.5 ⬇️ 134 下载
📊 数据分析 免费

📖 技能介绍


name: data-analysis-report description: "Produce report-ready data analysis documents from data tables in the current folder or from specific files provided by the user. This skill should be used when the user wants to create a presentable data analysis report based on Excel/CSV/JSON tables in the workspace or attached files — scenarios like 基于这些表做一份分析报告, 帮我做个汇报分析, 分析一下文件夹里的数据, 分析这几个文件, 做个数据汇报. The skill follows a disciplined workflow: scan all tables, confirm scope and time range with the user before analyzing, identify the top 3 biggest fluctuations with plain-language explanations, and produce a traceable report where every conclusion can be verified against the original data." agent_created: true


Data Analysis Report

Overview

Produce a report-ready data analysis document from data tables — either all data files in the current folder, or specific files the user provides/attaches. The report is structured so the user can take it directly to a presentation: a one-screen conclusion summary, followed by detail tables and a "needs manual confirmation" list.

Core principles: - Traceability: every number must be traceable to a specific cell in the original data. - No fabrication: when uncertain, leave blank and flag — never make up numbers. - Confirm before analyzing: always confirm scope and time range with the user first.

When to Use

Trigger this skill when the user wants to: - Create a data analysis report from tables in the current folder - Create a data analysis report from specific files they provide or attach - Generate a presentable/hand-off analysis based on local data files - Analyze data tables and produce a report-ready summary

Typical user phrasings: - "基于当前文件夹里的数据表,做一份分析报告" - "分析一下这几个文件,出个报告" - "帮我做个能拿去汇报的数据分析" - "分析一下这些表,出个报告" - "做个数据汇报"

Data Source

The skill accepts data from either: - A directory: scan all supported data files in the folder (recursive) - Specific files: one or more individual files the user points to or attaches - Mixed: a combination of directories and individual files

Determine the data source at the start of Phase 1: - If the user mentions a folder/directory, scan that directory. - If the user mentions or attaches specific files, scan those files directly. - If the user says "当前文件夹" or doesn't specify, scan the current workspace directory. - If unclear, ask the user which files or folder to use.

Supported Data Formats

  • Excel: .xlsx, .xls
  • CSV/TSV: .csv, .tsv
  • JSON: .json
  • Other tabular formats: attempt to read; if unsupported, flag in the scan output

Workflow

Phase 1: Scan — Understand the Data Landscape

  1. Determine the data source (see "Data Source" section above):
  2. Directory path, specific file path(s), or the current workspace.

  3. Run the scan script to get a comprehensive overview of all data files: ```bash # Scan a directory "" "C:\Users\86176.workbuddy\skills\data-analysis-report\scripts\scan_tables.py" ""

# Scan specific files "" "C:\Users\86176.workbuddy\skills\data-analysis-report\scripts\scan_tables.py" "" ""

# Mixed: directory + files "" "C:\Users\86176.workbuddy\skills\data-analysis-report\scripts\scan_tables.py" "" "" `` Replace` with the managed Python path. Replace the path arguments with the actual directory or file paths identified in step 1.

  1. If pandas is not installed, install it first: bash "<managed-python>" -m pip install pandas openpyxl xlrd

  2. Read the scan output carefully. Understand:

  3. What tables exist and their formats
  4. Column names and data types
  5. Row counts (data volume)
  6. Date ranges (time scope of the data)
  7. Numeric column statistics (min, max, mean, sum)
  8. Sample rows (data content and quality)

  9. If the scan script fails or data is complex, manually read key files to supplement understanding. Use the Read tool for JSON, or run Python snippets for Excel/CSV.

Phase 2: Confirm Scope — Do NOT Skip This Step

Before any analysis, present findings to the user and confirm:

  1. Table inventory: list all data files found, with row counts and key columns.
  2. Time range: state the date range detected in the data, ask if this is the analysis period.
  3. Metrics & dimensions: identify which columns are metrics (数值) vs dimensions (维度), ask the user which ones matter for this report.
  4. Analysis focus: ask what the user cares about most — revenue trend, cost breakdown, growth rate, anomaly detection, etc.
  5. Reporting context: who is the audience? What is the purpose? This affects the level of detail and language.

Present this as a clear summary and wait for user confirmation. Use AskUserQuestion if multiple options need to be selected. Do not proceed to Phase 3 until the user confirms the scope.

Example confirmation message:

我扫描了数据文件,发现以下数据表:

1. 销售明细.xlsx — 3个Sheet,共12,450行,时间范围 2024-01-01 ~ 2024-09-30
2. 客户清单.csv — 320行
3. 退货记录.csv — 156行,时间范围 2024-06-01 ~ 2024-09-30

可分析的指标:营收、订单数、客单价、退货率
可拆解的维度:地区、品类、渠道、客户

请确认:
1. 分析时间范围是否为 2024-07-01 ~ 2024-09-30(Q3)?
2. 重点关注的指标是什么?
3. 报告受众是谁?

Phase 3: Analyze — Find the Top 3 Fluctuations

After scope confirmation:

  1. Calculate changes: compute period-over-period (环比) or year-over-year (同比) changes for all key metrics. Use Python/pandas for accuracy.

  2. Rank fluctuations: sort by absolute change magnitude (percentage or absolute, whichever is more meaningful for the metric). Pick the top 3.

  3. For each of the top 3 fluctuations, determine:

  4. What happened: the metric, the direction (up/down), the magnitude (actual numbers: before → after, plus percentage change).

    本技能来自小葱技能站7w4.net。

  5. When it happened: which time period showed the biggest change.
  6. Where it concentrated: break down by available dimensions (region, category, channel, etc.) to see if the fluctuation is concentrated in a specific segment.
  7. Possible why: based ONLY on data evidence — e.g., a specific dimension changed, a specific time point had an anomaly, a correlated metric moved. Clearly label as "基于数据推断" (data-based inference). Do NOT speculate beyond what the data shows.

  8. Record data sources for every number: file name, sheet name, column, row range. This is mandatory for traceability.

  9. Quality check: if any number cannot be traced to a specific data point, or if data is missing/ambiguous, add it to the "需人工确认" list. Do not include untraceable numbers in the main conclusions.

Phase 4: Produce Report — Ask for Format, Then Generate

  1. Ask the user for output format if not already clear from context:
  2. Word (.docx): for formal reports, editable, clear pagination
  3. HTML: for browser viewing, flexible layout, supports table highlighting
  4. Markdown (.md): lightweight, universal, easy to convert

  5. Generate the report following the structure in references/output_format.md. Load that reference file for the detailed format specification.

The report has four sections: - 结论摘要 (one screen): 3-5 bullet points, each with fact + possible cause - Top 3 波动分析: detailed analysis of each fluctuation - 明细表: supporting data tables with source citations - 需人工确认清单: items that need manual verification

  1. Verify traceability: before finalizing, check that every number in Sections 1 and 2 has a source citation. Move any unverifiable numbers to Section 4.

  2. One-screen check: ensure Section 1 fits on one screen (approximately 15-20 lines). If it doesn't, condense — merge similar points, remove redundant detail.

  3. Save the report to the workspace directory and present it to the user.

Quality Rules (Non-Negotiable)

  1. Every conclusion must be traceable: cite file name, sheet, column, and row range.
  2. Never fabricate numbers: if data is missing or uncertain, leave blank and add to the "需人工确认" list.
  3. Separate facts from inferences: "发生了什么" = data facts; "可能原因" = data-based inferences, clearly labeled.
  4. Use actual numbers, not vague qualifiers: write "下降23%(¥1.2M → ¥0.92M)", not "大幅下降".
  5. Stay within confirmed scope: do not analyze tables or time periods the user did not confirm.
  6. Acceptance-ready: the user will spot-check 2-3 conclusions against the original data. Every conclusion must hold up under this check.

Resources

scripts/scan_tables.py

Automated data table scanner. Accepts one or more paths — directories (scanned recursively) or individual files. Run it at the start of Phase 1 to get a structured overview of all data files. Outputs: file names, formats, sheet names, columns, row counts, data types, date ranges, numeric column statistics, and sample rows.

references/output_format.md

Detailed specification for the report document structure. Load this file before generating the report in Phase 4. Contains: section structure, formatting rules, number formatting, traceability requirements, and examples.

🤖 AI 评测

这个Skill质量中等偏上,能从Excel、CSV等表格数据中自动生成分析报告,包含关键波动分析和数据明细表,并会标注需要人工核实的数据项。但它依赖数据格式规范,路径配置可能存在问题,且没有经过充分测试。建议先用简单数据文件试用,确认能正常运行后再用于正式场景。

📊 多维度评分

适应性4.4
规范性4.2
有效性4.7
可靠性4.4
可信度5

📁 包含文件 (3 个)

📄 SKILL.md 9.7 KB
📄 references/output_format.md 4.4 KB
📄 scripts/scan_tables.py 15.9 KB