how to convert data from minute to hourly average
5 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
SD
el 16 de Mzo. de 2018
Comentada: SD
el 17 de Mzo. de 2018
this is the extension of my file which needs to be converted.this is the sample data.there are individual files for each day consisting of 1440 rows and 4 columns.this file is to be read in matlab and processed for 4 years. i need to average the time and data i.e, first two columns of the given table.there are some missing data in which the data is missing but the time is recorded.any program can solve my data.thanks in advance
4 comentarios
Respuesta aceptada
Andrei Bobrov
el 16 de Mzo. de 2018
dir1 = 'path_to_folder_with_your_txt_files';
f = dir(fullfile(dir1,'iisc*.txt'));
nm = {f.name}';
dt = datetime(regexp(nm,'\d{4}-\d{2}-\d{2}','match','once'));
TT = [];
for ii = 1:numel(dt)
T = readtable(fullfile(dir1,nm{ii}),'Format','%f%f%f%f','TreatAsEmpty','-');
Time1 = dt(ii) + hours(T.Var1);
TT = [TT;timetable(Time1,T.Var2,'v',{'data'})];
end
TTout = retime(TT,'hourly','mean');
TTout = TTout(~isnan(TTout.data),:);
7 comentarios
Más respuestas (1)
KSSV
el 16 de Mzo. de 2018
YOu can load the text file using load or importdata. To egt hourly mean check the below example code.
t = 1:24*60 ; % time in minutes
A = rand(1,numel(t)); % some random data for 1440 minutes
% Arrange indices into hours
idx = reshape(1:24*60,60,[])' ;
% Arrange data into hours
A_hours = A(idx) ;
% GEt mean
A_hourly_mean = mean(A_hours,2) ;
2 comentarios
KSSV
el 16 de Mzo. de 2018
A is random data I have taken to demonstrate. You have to used your data.
Ver también
Productos
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!