Running Extrema

Version (2.72 KB) by Dan K
Returns the running minimum or maximum of a vector or matrix (analagous to the running average)


Updated 25 Jun 2008

View License

Given a set of data, this function is intended to return an output of the same size which gives the lowest (or highest) values which are present within the specified window size. Algorithm is *much* faster than sequential calls to min with reduced ranges, at least for large data sets.

% runningmin - Computes a running extreme of an input vector or matrix
% Optional file header info (to give more details about the function than in the H1 line)
% Syntax: out = runningmin(input,nSamples,type)
% input - vector or matrix of data to return the running min or max from
% nSamples - The size of the window to check for mins or maxes
% type - 'min','max', or 'both' (default) which type of extremes to return
% out - running minimum or maximum requested. If both minimum is returned
% first, then maximum
% Example
% [runMin,runMax] = runningExtreme(data,31,'both')
% Subfunctions: fillIn
% See also: min, max, sort

Cite As

Dan K (2023). Running Extrema (, MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2007b
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!
Version Published Release Notes

Switched to the much faster 1-D Van Herk Algorithm. According to theory uses 3 comparisons per data point, no matter the size of the filter.