我有一本.xlsx书籍,我想编写一个函数或循环来为excel中的每个选项卡创建Panda(s)DF。举例来说,假设我有一本名为book.xlsx的excel图书,以及一个名为sheet1-sheet6的标签。我想读入excel文件并从函数或循环中创建6个Panda DF(sheet1-sheet6)?
答案 0 :(得分:0)
要加载文件:
path = '../files_to_load/my_file.xlsx'
print(path)
excel_file = pd.ExcelFile(path)
print('File uploaded ✔')
要获取特定的工作表:
# Get a specific sheet
raw_data = excel_file.parse('sheet1')
您将所有工作表存储在列表中。所有工作表都是数据框
In [1]:
import pandas as pd
path = 'my_path/my_file.xlsx'
excel_file = pd.ExcelFile(path)
sheets = []
for sheet in excel_file.sheet_names:
data = excel_file.parse(sheet)
sheets.append(data)
答案 1 :(得分:0)
您需要将sheet_name
参数设置为None
-这将创建作为数据帧存储的图纸的有序字典。
dataframes = pd.read_excel(file_name, sheet_name=None)
>>> type(dataframes)
<class 'collections.OrderedDict'>
>>> type(dataframes['first']) # `first` is the name a sheet
<class 'pandas.core.frame.DataFrame'>