Как читать таблицу HDF от панд?

У меня есть файл my_file.h5 который, предположительно, содержит данные в формате HDF5 (PyTables). Я пытаюсь прочитать этот файл с помощью pandas:

 import pandas as pd store = pd.HDFStore('my_file.h5') 

Затем я пытаюсь использовать объект store :

 print store 

В результате я получаю:

 Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/usr/lib/pymodules/python2.7/pandas/io/pytables.py", line 133, in __repr__ kind = v._v_attrs.pandas_type File "/usr/lib/python2.7/dist-packages/tables/attributeset.py", line 302, in __getattr__ (name, self._v__nodePath) AttributeError: Attribute 'pandas_type' does not exist in node: '/data' 

Кто-нибудь знает, что я делаю неправильно? Может ли проблема быть вызвана тем фактом, что мой *.h5 – это не то, что я думаю (а не данные в формате hdf5)?

В вашем /usr/lib/pymodules/python2.7/pandas/io/pytables.py строке 133

 kind = v._v_attrs.pandas_type 

В моем pytables.py я вижу

 kind = getattr(n._v_attrs,'pandas_type',None) 

Используя getattr , если нет атрибута pandas_type , то для kind установлено значение None . Я предполагаю, что моя версия Pandas

 In [7]: import pandas as pd In [8]: pd.__version__ Out[8]: '0.10.0' 

новее, чем ваша. Если это так, исправить – обновить свои pandas .

У меня была таблица h5. Сделано с pytables независимо от pandas и необходимо превратить его в список кортежей, а затем импортировать его в df. Это было приятно, потому что это позволяет мне использовать мой индекс pytables для запуска «где» на входе. Это избавляет меня от чтения всех строк.