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.

7w4.net小蔥技能站,你的AI助手技能庫。

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).
  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