h5py - изменяет набор данных как numpy.reshape () - PullRequest
0 голосов
/ 17 мая 2019

Я хочу изменить форму моего набора данных h5py , как я могу сделать с numpy.reshape () . Следующий код работает, только если я использую numpy.array () в начале кода. Но это работает только с небольшим набором данных и взрывает мою память, если я беру больший.

import h5py
import numpy as np

#load data
h5py_data_path = 'any\path\to\h5pyData\training.data.h5'
t_data = h5py.File(h5py_data_path,'r')
training_data = t_data['training.data']
######################################
#### Don't want to have this (blows up my memory) ####
training_data = np.array(training_data)
######################################

print('training_data    ',training_data.shape)
#out: training_data     (10203, 5, 341)

#reshape data
######################################
#### That works, but only with upper Numpy Code ####
training_data = training_data.reshape(training_data.shape[0], 1, 5, 341)
######################################

print('training_data    ',training_data.shape)
#out: training_data     (10203, 1, 5, 341)

Есть ли в h5py какой-нибудь собственный способ изменить это любым другим способом?

...