鱼C论坛

 找回密码
 立即注册
查看: 1965|回复: 4

利用pandas库合并EXCEL文件,有关表头问题,

[复制链接]
发表于 2021-1-18 22:51:41 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 yywwf2003 于 2021-1-18 22:54 编辑

请教大佬们,照着网上教的代码,已经成功批量合并只有一个表头的EXCEL,如果excel表格的表头有两个或三个或多个,这个方法 就合并不了,有没有方法可以解决?谢谢大佬,好人一世平安。

  1. import os
  2. import pandas as pd
  3. files = os.listdir("练习文件夹")
  4. df = []
  5. for i in files:
  6.     df.append(pd.read_excel("练习文件夹\" + i))
  7. res = pd.concat(df)
  8. res.to_excel("结果文件.xlsx",index=False)
复制代码



excel1
序号        数学        英语
序号        数学        英语
1        1        1
1        1        1

excel2
序号        数学        英语
序号        数学        英语
1        1        1
1        1        1

像这样两个表头就合不了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2021-1-19 08:13:39 | 显示全部楼层
跪求大佬解答,谢谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-19 15:44:01 | 显示全部楼层
pandas读取excel默认第一行是行标签,第二行开始都是数据。
如果数据从第三行开始,那么在拼接的时候手工控制一下。
  1. import os
  2. import pandas as pd
  3. files = os.listdir("练习文件夹")
  4. df = []
  5. for i in files:
  6.     df.append(pd.read_excel("练习文件夹\" + i)[1:])   # 0行和1行重复,所以不要0行,从1行取
  7. res = pd.concat(df)
  8. res.to_excel("结果文件.xlsx",index=False)
复制代码

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-1-19 22:30:00 | 显示全部楼层
本帖最后由 yywwf2003 于 2021-1-20 00:07 编辑
suchocolate 发表于 2021-1-19 15:44
pandas读取excel默认第一行是行标签,第二行开始都是数据。
如果数据从第三行开始,那么在拼接的时候手工 ...


不好意思,大佬,表达不太正确,正确的是,往往我们需要合并的表头不单单只有一行的,或能有两行或三行,像下面这样,求大佬帮解答一下,非常感谢

广东某学院        注:这个广东某学院是三个合并在一起的单元格
理工        专业        会计
序号        数学        英语
1        1        1
2        2        2
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-1-20 08:40:45 | 显示全部楼层
yywwf2003 发表于 2021-1-19 22:30
不好意思,大佬,表达不太正确,正确的是,往往我们需要合并的表头不单单只有一行的,或能有两行或三行 ...

pandas强项是处理数据,并不擅长处理excel这种应用型表格。
如果单纯是处理表格,建议用openpyxl。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-1 20:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表