1. 使用 pandas 處理 Excel 文件的基本方法
使用 read_excel 讀取資料
要開始處理 Excel 文件,第一步是安裝 pandas 和 openpyxl,如果你還沒安裝的話。這兩個庫就像可靠的老鞋,沒有它們就無法進入資料分析的世界。
pip install pandas openpyxl
現在我們準備好處理表格了。 pandas 提供了簡單又方便的 read_excel 方法,可以把 Excel 文件中的資料加載到 DataFrame 裡 — 這是 pandas 的標準資料格式。
import pandas as pd
# 從 Excel 文件讀取資料
data = pd.read_excel('example.xlsx')
# 輸出 DataFrame 前五行
print(data.head())
就這樣!我們從 Excel 文件中讀取了資料並轉換成了 DataFrame。幾毫秒之內,曾經需要打開 Excel 的資料現在直接出現在我們的螢幕上。
讀取資料的參數
read_excel 方法支持許多參數,可以用來讀取特定的工作表、特定的儲存格範圍或指定資料格式。
-
sheet_name: 指定要讀取的工作表名稱或索引(從 0 開始)。例如,sheet_name='表1'或sheet_name=0。 -
usecols: 選擇您想要匯入的特定列。例如,usecols="A:C"僅選擇前三列。 -
skiprows: 可以跳過檔案中的前N行。這在需要排除標題或檔案開頭的無用資料時非常有用。
# 從特定工作表讀取資料並選擇列
data_filtered = pd.read_excel('example.xlsx', sheet_name='表1', usecols="A:C", skiprows=2)
2. 資料轉換為 DataFrame
什麼是 DataFrame?
DataFrame 就像是掃地機器人的電子元件:外表看起來簡單(嗯,這只是張表格),但它讓掃地機器人知道該去哪裡,而 DataFrame 則知道該儲存什麼資料以及如何處理它們。
pandas 中的 DataFrame 是一種二維資料結構,具有行標籤(索引)和列標籤。與 Python 的列表或 NumPy 陣列不同, DataFrame 允許像資料庫或 Excel 表格那樣處理資料。
對 DataFrame 進行基本操作
pandas 中的 DataFrame 的一大亮點是可以輕鬆地與資料進行交互。例如,您可以對資料進行排序、過濾或選擇行列的子集。
選擇列
按名稱選取列就像在 Excel 中點擊列標題一樣簡單。這再簡單不過了:
# 選擇一列
dates = data['日期']
# 選擇多列
subset = data[['姓名', '薪水']]
選擇行
如果您需要訪問行,可以使用 iloc 方法進行索引或使用 loc 方法進行標籤操作。
# 選擇第一行
first_row = data.iloc[0]
# 使用條件選擇行
high_salary = data[data['薪水'] > 50000]
3. 範例與實踐
現在我們對 DataFrame 的資料集合有了基本的理解,我們來做些練習吧。假設我們有一個名為 data.xlsx 的 Excel 文件,其中有幾個工作表,我們希望從某個工作表中提取資料、處理並輸出到控制台。
實務練習
您的任務:編寫一個腳本,從文件 data.xlsx 中讀取數據,選擇工作表 銷售,過濾出銷售金額超過 1000 的記錄。
# 從工作表 '銷售' 讀取資料並進行過濾
sales_data = pd.read_excel('data.xlsx', sheet_name='銷售')
high_sales = sales_data[sales_data['金額'] > 1000]
print(high_sales)
這個練習將讓您感受到 pandas 的魔力,彷彿成為數據巫師。當然,不會發生不可能的事情,但表格變成有用的訊息 — 對於分析世界來說,這是真正的魔法!
4. 錯誤與實現注意事項
新手常常會忽略一些小細節,例如字母大小寫敏感的列名,或者 pandas 預設將第一行視為標題。如果您的數據不同,可能會遇到錯誤。與資料保持良好的關係:在加載文件後,總是使用 print(data.columns) 檢查列名。
還有一個重要提醒:如果您嘗試加載由大公司創建的文件,裡面的數據可能會被加密。這時 pandas 無法幫您,但一杯濃咖啡和短暫休息可以!
這些知識將幫助您在處理來自 Excel 的資料時自動化繁瑣的事務。自動化這些過程不僅能節省您的時間,還能避免與複製和粘貼相關的邏輯災難。您的 Python 腳本將成為自動化助手,能夠瞬間準備好報告數據。
GO TO FULL VERSION