如何用Pandas自动实现Excel文件的读取、编辑与行迁移操作
使用Pandas自动搞定Excel文件处理流程
当然可以!Pandas完全能帮你自动完成所有这些操作,作为Python新手,用它处理Excel文件是非常省心的选择。我给你整理了完整的实现代码,还会一步步解释每个环节的作用,方便你理解。
完整代码实现
import pandas as pd # 1. 读取原始Excel文件 # 这里不需要提前手动改列名,我们在代码里直接处理 original_df = pd.read_excel('test.xlsx') # 2. 选择目标3列并重命名 # 把下面的{原列名: 新列名}替换成你实际的列名哦! # 比如原文件列名是"Date_Original",想改成"date",就写"Date_Original": "date" renamed_df = original_df.rename(columns={ "原日期列名": "date", "原数值列名": "value", "原来源列名": "source" })[["date", "value", "source"]] # 只保留我们需要的这三列 # 3. 日期格式转换(和你之前的代码逻辑保持一致) renamed_df['date'] = pd.to_datetime(renamed_df['date'], format='%b %d %Y.%f').astype(str) # 4. 拆分前100行和剩余行 top_100 = renamed_df.head(100) remaining_data = renamed_df.iloc[100:] # 5. 把前100行保存到新文件 top_100.to_excel('top_100_data.xlsx', index=False) # 6. 把剩余行写回原文件(直接覆盖,如果你怕误删可以先备份原文件哦) remaining_data.to_excel('test.xlsx', index=False) # 打印预览看看结果 print("新文件的前5行预览:") print(top_100.head()) print(f"\n原文件现在还剩 {len(remaining_data)} 行数据")
关键步骤解释
- 读取与列处理:
pd.read_excel()会自动读取原文件的列名,我们用rename()批量重命名指定列,再通过[["date", "value", "source"]]筛选出需要的三列,完全不用手动修改原文件的列名。 - 日期转换:和你之前的代码逻辑一样,把日期转换成指定格式后转成字符串,保证格式统一。
- 数据拆分:
head(100)直接获取前100行,iloc[100:]获取从第101行开始的所有剩余数据,简单直观。 - 保存文件:
to_excel()里的index=False很重要,它会避免把Pandas自带的索引列写到Excel里,让输出的表格更干净。
其他可选工具库
如果之后你需要更精细的Excel操作,比如调整单元格格式、操作公式或者和Excel界面交互,这些库也可以试试:
- openpyxl:Pandas处理xlsx文件的底层依赖之一,如果你需要对Excel做更底层的操作,比如合并单元格、设置字体样式,可以直接用它。
- xlwings:适合需要在Python和Excel之间双向互动的场景,比如调用Excel宏、读取Excel里的VBA代码,对新手也比较友好。
内容的提问来源于stack exchange,提问作者Gabriel Fernandes
相关产品推荐
相关产品推荐

