pandas.read_excel parameter “sheet_name” not working

匿名 (未验证) 提交于 2019-12-03 00:53:01

问题:

According to the doc, pandas.read_excel has a parameter sheet_name that allows specifying which sheet is read. But when I am trying to read the second sheet from an excel file, no matter how I set the parameter (sheet_name = 1, sheet_name = 'Sheet2'), the dataframe always shows the first sheet, and passing a list of indices (sheet_name = [0, 1]) does not return a dictionary of dataframes but still the first sheet. What might be the problem here?

回答1:

You can try to use pd.ExcelFile:

xls = pd.ExcelFile('path_to_file.xls') df1 = pd.read_excel(xls, 'Sheet1') df2 = pd.read_excel(xls, 'Sheet2') 


回答2:

It looks like you're using the old version of Python. So try to change your code

df = pd.read_excel(file_with_data, sheetname=sheet_with_data) 

It should work properly.



回答3:

This works:

df = pd.read_excel(open(file_path_name), 'rb'), sheetname = sheet_name)  file_path_name = your file sheet_name = your sheet name 

This does not for me:

df = pd.read_excel(open(file_path_name), 'rb'), sheet_name = sheet_name) 

Gave me only the first sheet, no matter how I defined sheet_name.

--> it is an known error: https://github.com/pandas-dev/pandas/issues/17107



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!