DataFrame 實務案例
以下提供 2 個以 Pandas `DataFrame` 為核心的簡單實務範例。
## 範例一:銷售資料統計
使用 `DataFrame` 儲存銷售紀錄,並計算每筆交易金額與各產品的總銷售額。
```python
import pandas as pd
# 建立銷售資料
data = {
"產品": ["筆電", "滑鼠", "鍵盤", "筆電", "滑鼠"],
"數量": [2, 10, 5, 1, 8],
"單價": [30000, 500, 1200, 30000, 500]
}
df = pd.DataFrame(data)
# 計算每筆交易金額
df["金額"] = df["數量"] * df["單價"]
print(df)
```
輸出結果:
```text
產品 數量 單價 金額
0 筆電 2 30000 60000
1 滑鼠 10 500 5000
2 鍵盤 5 1200 6000
3 筆電 1 30000 30000
4 滑鼠 8 500 4000
```
依產品統計總銷售額:
```python
summary = df.groupby("產品")["金額"].sum()
print(summary)
```
輸出:
```text
產品
滑鼠 9000
筆電 90000
鍵盤 6000
Name: 金額, dtype: int64
```
這類操作常用於:
- 銷售報表
- 商品營收分析
- 每月業績統計
---
## 範例二:員工資料篩選與薪資分析
使用 `DataFrame` 儲存員工資料,篩選出薪資高於平均值的員工。
```python
import pandas as pd
data = {
"姓名": ["小明", "小華", "小美", "阿偉"],
"部門": ["工程部", "業務部", "工程部", "人資部"],
"年資": [3, 5, 2, 7],
"月薪": [45000, 52000, 40000, 48000]
}
employees = pd.DataFrame(data)
# 計算平均月薪
average_salary = employees["月薪"].mean()
print(f"平均月薪:{average_salary:.0f} 元")
# 篩選薪資高於平均值的員工
high_salary = employees[employees["月薪"] > average_salary]
print(high_salary)
```
可能輸出:
```text
平均月薪:46250 元
姓名 部門 年資 月薪
1 小華 業務部 5 52000
3 阿偉 人資部 7 48000
```
也可以依部門計算平均薪資:
```python
department_salary = employees.groupby("部門")["月薪"].mean()
print(department_salary)
```
這類操作常用於:
- 員工薪資分析
- 人力資源報表
- 依部門統計平均年資或薪資
- 篩選符合條件的員工資料
`DataFrame` 的優點是能以欄與列的方式整理資料,並搭配 `filter`、`groupby`、`mean`、`sum` 等方法快速進行分析。
相關學習地圖、教學課程
Python 資料工程