Python實現(xiàn)批量提取Excel數(shù)據(jù)
在數(shù)據(jù)處理和分析的過程中,Excel 是一種廣泛使用的數(shù)據(jù)存儲格式。使用 Python 可以高效地從多個 Excel 文件中提取數(shù)據(jù),進行匯總和分析。本文將詳細介紹如何使用 pandas、openpyxl 和 xlrd 三種庫來批量提取 Excel 數(shù)據(jù),并提供相應的示例代碼。
使用 pandas 批量提取 Excel 數(shù)據(jù)
pandas 是一個強大的數(shù)據(jù)分析庫,它提供了直接讀取和處理 Excel 文件的功能。
1. 安裝 pandas
首先,確保已安裝 pandas 和 openpyxl:
pip install pandas openpyxl
2. 讀取單個 Excel 文件
import pandas as pd # 讀取 Excel 文件 df = pd.read_excel('data.xlsx') # 顯示前幾行數(shù)據(jù) print(df.head())
3. 批量讀取多個 Excel 文件
假設有多個 Excel 文件存放在一個文件夾中,文件名格式為 data_1.xlsx, data_2.xlsx,以此類推。
import os # 存放 Excel 文件的文件夾路徑 folder_path = 'path_to_folder' # 獲取所有 Excel 文件路徑 file_list = [os.path.join(folder_path, f) for f in os.listdir(folder_path) if f.endswith('.xlsx')] # 初始化一個空的 DataFrame all_data = pd.DataFrame() # 逐個讀取并合并 for file in file_list: df = pd.read_excel(file) all_data = all_data.append(df, ignore_index=True) # 顯示合并后的數(shù)據(jù) print(all_data.head())
使用 openpyxl 批量提取 Excel 數(shù)據(jù)
openpyxl 是一個專門處理 Excel 文件的庫,適用于處理 .xlsx 格式的文件。
1. 安裝 openpyxl
pip install openpyxl
2. 讀取單個 Excel 文件
from openpyxl import load_workbook # 加載 Excel 文件 wb = load_workbook('data.xlsx') # 選擇活動工作表 ws = wb.active # 讀取所有數(shù)據(jù) data = [] for row in ws.iter_rows(values_only=True): data.append(row) # 打印數(shù)據(jù) for row in data: print(row)
3. 批量讀取多個 Excel 文件
import os from openpyxl import load_workbook # 存放 Excel 文件的文件夾路徑 folder_path = 'path_to_folder' # 獲取所有 Excel 文件路徑 file_list = [os.path.join(folder_path, f) for f in os.listdir(folder_path) if f.endswith('.xlsx')] # 初始化一個空的列表 all_data = [] # 逐個讀取并合并 for file in file_list: wb = load_workbook(file) ws = wb.active for row in ws.iter_rows(values_only=True): all_data.append(row) # 打印合并后的數(shù)據(jù) for row in all_data: print(row)
使用 xlrd 批量提取 Excel 數(shù)據(jù)
xlrd 是一個用于讀取 Excel 文件的庫,適用于 .xls 和 .xlsx 格式的文件。
1. 安裝 xlrd
pip install xlrd
2. 讀取單個 Excel 文件
import xlrd # 打開 Excel 文件 workbook = xlrd.open_workbook('data.xls') # 選擇工作表 sheet = workbook.sheet_by_index(0) # 讀取所有數(shù)據(jù) data = [] for row_idx in range(sheet.nrows): row = sheet.row_values(row_idx) data.append(row) # 打印數(shù)據(jù) for row in data: print(row)
3. 批量讀取多個 Excel 文件
import os import xlrd # 存放 Excel 文件的文件夾路徑 folder_path = 'path_to_folder' # 獲取所有 Excel 文件路徑 file_list = [os.path.join(folder_path, f) for f in os.listdir(folder_path) if f.endswith('.xls') or f.endswith('.xlsx')] # 初始化一個空的列表 all_data = [] # 逐個讀取并合并 for file in file_list: workbook = xlrd.open_workbook(file) sheet = workbook.sheet_by_index(0) for row_idx in range(sheet.nrows): row = sheet.row_values(row_idx) all_data.append(row) # 打印合并后的數(shù)據(jù) for row in all_data: print(row)
總結
本文詳細介紹了如何使用 pandas、openpyxl 和 xlrd 三種庫批量提取 Excel 數(shù)據(jù),并提供了相應的示例代碼。通過這些方法,可以高效地處理多個 Excel 文件,提高數(shù)據(jù)處理的效率。希望這些內(nèi)容能夠幫助大家在實際開發(fā)中更好地處理 Excel 數(shù)據(jù)。
到此這篇關于Python實現(xiàn)批量提取Excel數(shù)據(jù)的文章就介紹到這了,更多相關Python批量提取Excel數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
pandas DataFrame 警告(SettingWithCopyWarning)的解決
這篇文章主要介紹了pandas DataFrame 警告(SettingWithCopyWarning)的解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-07-07Python實現(xiàn)輸入若干個正整數(shù),升序后輸出
這篇文章主要介紹了Python實現(xiàn)輸入若干個正整數(shù),升序后輸出方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-02-02詳解用pyecharts Geo實現(xiàn)動態(tài)數(shù)據(jù)熱力圖城市找不到問題解決
這篇文章主要介紹了詳解用pyecharts Geo實現(xiàn)動態(tài)數(shù)據(jù)熱力圖城市找不到問題解決,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2019-06-06python+opencv實現(xiàn)論文插圖局部放大并拼接效果
在做圖像數(shù)據(jù)標注時,很難一次就做到精準標注,如果目標比較小,即使微調(diào)也難以做到精準,所以就需要另外一個窗口對標注區(qū)域進行局部放大以方便微調(diào),這篇文章主要給大家介紹了關于python+opencv實現(xiàn)論文插圖局部放大并拼接效果的相關資料,需要的朋友可以參考下2021-10-10PyTorch?模型?onnx?文件導出及調(diào)用詳情
這篇文章主要介紹了PyTorch模型onnx文件導出及調(diào)用詳情,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-07-07Keras 利用sklearn的ROC-AUC建立評價函數(shù)詳解
這篇文章主要介紹了Keras 利用sklearn的ROC-AUC建立評價函數(shù)詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06