db = pd.HDFStore("database.h5")
df = pd.DataFrame(np.random.randn(8, 3), columns=['Col1', 'Col2', 'Col3'])
db.put("A1", df, format = 'table', data_columns = True)
db["A1"]
Col1 Col2 Col3
0 1.036201 -0.395399 -0.741962
1 0.233349 -0.733992 0.754594
db.close()
Теперь я хочу добавить еще один фрейм данных, который не связан (в другой файл на более позднем этапе, поэтому мне нужно закрыть базу данных на данный момент):
db = pd.read_hdf("database.h5")
db.put("A3", newdf, format='table', data_columns=True)
Я получаю сообщение об ошибке 'DataFrame' object has no attribute 'put' и вижу, что db на самом деле является фреймом данных:
db
Col1 Col2 Col3
0 1.036201 -0.395399 -0.741962
1 0.233349 -0.733992 0.75459






Режим по умолчанию - append, поэтому вы можете просто открыть файл таким же образом и добавить дополнительные фреймы данных по мере необходимости:
db = pd.HDFStore("database.h5", 'a') # open existing store
db.put("A3", newdf, format='table', data_columns=True)
db.close()