ExcelFile VS. 在pandas中的read_excel

我正在潜入大pandas并进行实验。 至于从Excel文件读取数据。 我想知道使用ExcelFile和read_excel有什么区别。 两者似乎都可以工作(虽然语法稍微不同,可以预料),并且文档支持两者。 在这两种情况下,文档描述的方法都是一样的:“将Excel表读入DataFrame”和“将Excel表读入pandas DataFrame”。 ( read_excel文档和excel_file文档 )

我在这里看到了SO的答案,它使用了无论是处理差异还是W / O。 此外,谷歌search没有产生讨论这个问题的结果。

WRT我的testing,这些似乎相当:

path = "test/dummydata.xlsx" xl = pd.ExcelFile(path) df = xl.parse("dummydata") # sheet name 

 path = "test/dummydata.xlsx" df = pd.io.excel.read_excel(path, sheetname=0) 

除了后者为我省了一行外,这两者之间是否有区别,是否有理由使用其中之一?

谢谢!

ExcelFile.parse更快。

假设你正在循环读取dataframe。 用ExcelFile.parse你只需传递Excelfile对象(在你的情况下xl )。 所以excel表只是加载一次,你用它来获取你的数据框。 在Read_Excel的情况下,您传递path而不是Excelfile对象。 所以基本上每次工作簿再次加载。 如果您的工作簿中有大量的工作表和成千上万的行,就会造成混乱。

我相信pandas第一次执行的是使用了两步的过程,但后来又添加了一个叫做read_excel的进程。 大概留下了第一个,因为人们已经在使用它