I have array and want to calculate mean every five element in this array and replace every five element by their mean value
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hello
I have different matrixes and size of those matrixes differ as well
Generally I want to do same thing on these arrays
For instance in case of array that consists of 3000 element, I want to calculate mean of every 5 element in this array and write this one single mean value instead of 5 elements
Shortly I want to calculate every next 5 element mean and replace those elements with this mean value
Can anyone provide me with corresponding code?
0 Kommentare
Antworten (1)
Bruno Luong
am 25 Aug. 2022
Bearbeitet: Bruno Luong
am 25 Aug. 2022
A = 1:100
n = 5;
Astair = repelem(mean(reshape(A,n,[]),1),1,n)
plot(A)
hold on
plot(Astair)
3 Kommentare
Bruno Luong
am 25 Aug. 2022
Bearbeitet: Bruno Luong
am 25 Aug. 2022
Truncation if the length of the original vector if not divisible by n:
Astair = repelem(mean(reshape(A(1:n*floor(end/n)),n,[]),1),1,n);
Tip to reshape result in column
Astair = reshape(Astair,[],1);
Siehe auch
Kategorien
Mehr zu Matrices and Arrays 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!
