ドキュメンテーション

最新のリリースでは、このページがまだ翻訳されていません。 このページの最新版は英語でご覧になれます。

detrend

線形トレンドを除去

構文

y = detrend(x)
y = detrend(x,'constant')
y = detrend(x,'linear',bp)

説明

関数 detrend は、ベクトルまたは行列から、平均値または線形トレンドを除去します。これらは、通常、FFT の前処理で使用します。

y = detrend(x) は、ベクトル x から最適な直線近似を行い、それを除去し、結果を y に返します。x が行列の場合、関数 detrend は、各列単位に処理します。

y = detrend(x,'constant') は、ベクトル x から平均値を除去する場合、または x が行列の場合、行列の列から平均値を除去します。

y = detrend(x,'linear',bp) は、ベクトル x から連続的に線形トレンドを除去します。または、x が行列の場合は、行列の列から除去します。ベクトル bp は、隣接する線形セグメント間のブレークポイントのインデックスを含んでいます。2 つのセグメント間のブレークポイントは、2 つのセグメントが共有するデータ点として定義されます。

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

ブレークポイントを 5 番目の要素で設定していることに注意してください。この点は、2 つのセグメントが共有する点です。

詳細

すべて展開する

アルゴリズム

関数 detrend は、データに対する直線の最小二乗近似 (または、区分的線形トレンドから構成するライン) を計算し、データから結果の関数を引きます。直線近似の方程式を得るには、polyfit を使います。

参考

この情報は役に立ちましたか?