I have array and want to calculate mean every five element in this array and replace every five element by their mean value
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
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 commentaires
Réponses (1)
Bruno Luong
le 25 Août 2022
Modifié(e) : Bruno Luong
le 25 Août 2022
A = 1:100
n = 5;
Astair = repelem(mean(reshape(A,n,[]),1),1,n)
plot(A)
hold on
plot(Astair)
3 commentaires
Bruno Luong
le 25 Août 2022
Modifié(e) : Bruno Luong
le 25 Août 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);
Voir également
Catégories
En savoir plus sur Matrices and Arrays dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
