how to convert data from minute to hourly average
5 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Andrei Bobrov
2018-3-16
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),:);
更多回答(1 个)
KSSV
2018-3-16
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 个评论
另请参阅
产品
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!