pandas 操作excel

Pandas 是一个强大的 Python 数据分析库,支持对 Excel 文件的读取、写入和操作。以下是一些常见的 Pandas 操作 Excel 的方法,包括读取 Excel 文件、写入 Excel 文件以及一些常用的数据处理操作。


📥 一、读取 Excel 文件

1. 读取整个 Excel 文件

import pandas as pd

# 读取 Excel 文件
df = pd.read_excel('data.xlsx')

# 查看前几行数据
print(df.head())

2. 读取指定的工作表(Sheet)

df = pd.read_excel('data.xlsx', sheet_name='Sheet1')

sheet_name 可以是字符串(表名)、整数(第几个表,从 0 开始),或者 None(读取所有表)。

3. 读取多个工作表并返回字典

dfs = pd.read_excel('data.xlsx', sheet_name=None)  # 返回字典,键是 sheet 名,值是 DataFrame

📤 二、写入 Excel 文件

1. 写入单个 DataFrame 到 Excel

df.to_excel('output.xlsx', index=False)

index=False 表示不保存行索引。

2. 写入多个 DataFrame 到不同工作表

with pd.ExcelWriter('output.xlsx') as writer:
    df1.to_excel(writer, sheet_name='Sheet1', index=False)
    df2.to_excel(writer, sheet_name='Sheet2', index=False)

🛠 三、常见操作示例

1. 筛选数据并保存

# 读取数据
df = pd.read_excel('data.xlsx')

# 筛选数据
filtered_df = df[df['销售额'] > 1000]

# 保存到新 Excel 文件
filtered_df.to_excel('filtered_data.xlsx', index=False)

2. 添加新列

df['利润率'] = df['利润'] / df['销售额']

3. 修改某些值

df.loc[df['地区'] == '华东', '折扣'] = 0.95

4. 合并两个 Excel 文件

df1 = pd.read_excel('data1.xlsx')
df2 = pd.read_excel('data2.xlsx')

combined_df = pd.concat([df1, df2], ignore_index=True)
combined_df.to_excel('combined_data.xlsx', index=False)

📦 四、安装依赖

要使用 pandas 读写 Excel 文件,需要安装以下依赖之一:

pip install openpyxl   # 用于 .xlsx 文件
pip install xlrd       # 用于 .xls 文件(旧版)

✅ 五、注意事项

  • .xlsx 使用 openpyxl
  • .xls 使用 xlrd
  • 写入 Excel 时默认使用 openpyxl 引擎
  • 可以通过 engine='openpyxl' 指定引擎

📌 示例完整代码

import pandas as pd

# 读取 Excel
df = pd.read_excel('sales_data.xlsx', sheet_name='2024')

# 添加新列
df['利润率'] = df['利润'] / df['销售额']

# 筛选数据
high_profit = df[df['利润率'] > 0.3]

# 写出结果
high_profit.to_excel('high_profit_sales.xlsx', index=False)

如果你有具体的需求,比如处理多个 sheet、合并多个 Excel 文件、处理日期列、去重等,可以告诉我,我可以提供更详细的代码示例 😊

posted @ 2025-07-15 09:12  chuangzhou  阅读(241)  评论(0)    收藏  举报