Я работаю с этими файлами h5, которые имеют десятки тысяч наборов данных, содержащих векторы числовых значений и все одинакового размера.Моя цель - прочитать наборы данных и создать одну большую матрицу из этих векторов.Наборы данных имеют имена от «0» до «xxxxx» (некоторое большое число). Я смог прочитать их и получить матрицу, но для этого требуется вечность.Мне было интересно, можете ли вы взглянуть на мой код и предложить способ ускорить его работу, вот как я делаю это прямо сейчас
t =[];
for i = 0:40400 % there are 40401 datasets in this particular file
j = int2str(i);
p = '/mesh/'; % The parent group
s = strcat(p,j); % to create the full path of a dataset e.g. '/mesh/0'
r = h5read('temp.h5',s); % the file name is temp and s has the dataset path
t = [t;r];
end
, в данном конкретном случае есть 40401 наборов данных, каждый из которых имеет80802x1 вектор числовых значений.Поэтому в конце концов я хочу создать 80802x40401 матрицу.Этот код занимает более одного дня, чтобы закончить.Я думаю, что одна из причин, почему это медленно, потому что в каждой итерации, Matlab обращаются к файлу h5.Буду признателен, если у некоторых из вас есть советы по ускорению кода