pandas.read_hdf(path_or_buf, key=None, mode='r', errors='strict', where=None, start=None, stop=None, columns=None, iterator=False, chunksize=None, **kwargs)[source]

Read from the store, close it if we opened it.

Retrieve pandas object stored in file, optionally based on where criteria.


Pandas uses PyTables for reading and writing HDF5 files, which allows serializing object-dtype data with pickle when using the “fixed” format. Loading pickled data received from untrusted sources can be unsafe.

See: for more.

path_or_bufstr, path object, pandas.HDFStore

Any valid string path is acceptable. Only supports the local file system, remote URLs and file-like objects are not supported.

If you want to pass in a path object, pandas accepts any os.PathLike.

Alternatively, pandas accepts an open pandas.HDFStore object.

keyobject, optional

The group identifier in the store. Can be omitted if the HDF file contains a single pandas object.

mode{‘r’, ‘r+’, ‘a’}, default ‘r’

Mode to use when opening the file. Ignored if path_or_buf is a pandas.HDFStore. Default is ‘r’.

errorsstr, default ‘strict’

Specifies how encoding and decoding errors are to be handled. See the errors argument for open() for a full list of options.

wherelist, optional

A list of Term (or convertible) objects.

startint, optional

Row number to start selection.

stopint, optional

Row number to stop selection.

columnslist, optional

A list of columns names to return.

iteratorbool, optional

Return an iterator object.

chunksizeint, optional

Number of rows to include in an iteration when using an iterator.


Additional keyword arguments passed to HDFStore.


The selected object. Return type depends on the object stored.

See also


Write a HDF file from a DataFrame.


Low-level access to HDF files.


>>> df = pd.DataFrame([[1, 1.0, 'a']], columns=['x', 'y', 'z'])
>>> df.to_hdf('./store.h5', 'data')
>>> reread = pd.read_hdf('./store.h5')