detrend

Удалите линейные тенденции

Синтаксис

y = detrend (x)
y = detrend (x, 'постоянный')
y = detrend (x, 'линейный', BP)

Описание

detrend удаляет среднее значение или линейную тенденцию от вектора или матрицы, обычно для обработки БПФа.

y = detrend(x) удаляет лучшее прямолинейное соответствие из векторного x и возвращает его в y. Если x является матрицей, detrend удаляет тенденцию из каждого столбца.

y = detrend(x,'constant') удаляет среднее значение из векторного x или, если x является матрицей из каждого столбца матрицы.

y = detrend(x,'linear',bp) удаляет непрерывную, кусочную линейную тенденцию из векторного x или, если x является матрицей из каждого столбца матрицы. Векторный bp содержит индексы точек останова между смежными линейными сегментами. Точка останова между двумя сегментами задана как точка данных, которую совместно используют эти два сегмента.

detrend(x,'linear'), без заданного вектора точки останова, совпадает с detrend(x).

Примеры

sig = [0 1 -2 1 0 1 -2 1 0];      % signal with no linear trend
trend = [0 1 2 3 4 3 2 1 0];      % two-segment linear trend
x = sig+trend;                    % signal with added trend
y = detrend(x,'linear',5)         % breakpoint at 5th element

y =

   -0.0000
    1.0000
   -2.0000
    1.0000
    0.0000
    1.0000
   -2.0000
    1.0000
   -0.0000

Обратите внимание на то, что точка останова задана, чтобы быть Пятым элементом, который является точкой данных, совместно использованной этими двумя сегментами.

Алгоритмы

detrend вычисляет припадок наименьших квадратов прямой линии (или составная строка для кусочных линейных тенденций) к данным и вычитает получившуюся функцию из данных. Чтобы получить уравнение прямолинейного соответствия, используйте polyfit.

Расширенные возможности

Смотрите также

Представлено до R2006a

Была ли эта тема полезной?