返回目錄
A
數據科學之路:從基礎到實務應用 - 第 2 章
第二章:數據科學流程的第一步 — 問題定義與數據收集
發布於 2026-02-26 16:22
# 第二章:數據科學流程的第一步 — 問題定義與數據收集
> **關鍵點**:在任何分析或建模工作之前,**明確問題**、**選擇合適資料來源**、並確保資料品質與合規性,是成功的基石。
---
## 1. 問題定義:從業務到數據指標
> **核心**:把業務疑問轉化為可操作、可量化的研究問題。
1. **理解業務背景**:與領域專家、決策者多次對話,挖掘痛點。
2. **設計可測量指標(KPI)**:確保每個問題都能對應到具體的量化指標。
3. **定義成功標準**:設定「預期達成」與「可接受」的範圍。
4. **列舉假設**:在數據尚未處理前先提出可驗證的假設,為後續探索提供方向。
> **實例**:一家電商想提升訂單轉化率。問題可以定義為:「將訪客從瀏覽轉化為購買的比例提升 5%」。
## 2. 資料來源分類與挑選
| 資料類型 | 典型來源 | 優點 | 缺點 |
|---|---|---|---|
| **結構化資料** | RDBMS(MySQL, PostgreSQL) | 易查詢、嚴謹模式 | 需固定 schema |
| **非結構化資料** | 文本、圖像、音訊 | 信息豐富 | 需要特定處理 |
| **半結構化資料** | JSON, XML, Parquet | 兼顧彈性與結構 | 解析成本較高 |
| **外部 API** | 第三方服務(Google Analytics, Twitter) | 及時、豐富 | 受限於授權與速率 |
| **傳感器/IoT** | 產業設備、智慧城市 | 連續、實時 | 需處理大規模流資料 |
> **挑選要點**:
> 1. **與問題對應**:資料應能直接或間接回答關鍵問題。
> 2. **可存取性**:確保授權、格式、頻率符合需求。
> 3. **資料品質**:評估缺失率、準確度與一致性。
> 4. **安全性與合規**:資料是否需要加密、是否涉及個人隱私。
## 3. 數據倫理與治理
| 規範 | 主要內容 | 重要性 |
|---|---|---|
| **GDPR** | 個人資料保護、同意機制 | 全球標準,企業法規風險 |
| **CCPA** | 消費者資料權利、匿名化 | 美國加州重要法律 |
| **ISO/IEC 27001** | 資訊安全管理 | 內部安全合規 |
| **Data Provenance** | 資料來源追蹤 | 可信度提升 |
> **實務建議**:
> - 在收集前確定 **同意**,並提供「拒絕」選項。
> - 采用 **匿名化** 或 **去識別化** 技術減少風險。
> - 建立 **資料治理委員會**,監督數據生命周期。
## 4. 數據採集方法
### 4.1 從 SQL 資料庫擷取
sql
SELECT user_id,
product_id,
order_date,
order_amount
FROM sales_orders
WHERE order_date BETWEEN '2023-01-01' AND '2023-12-31';
> **提示**:使用 `LIMIT` 先測試,避免一次性拉取過多資料。
### 4.2 透過 API 取得實時資料
python
import requests
url = "https://api.example.com/v1/sales"
params = {"start_date": "2023-01-01", "end_date": "2023-12-31"}
headers = {"Authorization": "Bearer YOUR_TOKEN"}
response = requests.get(url, params=params, headers=headers)
response.raise_for_status()
json_data = response.json()
> **技巧**:處理 API 速率限制,使用 `time.sleep()` 或 `retry` 方案。
### 4.3 讀取非結構化資料(JSON)
python
import json
with open('data/comments.json', 'r', encoding='utf-8') as f:
comments = json.load(f)
# 轉為 pandas DataFrame
import pandas as pd
df_comments = pd.DataFrame(comments)
## 5. 資料採集案例:電商銷售預測
1. **目標**:預測 2024 年 Q1 的每日銷售額。
2. **資料需求**:
- 歷史訂單資料(結構化)
- 活動促銷資料(非結構化)
- 社交媒體情緒指標(API)
3. **採集流程**:
- 從 MySQL 讀取訂單。
- 透過 Twitter API 取得品牌相關推文。
- 解析促銷 PDF 成 JSON 供分析。
4. **合規檢查**:檢查客戶個資是否需要匿名化。
5. **品質驗證**:確認缺失值 < 2%,離群值處理。
## 6. 工具與語言快照
| 需求 | 推薦工具 | 語言 | 主要特點 |
|---|---|---|---|
| **SQL 資料庫** | PostgreSQL, Snowflake | SQL | 大型資料集、雲端服務 |
| **API 互動** | Requests, HTTPx | Python | 直觀、易寫重試機制 |
| **非結構化解析** | Pandas, json | Python | 高效 DataFrame 轉換 |
| **資料治理** | Collibra, Alation | 各語言 | 追蹤資料血統 |
| **資料視覺化** | Tableau, Power BI | 各語言 | 互動式儀表板 |
## 7. 進一步閱讀
- **《Data Science for Business》** — 了解商業問題與數據科學的橋樑。
- **《Python for Data Analysis》** — 深入 Python 資料處理技巧。
- **《Practical SQL》** — SQL 的實務運用。
- **ISO/IEC 27001 章節 9** — 資訊安全管理體系。
## 小結
> **重點回顧**:
> 1. **問題定義** 是成功數據科學的起點,必須明確可量化。
> 2. **資料來源** 需根據業務需求、可存取性與品質來挑選。
> 3. **倫理與治理** 是不可忽略的法律與道德門檻。
> 4. **採集方法** 從 SQL、API 到非結構化資料,工具多樣且可結合。
> 5. **案例導向** 能幫助將理論落地,提升實務感。
下一章將進入 **資料前處理**,學習如何將原始資料轉化為模型友好的結構,並保留其資訊價值。