如何在使用 python pandas 组合多个 Excel 工作簿的同时在单个工作簿中获取单独的 sheet?
How to get the separate sheet in single workbook while combining multiple Excel workbook using python pandas?
我的代码:
Final_wb=pd.DataFrame()
for filename in glob.glob("*.xlsx):
ws=pd.read(filename)
Final_wb=pd.concat([Final_wb,ws],ignore_index=True)
Final_wb.to_excel("Output.xlsx",index=False)
上面的代码 works.But 它将所有工作簿合并为单个工作簿 sheet.I 需要读取所有工作簿并将其合并为具有多个工作表的单个工作簿。(例如,假设我有 3 个工作簿每个工作簿都有每张纸,所以我可以获得单个工作簿 [output.xlsx] 和 3 张)。我不想使用 xlsx 编写器和 openpyxl。分享你的知识..之前有人这样做过
I dont want to use xlsx writer and openpyxl
不可行,因为您使用的是 xslx。如果您想使用 xlwt 库,则必须将文件扩展名更改为 xsl.
假设你做到了 import pandas as pd
:
with pd.ExcelWriter("Output.xlsx", mode = 'a') as writer:
for filename in glob.glob("*.xlsx"):
ws = pd.read(filename)
df = DataFrame(ws)
df.to_excel(writer, sheet_name = filename.strip('.xlsx'), index = False)
如果您确实使用了 XslxWriter 库,那么当您尝试执行 pd.ExcelWriter("Output.xlsx", mode = 'a', engine = 'xlsxwriter')
时,您会收到一个异常,指出该引擎不支持追加模式。但是由于在导出所有工作簿后文件将被关闭,因此无论如何它将以默认模式 ('w') 工作。示例:
"""pip install pandas XslxWriter"""
import pandas as pd
with pd.ExcelWriter("Output.xlsx", mode = 'w', engine = 'xslxwriter') as writer:
for filename in glob.glob("*.xlsx"):
ws = pd.read(filename)
df = DataFrame(ws)
df.to_excel(writer, sheet_name = filename.strip('.xlsx'), index = False)
我的代码:
Final_wb=pd.DataFrame()
for filename in glob.glob("*.xlsx):
ws=pd.read(filename)
Final_wb=pd.concat([Final_wb,ws],ignore_index=True)
Final_wb.to_excel("Output.xlsx",index=False)
上面的代码 works.But 它将所有工作簿合并为单个工作簿 sheet.I 需要读取所有工作簿并将其合并为具有多个工作表的单个工作簿。(例如,假设我有 3 个工作簿每个工作簿都有每张纸,所以我可以获得单个工作簿 [output.xlsx] 和 3 张)。我不想使用 xlsx 编写器和 openpyxl。分享你的知识..之前有人这样做过
I dont want to use xlsx writer and openpyxl
不可行,因为您使用的是 xslx。如果您想使用 xlwt 库,则必须将文件扩展名更改为 xsl.
假设你做到了 import pandas as pd
:
with pd.ExcelWriter("Output.xlsx", mode = 'a') as writer:
for filename in glob.glob("*.xlsx"):
ws = pd.read(filename)
df = DataFrame(ws)
df.to_excel(writer, sheet_name = filename.strip('.xlsx'), index = False)
如果您确实使用了 XslxWriter 库,那么当您尝试执行 pd.ExcelWriter("Output.xlsx", mode = 'a', engine = 'xlsxwriter')
时,您会收到一个异常,指出该引擎不支持追加模式。但是由于在导出所有工作簿后文件将被关闭,因此无论如何它将以默认模式 ('w') 工作。示例:
"""pip install pandas XslxWriter"""
import pandas as pd
with pd.ExcelWriter("Output.xlsx", mode = 'w', engine = 'xslxwriter') as writer:
for filename in glob.glob("*.xlsx"):
ws = pd.read(filename)
df = DataFrame(ws)
df.to_excel(writer, sheet_name = filename.strip('.xlsx'), index = False)