pandas.ExcelFile#
- class pandas.ExcelFile(path_or_buffer, engine=None, storage_options=None, engine_kwargs=None)[source]#
Class for parsing tabular Excel sheets into DataFrame objects.
See read_excel for more documentation.
- Parameters:
- path_or_bufferstr, bytes, path object (pathlib.Path or py._path.local.LocalPath),
A file-like object, xlrd workbook or openpyxl workbook. If a string or path object, expected to be a path to a .xls, .xlsx, .xlsb, .xlsm, .odf, .ods, or .odt file.
- enginestr, default None
If io is not a buffer or path, this must be set to identify io. Supported engines:
xlrd,openpyxl,odf,pyxlsb,calamineEngine compatibility :xlrdsupports old-style Excel files (.xls).openpyxlsupports newer Excel file formats.odfsupports OpenDocument file formats (.odf, .ods, .odt).pyxlsbsupports Binary Excel files.calaminesupports Excel (.xls, .xlsx, .xlsm, .xlsb) and OpenDocument (.ods) file formats.
Changed in version 1.2.0: The engine xlrd now only supports old-style
.xlsfiles. Whenengine=None, the following logic will be used to determine the engine:If
path_or_bufferis an OpenDocument format (.odf, .ods, .odt), then odf will be used.Otherwise if
path_or_bufferis an xls format,xlrdwill be used.Otherwise if
path_or_bufferis in xlsb format, pyxlsb will be used.
New in version 1.3.0.
Otherwise if openpyxl is installed, then
openpyxlwill be used.Otherwise if
xlrd >= 2.0is installed, aValueErrorwill be raised.
Warning
Please do not report issues when using
xlrdto read.xlsxfiles. This is not supported, switch to usingopenpyxlinstead.- engine_kwargsdict, optional
Arbitrary keyword arguments passed to excel engine.
Examples
>>> file = pd.ExcelFile('myfile.xlsx') >>> with pd.ExcelFile("myfile.xls") as xls: ... df1 = pd.read_excel(xls, "Sheet1")
Attributes
Methods
close()close io if necessary
parse([sheet_name, header, names, ...])Parse specified sheet(s) into a DataFrame.