更多Python学习内容:ipengtao.com
在数据处理和分析的过程中,Excel 是一种广泛使用的数据存储格式。使用 Python 可以高效地从多个 Excel 文件中提取数据,进行汇总和分析。本文将详细介绍如何使用 pandas
、openpyxl
和 xlrd
三种库来批量提取 Excel 数据,并提供相应的示例代码。
pandas
是一个强大的数据分析库,它提供了直接读取和处理 Excel 文件的功能。
首先,确保已安装 pandas
和 openpyxl
:
pip install pandas openpyxl
import pandas as pd
# 读取 Excel 文件
df = pd.read_excel('data.xlsx')
# 显示前几行数据
print(df.head())
假设有多个 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)
# 显示合并后的数据
print(all_data.head())
openpyxl
是一个专门处理 Excel 文件的库,适用于处理 .xlsx
格式的文件。
pip install openpyxl
from openpyxl import load_workbook
# 加载 Excel 文件
wb = load_workbook('data.xlsx')
# 选择活动工作表
ws = wb.active
# 读取所有数据
data = []
for row in ws.iter_rows(values_only=True):
data.append(row)
# 打印数据
for row in data:
print(row)
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)
# 打印合并后的数据
for row in all_data:
print(row)
xlrd
是一个用于读取 Excel 文件的库,适用于 .xls
和 .xlsx
格式的文件。
pip install xlrd
import xlrd
# 打开 Excel 文件
workbook = xlrd.open_workbook('data.xls')
# 选择工作表
sheet = workbook.sheet_by_index(0)
# 读取所有数据
data = []
for row_idx in range(sheet.nrows):
row = sheet.row_values(row_idx)
data.append(row)
# 打印数据
for row in data:
print(row)
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)
# 打印合并后的数据
for row in all_data:
print(row)
本文详细介绍了如何使用 pandas
、openpyxl
和 xlrd
三种库批量提取 Excel 数据,并提供了相应的示例代码。通过这些方法,可以高效地处理多个 Excel 文件,提高数据处理的效率。希望这些内容能够帮助大家在实际开发中更好地处理 Excel 数据。
如果你觉得文章还不错,请大家 点赞、分享、留言 下,因为这将是我持续输出更多优质文章的最强动力!