File Exchange

image thumbnail

slidingavg

version 1.0.0.0 (4.68 KB) by Michele Giugliano
One-dimensional sliding-window arithmetic average of a signal.

5 Downloads

Updated 11 Apr 2016

View License

This function implements a one-dimensional smoothing filter, applying a sliding window to a numerical sequence. Such filtering replaces the center value in the window with the arithmetic mean computed among the points within the window.
When the sliding window is exceeding the lower or upper boundaries of the input vector, the average is computed only among the available points.

This function can be conveniently employed for smoothing one-dimensional noisy signals and its results are very similar to other "quick and dirty" smoothing techniques.
When compared to a standard first-order low-pass filter, it is important to note that the averaging performed here does not only involve the past history of the signal but the future samples as well.

I underline that the filtering by the present routine resembles what the median filter performs (see medfilt1()), although there is no "artifact" or transient responses at the beginning and the end of the signal, due to the presence of a non-zero offset in the data (see the screenshot).

Cite As

Michele Giugliano (2021). slidingavg (https://www.mathworks.com/matlabcentral/fileexchange/1967-slidingavg), MATLAB Central File Exchange. Retrieved .

Comments and Ratings (5)

raym

cannot plot multiple dataset with overlapping

Siony Cole

Used to use this file. Now, i find the fast moving_average.m by carlos vargas, works with nans, and for matrix too... anyway, thanks michele

K K

Jan Mikkelsen

Well written .. and very usefull

todd mackey

Inefficient and limited to 1D data only. Should use summed area tables.

MATLAB Release Compatibility
Created with R12.1
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!