ParserError阅读Excel file with Python/Pandas read_excel

yks3o0rb  于 2023-06-20  发布在  Python
关注(0)|答案(2)|浏览(158)

我使用pandas read_excel将Excel工作簿读入数据框字典。

xls = pd.ExcelFile(file_name)

df_dict = pd.read_excel(xls, sheet_name=none, 
   skiprows=list_of_rows_to_skip, 
   header=None, 
   usecols=list_of_cols_to_include, 
   names=list_of_col_names)

Excel文件的第一个工作表是信息工作表,而其他工作表(从1到60不等)具有相同格式的数据。我指定usercols只包含感兴趣的列。然而,突然我开始得到一个错误

pandas.errors.ParserError: Defining usecols without of bounds indices is not allowed. [1, 2, ... n]

为了解决这个问题,我决定第一步只读第一页,

df_info = pd.read_excel(xls, sheet_name='info')

然后再看剩下的纸我怎么能这么做因为函数接受列表,所以我尝试切片,pd.read_excel(sheet_name=[1:], ...),这给了我一个错误,SyntaxError: expression cannot contain assignment

v8wbuo2f

v8wbuo2f1#

你可以尝试:pop函数将从df_dict中删除第一个dictionnary并将信息存储在一个dataframe中。

64jmpszr

64jmpszr2#

看看加载多个工作表的问题,这个函数可以帮助解决这个问题。然后,您可以添加已经对列等进行过的修改。

import pandas as pd

def get_excel_sheets(filename):
    df_dict = {} # placeholder to add other dataframes to
    xl_file = pd.ExcelFile(filename)
    xl_sheets = xl_file.sheet_names # get the names of the sheets
    for sheet in xl_sheets:
        df_dict[sheet] = pd.read_excel(xl_file, sheet) # add each sheet as separate and named element in dictionary

    return df_dict

resulting_dict = get_excel_sheets(completePath2File)

相关问题