【问题标题】:Pandas- Append Excel files in folder, but also each of their respective sheets, so output file has each appended sheetPandas-在文件夹中附加 Excel 文件,但也附加它们各自的工作表,因此输出文件具有每个附加工作表
【发布时间】:2019-02-19 18:17:14
【问题描述】:

以下内容非常适合查看 .xlsx 文件的文件夹并附加它们。但它仅适用于附加第一个选项卡并保存附加的第一个选项卡。我知道 read pd.read_excel(f, sheet_name=None)- 但这不起作用,我真的希望输出文件有多个选项卡,分别附加第一个选项卡。任何想法?

import glob
import pandas as pd
import xlrd
#import XlsxWriter
all_data = pd.DataFrame()
for f in glob.glob(r'C:\*'):
    df = pd.read_excel(f)
    all_data = all_data.append(df,ignore_index=True)

writer = pd.ExcelWriter('test.xlsx', engine='xlsxwriter')
all_data.to_excel(writer)
writer.save()

【问题讨论】:

    标签: python excel pandas


    【解决方案1】:

    您需要使用pandas.ExcelFile 对象。它有sheet_names 方法来获取excel文件中的所有工作表。

    看看下面的代码。

    with pd.ExcelFile(<path_to_xlsx>) as xls:
        for each in xls.sheet_names:
            all_data.append(xls.parse(each), ignore_index=True)
    

    【讨论】:

    • import glob import pandas as pd import xlrd all_data = pd.DataFrame() for file in glob.glob(r'C:*'): sheet = pd.read_excel(file,sheet_name=None)对于 sheetname,sheets.items() 中的数据框: print(f"{sheetname}:") print(dataframe) all_data=all_data.append(dataframe,ignore_index=True) writer = pd.ExcelWriter('THESfirstsheettest2.xlsx', engine ='xlsxwriter') all_data.to_excel(writer) writer.save()
    猜你喜欢
    • 2021-11-22
    • 1970-01-01
    • 1970-01-01
    • 2021-06-23
    • 2018-12-30
    • 1970-01-01
    • 2022-10-24
    • 2021-10-15
    • 1970-01-01
    相关资源
    最近更新 更多