scipy.signal.detrend¶
-
scipy.signal.
detrend
(data, axis=-1, type='linear', bp=0, overwrite_data=False)[source]¶ Remove linear trend along axis from data.
- Parameters
- dataarray_like
The input data.
- axisint, optional
The axis along which to detrend the data. By default this is the last axis (-1).
- type{‘linear’, ‘constant’}, optional
The type of detrending. If
type == 'linear'
(default), the result of a linear least-squares fit to data is subtracted from data. Iftype == 'constant'
, only the mean of data is subtracted.- bparray_like of ints, optional
A sequence of break points. If given, an individual linear fit is performed for each part of data between two break points. Break points are specified as indices into data.
- overwrite_databool, optional
If True, perform in place detrending and avoid a copy. Default is False
- Returns
- retndarray
The detrended input data.
Examples
>>> from scipy import signal >>> randgen = np.random.RandomState(9) >>> npoints = 1000 >>> noise = randgen.randn(npoints) >>> x = 3 + 2*np.linspace(0, 1, npoints) + noise >>> (signal.detrend(x) - noise).max() < 0.01 True