File Exchange

image thumbnail


version 1.4.1 (337 KB) by Chad Greene
Interpolate over small gaps in x, but not over large gaps in x.


Updated 20 May 2019

View Version History

View License

Sometimes your 1D data has gaps. This may be due to a faulty sensor or irregular sampling intervals. When this is the case, you may want to interpolate over short gaps in your data, but where no data exist for long periods of time, it's inappropriate to interpolate. This function performs interpolation over small gaps in 1D data.

vq = interp1gap(v)
vq = interp1gap(x,v,xq)
vq = interp1gap(...,maxgapval)
vq = interp1gap(...,'method')
vq = interp1gap(...,'interpval',vval)
vq = interp1gap(...,'extrap',extrapval)

vq = interp1gap(v) linearly interpolates to give undefined (NaN) values of v.

vq = interp1gap(x,v,xq) interpolates to find vq, the values of the underlying function v at the points in the vector or array xq.

vq = interp1gap(...,maxgapval) specifies a maximum gap in the independent variable over which to interpolate. If x and xq are given, units of maxgapval match the units of x. If x and xq are not provided, units of maxgapval are indices of v, assuming any gaps in v are represented by NaN. If maxgapval is not declared, interp1gap will interpolate over infitely-large gaps.

vq = interp1gap(...,'method') specifies a method of interpolation. Default method is 'linear', but can be any of the following:

'nearest' nearest neighbor interpolation
'linear' linear interpolation (default)
'spline' cubic spline interpolation
'pchip' piecewise cubic Hermite interpolation
'cubic' (same as 'pchip')
'v5cubic' Cubic interpolation used in MATLAB 5.
'next' next neighbor interpolation (Matlab R2014b or later)
'previous' previous neighbor interpolation (Matlab R2014b or later)

vq = interp1gap(...,'interpval',vval) specifies a value with which to replace vq elements corresponding to large gaps. Default is NaN.

vq = interp1gap(...,'extrap',extrapval) returns the scalar extrapval for out-of-range values. NaN and 0 are often used for extrapval.

Cite As

Chad Greene (2021). interp1gap (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (7)

Suzanne Stouten

Great, thnx!

Alasdair Jones

It appears that 'extrap' has different behaviour to the current interp1 in that an error is thrown if no extrapval is entered, so normal extrapolation doesn't appear possible?

amirali baastani

tong yan


Simon Crowhurst

Jennifer Newman

Very helpful!

MATLAB Release Compatibility
Created with R2012b
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!