Python實(shí)現(xiàn)批量提取Excel數(shù)據(jù)
在數(shù)據(jù)處理和分析的過程中,Excel 是一種廣泛使用的數(shù)據(jù)存儲格式。使用 Python 可以高效地從多個 Excel 文件中提取數(shù)據(jù),進(jìn)行匯總和分析。本文將詳細(xì)介紹如何使用 pandas、openpyxl 和 xlrd 三種庫來批量提取 Excel 數(shù)據(jù),并提供相應(yīng)的示例代碼。
使用 pandas 批量提取 Excel 數(shù)據(jù)
pandas 是一個強(qiáng)大的數(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 文件
假設(shè)有多個 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)
總結(jié)
本文詳細(xì)介紹了如何使用 pandas、openpyxl 和 xlrd 三種庫批量提取 Excel 數(shù)據(jù),并提供了相應(yīng)的示例代碼。通過這些方法,可以高效地處理多個 Excel 文件,提高數(shù)據(jù)處理的效率。希望這些內(nèi)容能夠幫助大家在實(shí)際開發(fā)中更好地處理 Excel 數(shù)據(jù)。
到此這篇關(guān)于Python實(shí)現(xiàn)批量提取Excel數(shù)據(jù)的文章就介紹到這了,更多相關(guān)Python批量提取Excel數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
pandas DataFrame 警告(SettingWithCopyWarning)的解決
這篇文章主要介紹了pandas DataFrame 警告(SettingWithCopyWarning)的解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07Python實(shí)現(xiàn)輸入若干個正整數(shù),升序后輸出
這篇文章主要介紹了Python實(shí)現(xiàn)輸入若干個正整數(shù),升序后輸出方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2024-02-02詳解用pyecharts Geo實(shí)現(xiàn)動態(tài)數(shù)據(jù)熱力圖城市找不到問題解決
這篇文章主要介紹了詳解用pyecharts Geo實(shí)現(xiàn)動態(tài)數(shù)據(jù)熱力圖城市找不到問題解決,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-06-06python+opencv實(shí)現(xiàn)論文插圖局部放大并拼接效果
在做圖像數(shù)據(jù)標(biāo)注時,很難一次就做到精準(zhǔn)標(biāo)注,如果目標(biāo)比較小,即使微調(diào)也難以做到精準(zhǔn),所以就需要另外一個窗口對標(biāo)注區(qū)域進(jìn)行局部放大以方便微調(diào),這篇文章主要給大家介紹了關(guān)于python+opencv實(shí)現(xiàn)論文插圖局部放大并拼接效果的相關(guān)資料,需要的朋友可以參考下2021-10-10PyTorch?模型?onnx?文件導(dǎo)出及調(diào)用詳情
這篇文章主要介紹了PyTorch模型onnx文件導(dǎo)出及調(diào)用詳情,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下2022-07-07Keras 利用sklearn的ROC-AUC建立評價函數(shù)詳解
這篇文章主要介紹了Keras 利用sklearn的ROC-AUC建立評價函數(shù)詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06Django實(shí)戰(zhàn)之用戶認(rèn)證(用戶登錄與注銷)
這篇文章主要介紹了Django實(shí)戰(zhàn)之用戶認(rèn)證(用戶登錄與注銷),小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-07-07