Уважаемые пользователи Stackoverflow,
В настоящее время я работаю с 2 наборами данных, которые мне нужно обработать.Но чтобы это работало, мне нужно переделать мой набор данных в другой формат.Я занимаюсь исследованием бивариантных вероятностей и поэтому хочу объединить 2 набора данных.
Оба набора данных в настоящее время имеют формат xls;
0-1 h 1-2 h ..... 23-24 h
дата 1 значение1 значение2 ..... значение 24
дата 2 значение1 значение2 ..... значение24
дата 3 значение1 значение2 .....значение 24
Набор данных делится по годам на листе.Также отсутствуют некоторые даты, и между некоторыми датами есть белые строки.Более того, вместо значений 0 есть несколько символов «-».
Теперь мне нужно переформатировать 2 набора данных в следующий формат в .csv или .txt;Все в одном листе;Даты (дд / мм / гггг) - Часы - Значения Набор данных 1 - Значения Набор данных 2
К сожалению, я начал работать над кодом, но не смог полностью решить эту проблему.Может быть, кто-то может мне помочь?Я работал в Matlab, потому что некоторые расширения, которые я должен использовать в дальнейшем, являются дополнениями в Matlab.
Я начал использовать некоторые функции импорта данных, поскольку они автоматически пишут их для вас, но я бы предпочел, чтобы функция работала для всех моих листов, а не для каждого листа, получающего разные функции.Текущий код;
%% cycle through excel sheets --> puts data into cell in arrays.
[~,sheet_name]=xlsfinfo('hourly_data.xls');
for k=1:numel(sheet_name)
dates = readtable('C:\Users\Thomas \Documents\Thesis\data\hourly_data.xls','Sheet', sheet_name{k},'Range', 'A:A');
dates = dates(:,1);
dates = dates(9:end,1);
dates_ok = datetime(dates,'InputFormat','dd/MM/YYYY')
raw(cellfun(@(x) ~isempty(x) && isnumeric(x) && isnan(x),raw)) = {''};
% date{k}=xlsread('data1.xls',sheet_name{k}, 'A:A');
end
%% get data from all the different sheets
for k = 1 : length(data)
% Extract the k'th cell's contents.
thisCellContents = data{k}; % Will be a 365x24 array.
subArray = thisCellContents(1:366, 1); % Extract columns 1-365 of column 1
% Now do something with subarray.....
end
Любая помощь будет принята с благодарностью!
С уважением,
Thomas