伐謀 - 資料分析工具

👤 zhaom0 📦 v1.0.0 ⭐ 4.4 ⬇️ 2.7K 下載
📊 資料分析 免費

📖 技能介紹


name: data-analysis description: 資料分析技能,用於理解資料、分析資料、製作資料處理流程、彙總資料分析結果。當用戶提到"分析資料"、"資料處理"、"資料探索"、"統計分析"、"資料清洗"、"資料彙總"、"製作資料包告"、"理解這份資料"、"看一下這個CSV/Excel/資料集"時,必須使用此技能。即使使用者只說"幫我看看這個資料"、"分析一下",只要上下文涉及資料檔案或資料集,也應立即觸發此技能。如果在FaMou問題定義過程中涉及到資料分析,也需要呼叫此技能。


資料分析技能

分析目標

資料分析任務的核心目標是:

  1. 理解資料:搞清楚資料是什麼、從哪來、代表什麼業務含義,而不僅僅是讀取檔案
  2. 評估資料質量:識別缺失、重複、異常、格式不一致等問題,判斷資料可信度
  3. 發現規律與洞察:通過統計和探索,找出資料中有意義的模式、趨勢、異常和關聯
  4. 制定處理流程:根據實際資料問題,設計可復現、有依據的清洗和轉換方案
  5. 彙總結果:用清晰、有業務價值的語言輸出結論,不是堆砌統計數字

處理約束

在分析過程中,始終遵守以下約束:

  • 不擅自修改原始資料:任何清洗或轉換操作都要先告知使用者,說明原因,再執行
  • 不過度假設資料含義:列名不清晰時,應向用戶確認,而不是自行猜測
  • 不忽略資料質量問題:發現異常、缺失、不一致時必須明確標註,不能繞過
  • 不強行套用固定流程:資料格式千差萬別,應根據實際情況靈活判斷分析路徑

    本技能來自小蔥技能站7w4.net。

  • 不脫離使用者目標做分析:始終圍繞"使用者想解決什麼問題"來決定分析深度和方向

最佳實踐

先理解,再動手

拿到資料後,優先弄清楚背景:資料的業務場景是什麼?使用者的分析目的是什麼?這決定了哪些列重要、什麼算"異常"、如何處理缺失值。

用業務語言解釋結果

不要只輸出統計數字,要解釋它們的含義。"均值是 3200"不如"平均訂單金額約 3200 元,但中位數僅 1800 元,說明存在少量高額訂單拉高了均值"。

資料質量問題要分級處理

  • 阻斷性問題(如關鍵列全為空、主鍵大量重複):先停下來告知使用者,確認後再繼續
  • 需要決策的問題(如缺失率高、含義不明的異常值):列出處理方案的利弊,讓使用者選擇
  • 輕微問題(如少量格式不一致、空白字元):可直接處理,但要在報告中記錄

處理流程要可解釋

每一步操作都要能回答"為什麼這樣做",例如: - "用中位數填充,因為該列分佈右偏,均值受極值影響大" - "刪除該列,因為缺失率達 78%,無法有效利用"

結論要有資料支撐

每個洞察後面都應該跟上具體數字作為依據,避免主觀判斷。

環境與工具

  • 檔案路徑:上傳的檔案在 /mnt/user-data/uploads/,輸出檔案儲存到 /mnt/user-data/outputs/
  • 中文資料常見編碼問題:優先嚐試 utf-8,失敗則嘗試 gbk / gb18030
  • 圖表中文顯示:設定 matplotlib.rcParams['font.sans-serif'] = ['SimHei', 'DejaVu Sans']
  • 輸出 CSV 供 Excel 開啟時,用 encoding='utf-8-sig' 防止亂碼

分析結果彙總格式

無論分析路徑如何,最終彙總報告應包含:

## 資料分析報告

### 資料概況
(資料規模、來源、時間範圍、核心欄位說明)

### 資料質量
(發現的問題、嚴重程度、已做處理或待確認事項)

### 核心發現
(3-5 條最重要的洞察,每條附資料支撐)

### 處理流程說明
(對資料做了哪些變換,為什麼這樣做)

### 後續建議
(資料改進建議、可深入分析的方向)

示例

以下示例展示了面對不同型別資料時,如何應用上述目標和約束進行分析。

示例 A:電商訂單資料分析

場景:使用者上傳一份訂單 CSV,列包括訂單 ID、下單時間、商品類別、金額、使用者城市、支付狀態,想了解"銷售整體情況"。

分析思路: - 先確認時間範圍,這是銷售分析的基本背景 - 金額列檢查是否有負值(退款?錄入錯誤?)、零值(需要業務解釋) - 支付狀態的分佈決定"有效訂單"的口徑 - 按時間聚合看趨勢,按類別和城市看構成

質量問題處理示例

發現"金額"列有 12 行為負值。在銷售資料中,負值通常代表退款記錄。建議:若分析銷售額,過濾掉負值;若分析淨收入,需要保留。請確認分析目標後再處理。

核心發現示例

  • 3 月銷售額環比增長 34%,主要由"家電"品類驅動(貢獻增量的 61%)
  • 北京和上海合計佔全部訂單量的 47%,但客單價低於二線城市均值 15%
  • 支付失敗率為 8.3%,高於行業參考值(通常 2-5%),建議排查支付鏈路

示例 B:結構混亂的調查問卷資料

場景:使用者上傳一份 Excel,多個 Sheet,列名不統一(有的叫"Q1",有的叫"第一題"),部分單元格合併,有空行空列。

首要步驟:不急於分析,先向使用者說明資料結構問題:

這份檔案包含 3 個 Sheet,結構存在以下問題需要先確認: 1. Sheet1 和 Sheet2 的列名不一致,是同一份問卷的不同批次,還是不同問卷? 2. 第 5-8 行為空行,是否可以刪除? 3. "Q3_其他"列 92% 為空,是開放題填寫率低,還是匯出時出了問題?

確認後我來制定清洗方案。

體現約束:這裡不假設列名含義,不擅自合併 Sheet,先暴露問題等使用者確認。


示例 C:使用者要求"清洗資料並輸出處理後的檔案"

處理流程文件示例(隨輸出檔案一起提供):

資料處理流程記錄
原始檔案:sales_2024.csv(8,412 行 × 15 列)
處理後文件:sales_2024_cleaned.csv(8,203 行 × 13 列)

變更說明:
1. 刪除重複行:移除 89 行完全重複記錄
2. 刪除"備註2"列:缺失率 96%,無有效資訊
3. 刪除"內部編碼"列:使用者確認該列不參與分析
4. 金額列格式統一:將"¥1,200.00"格式轉為數值 1200.0(共 203 行受影響)
5. 日期列標準化:統一轉為 YYYY-MM-DD 格式(原始混有 MM/DD/YYYY 和中文日期兩種格式)
6. 缺失值處理:
   - "城市"列 34 行缺失 → 填入"未知"(使用者確認)
   - "金額"列 86 行缺失 → 保留為空(使用者確認這批訂單為異常記錄,不填充)

🤖 AI 評測

這個資料分析技能質量較好,定義了一套完整的分析思路和方法,從理解資料到輸出報告都有明確指引。優點是約束清晰、避免常見錯誤、示例豐富,能幫助使用者獲得有價值的分析結論。不足之處在於缺少具體的操作步驟說明,對於複雜資料場景的應對策略可能不夠充分。

📊 多維度評分

適應性4
規範性4.5
有效性4.5
可靠性3.9
可信度4.9

📁 包含檔案 (2 個)

📄 SKILL.md 6.6 KB
📄 _meta.json 138 B