pandas.HDFStore.append

HDFStore.append(key, value, format=None, axes=None, index=True, append=True, complib=None, complevel=None, columns=None, min_itemsize=None, nan_rep=None, chunksize=None, expectedrows=None, dropna=None, data_columns=None, encoding=None, errors='strict')[source]

Append to Table in file.

Node must already exist and be Table format.

Parameters:
key:str
value:{Series, DataFrame}
format:‘table’ is the default

Format to use when storing object in HDFStore. Value can be one of:

'table'

Table format. Write as a PyTables Table structure which may perform worse but allow more flexible operations like searching / selecting subsets of the data.

index:bool, default True

Write DataFrame index as a column.

append:bool, default True

Append the input data to the existing.

data_columns:list of columns, or True, default None

List of columns to create as indexed data columns for on-disk queries, or True to use all columns. By default only the axes of the object are indexed. See here.

min_itemsize:dict of columns that specify minimum str sizes
nan_rep:str to use as str nan representation
chunksize:size to chunk the writing
expectedrows:expected TOTAL row size of this table
encoding:default None, provide an encoding for str
dropna:bool, default False, optional

Do not write an ALL nan row to the store settable by the option ‘io.hdf.dropna_table’.

Notes

Does not check if data being appended overlaps with existing data in the table, so be careful

Examples

>>> df1 = pd.DataFrame([[1, 2], [3, 4]], columns=['A', 'B'])
>>> store = pd.HDFStore("store.h5", 'w')  
>>> store.put('data', df1, format='table')  
>>> df2 = pd.DataFrame([[5, 6], [7, 8]], columns=['A', 'B'])
>>> store.append('data', df2)  
>>> store.close()  
   A  B
0  1  2
1  3  4
0  5  6
1  7  8

© 2008–2011, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
© 2011–2025, Open source contributors
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/2.3.0/reference/api/pandas.HDFStore.append.html