How to take an average every four columns?
6 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Chameleon17
am 13 Feb. 2018
Kommentiert: Chameleon17
am 15 Feb. 2018
Hi, I have seen similar questions but I am getting stuck altering the code for what I want. I have a matrix of (64 x 18144), each row is a met station and each column is a 15 minute data measurement - I want to convert this to hourly data for each station - so I want to have an output matrix of (64 x 4536). I have seen some solutions but I don't have the 'tools' they require. Any help/ideas would be very much appreciated! :)
Akzeptierte Antwort
James Tursa
am 13 Feb. 2018
x = your 64x1844 matrix
result = reshape(mean(reshape(x.',4,[])),size(x,2)/4,[]).';
0 Kommentare
Weitere Antworten (1)
Andrei Bobrov
am 13 Feb. 2018
Bearbeitet: Andrei Bobrov
am 13 Feb. 2018
A - your matrix (64 x 18144)
B = A.';
[m,n] = size(B);
t = minutes((0:m)'*15);
Tb = array2timetable(B,'RowTimes',t);
Tout = retime(Tb,'hourly','mean');
out = Tout{:,:}';
0 Kommentare
Siehe auch
Kategorien
Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!