【发布时间】:2021-07-22 09:22:06
【问题描述】:
我有一个包含 13 个选项卡的 Excel 文件,我想编写一个函数,从文件中获取指定的工作表,将它们转换为单独的 DataFrame,然后将它们捆绑到 DataFrame 列表中。在这种情况下,我想获取标有“tblProviderDetails”、“tblSubmissionStatus”和“Data Validation Ref Data”的表格,将它们转换为 DataFrames 并制作一个列表。我希望将 dfs 放在列表中的原因是,我最终想要获取输入的 dfs 并返回一个字典,然后该字典将用于创建 YAML 文件。
这最终是我想要的:
dfs = [ 'tblProviderDetails', 'tblSubmissionStatus', 'Data Validation Ref Data']
我想使用用户定义函数的原因是我希望灵活地将任何工作表和任何数量的工作表调用到列表中。
我能够编写一个将单个指定工作表转换为数据框的函数,但我不确定如何在 Excel 文件中调用任意数量的工作表或在函数中创建一个列表。这是据我所知:
def read_excel(path, sheet_name, header):
dfs = pd.read_excel(path, sheet_name=sheet_name, header=header)
return dfs
df1 = read_excel(path=BASEDIR, sheet_name='tblProviderDetails', header=2)
df2 = read_excel(path=BASEDIR, sheet_name='tblSubmissionStatus', header=2)
df3 = read_excel(path=BASEDIR, sheet_name='Data Validation Ref Data', header=2)
感谢您的帮助。
【问题讨论】: