в примере ниже, я пытаюсь сохранить мультииндекс pandas.DataFrame
в h5
формате файлписать панда dataframe в hdf5 с помощью модуля pytables
import pandas as pd
import numpy as np
store = pd.HDFStore('c:/temp/example.h5')
idx = pd.MultiIndex.from_arrays([['first']*3,['one','two','three']], names = ['outer','inner'])
abc = pd.DataFrame(np.random.randint(1,100,9).reshape(-1,3), index = idx, columns = list('abc'))
если я пытаюсь сохранить выше dataframe («ABC») для хранения, я получаю сообщение об ошибке, как показано ниже
store.put('abc',abc,format='t',append=True)
TypeError: shape must be an integer or sequence: 3L
я не получаю эту ошибку раньше, может быть, это может быть связано с обновлением версии для pytable. В настоящее время я использую версию 3.2.2. Любой указатель на то, что может быть альтернативным решением для хранения данных в формате h5?
Я все еще получаю ту же ошибку, даже с альтернативой, которую вы предлагаете. Я предполагаю, что под капотом оба метода одинаковы. –