首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >合并excel文件

合并excel文件
EN

Stack Overflow用户
提问于 2022-09-15 13:52:15
回答 1查看 44关注 0票数 0

有人能帮助如何以excel可读格式获得输出吗?我正在以dataframe的形式获得输出,但是#data嵌入了第2行和第3行中的字符串

代码语言:javascript
复制
import pandas as pd
import os
input_path = 'C:/Users/Admin/Downloads/Test/'

output_path = 'C:/Users/Admin/Downloads/Test/'
[enter image description here][1]
excel_file_list = os.listdir(input_path)

df = pd.DataFrame()

for file in excel_file_list:
    if file.endswith('.xlsx'):
        df1 = pd.read_excel(input_path+file, sheet_name=None)
        df = df.append(df1, ignore_index=True)enter image description here
        
writer = pd.ExcelWriter('combined.xlsx', engine='xlsxwriter')
for sheet_name in df.keys():
    df[sheet_name].to_excel(writer, sheet_name=sheet_name, index=False)

writer.save()
EN

回答 1

Stack Overflow用户

发布于 2022-09-15 14:02:08

您的问题可能是在使用sheet_name=None。如果任何文件都有多个工作表,则pd.read_excel()将返回一个带有{'sheet_name':dataframe}格式的字典。

对于这样的.append(),您可以使用python的Dictionary.items()方法尝试这样的方法:

代码语言:javascript
复制
def combotime(dfinput):
    df1 = pd.DataFrame()
    for k, v in dfinput.items():
        df1 = df1.append(dfin[k])
    return df1

编辑:--如果您打算按照writer循环的含义将工作表保持为单独的,则不要使用像df这样的pd.DataFrame()对象来添加字典项。相反,将以下内容添加到现有字典:

代码语言:javascript
复制
sheets = {}
sheets = sheets.update(df1) #df1 is your read_excel dictionary
for sheet in sheets.keys():
    sheets[sheet].to_excel(writer, sheet_name=sheet, index=Fasle)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/73732393

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档