在使用 Pandas 進行資料處理的情況下,通常需要從 Excel 檔案存取特定工作表。但是,當使用 pd.read_excel() 函數時,整個工作簿不可避免地會載入到記憶體中。在處理大型 Excel 檔案時,這可能會導致效能問題。
為了克服這個挑戰,Pandas 提供了 pd.ExcelFile 類別。此類別可讓您載入 Excel 檔案一次並根據需要存取各個工作表,而無需重新載入整個檔案。使用方法如下:
import pandas as pd # Read the Excel file using pd.ExcelFile xls = pd.ExcelFile('path_to_file.xlsx') # Load specific worksheets df1 = pd.read_excel(xls, 'Sheet1') df2 = pd.read_excel(xls, 'Sheet2')
需要注意的是,雖然使用 pd.ExcelFile 避免了整個工作簿的冗餘加載,但它仍然需要初始加載文件。這意味著對於非常大的 Excel 文件,記憶體使用量可能仍然很大。
pd.read_excel() 函數提供了載入多個工作表的選項。您可以指定工作表名稱或索引的列表,如下所示:
# Load multiple sheets as a dictionary sheet_names = ['Sheet1', 'Sheet2'] multiple_sheets = pd.read_excel('path_to_file.xlsx', sheet_name=sheet_names)
要將文件中的所有工作表作為字典加載,請使用 None 作為sheet_name 參數:
# Load all sheets as a dictionary all_sheets = pd.read_excel('path_to_file.xlsx', sheet_name=None)
以上是如何使用 Pandas 從大型 Excel 檔案中高效地僅載入特定工作表?的詳細內容。更多資訊請關注PHP中文網其他相關文章!