Я сохранил свой набор данных в этой форме, как указано на следующем изображении (формат HDF5). Итак, у меня есть разные группы, т.е. 4, 2, 40 и т. д., и для каждой группы у меня есть 2 набора данных Annotation
и Features
. Я успешно сохранил их, используя код, но не могу загрузить их обратно.
Странно, что ошибка возникает только тогда, когда я пытаюсь прочитать Annotation
. И чтение работает нормально, когда я пытаюсь прочитать Features
.
Я использую следующий код:
dataSet = np.array([])
annotation = np.array([])
hdf5Object = readHDF5File('abc.hdf5','r')
w = 2
myGroup = hdf5Object[str(w)]
dataSet = np.array(myGroup['Features'])
annotation = np.array(myGroup['Annotation'])
Пожалуйста, просветите меня здесь, так как я много борюсь за это некоторое время. Спасибо.
ИЗМЕНИТЬ 1
Я получаю следующую ошибку, когда читаю Annotation
Traceback (most recent call last):
File "xyz.py", line 76, in getAllData
annotation = np.array(myGroup['Annotation'])
File "/usr/lib/python2.7/dist-packages/h5py/_hl/group.py", line 153, in __getitem__
oid = h5o.open(self.id, self._e(name), lapl=self._lapl)
File "h5o.pyx", line 173, in h5py.h5o.open (h5py/h5o.c:3403)
KeyError: "unable to open object (Symbol table: Can't open object)"
ИЗМЕНИТЬ 2
Итак файл hdf5 формировался в 2 шага, на 1 шаге Features
вычислялись следующим образом:
features = <numpy array of thousand rows and 100 columns contains only floating numbers>
w = 2
f = h5py.File('abc.hdf5', 'a')
myGroup = f[str(w)]
myGroup.create_dataset('Features', data=features)
Для разных w
файл был добавлен и характеристики рассчитывались в разное время.
Для аннотации используется такая же процедура. Annotation
также содержит только числа с плавающей запятой.
ИЗМЕНИТЬ 3
На следующем изображении показано содержимое данных в Annotation
и Features
одного w
. Левое окно Annotation
, а правое Features
.
h5py.tests.run_tests()
)? - person ali_m   schedule 04.01.2016