Main Content

データの平滑化

ライブ エディターでノイズを含むデータを平滑化

R2019b 以降

説明

データの平滑化タスクでは、ノイズを含むデータを対話的に平滑化できます。このタスクは、ライブ スクリプト用の MATLAB® コードを自動生成します。

このタスクを使用すると、次を行うことができます。

  • ワークスペース変数内のデータを平滑化する方法をカスタマイズする。

  • パラメーターを調整して、平滑化の程度を増減する。

  • 平滑化したデータに対する入力データを可視化する。

関連する関数

[データの平滑化] では、関数 smoothdata を使用するコードが生成されます。

Smooth Data task in the Live Editor

タスクを開く

[データの平滑化] タスクを MATLAB エディターでライブ スクリプトに追加するには、以下を行います。

  • [ライブ エディター] タブで [タスク][データの平滑化] を選択します。

  • スクリプトのコード ブロック内に、smoothnoisymovmedianlowess などの関連キーワードを入力します。コマンドの補完候補から [データの平滑化] を選択します。キーワードによっては、1 つ以上の対応するパラメーターがタスクで自動的に更新されます。

すべて展開する

ライブ エディターの [データの平滑化] タスクを使用して、平滑化係数を調整して平滑化の程度を対話的に増やすことでノイズを低減します。

まず、ノイズを含むデータのベクトルを作成します。

x = 1:100;
rng(0,"twister")
data = cos(2*pi*0.05*x+2*pi*rand) + 0.5*randn(1,100);

ライブ エディターで [データの平滑化] タスクを開きます。ノイズを含むデータを平滑化するには、data を入力データとして選択します。サンプル点は "x" 軸の位置の既定のベクトルと同じであるため、[X 軸] フィールドで x を指定する必要はありません。

[平滑化法] フィールドで [Gaussian filter] 法を選択して、ガウス加重移動平均フィルターでベクトルを平滑化します。プロットのタイトルに、平滑化ウィンドウの長さが 4 と示されます。あるいは、[移動ウィンドウのサイズを返す] を選択すると、平滑化されたデータに加えてウィンドウのサイズを返すことができます。

平滑化係数を既定値の 0.25 から 0.3 に増やし、使用するウィンドウのサイズを大きくして平滑化します。これにより、平滑化の程度が増大します。プロットのタイトルが更新され、平滑化ウィンドウの長さが 6 と示されます。

Live Task

関連する例

パラメーター

すべて展開する

このタスクは、ベクトル、table、または timetable に含まれる入力データに対して実行されます。データは single 型、double 型、logical 型、あるいは int64 などの符号付きまたは符号なし整数型にできます。

入力データが table または timetable の場合、サポートされている型の変数をすべて平滑化するには、[サポートされているすべての変数] を選択します。single 型、double 型、符号付き整数型または符号なし整数型のすべての変数を平滑化するには、[すべての数値変数] を選択します。サポートされている変数のうち、平滑化する対象を選択するには、[指定された変数] を選択します。

平滑化法を、データの局所ウィンドウ全体に作用する次のオプションのいずれかとして指定します。

メソッド説明
移動平均値

移動平均値。このメソッドは、データの周期的なトレンドを低減するのに便利です。

移動中央値移動中央値。このメソッドは、外れ値が存在する場合にデータの周期的なトレンドを低減するのに便利です。
ガウス フィルターガウス加重移動平均値。
局所線形回帰 (Lowess)Lowess 線形回帰。このメソッドは計算量が多くなる場合がありますが、不連続点は少なくなります。
局所二次回帰 (Loess)Loess 二次回帰。このメソッドは局所線形回帰より計算量がやや多くなります。
ロバストな Lowessロバストな Lowess 線形回帰。このメソッドは、計算量の多い局所線形回帰のバージョンですが、外れ値に対してよりロバストになります。
ロバストな Loessロバストな Loess 二次回帰。このメソッドは、計算量の多い局所二次回帰のバージョンですが、外れ値に対してよりロバストになります。
Savitzky-Golay 多項式フィルターSavitzky-Golay 多項式フィルター。指定された次数の多項式に従って平滑化し、各ウィンドウで近似します。このメソッドは、データが急速に変動する場合に他のメソッドより効果的です。

一般的な平滑化係数を指定する代わりに、平滑化方法のウィンドウのタイプとサイズを指定します。移動ウィンドウのタイプとサイズを指定しない場合、ヒューリスティックな方法でウィンドウ サイズが決定されます。

ウィンドウ説明
中央揃え現在の点を中心にしてウィンドウの長さを指定する
非対称現在の点の前にある要素数と、現在の点の後にある要素数を含むウィンドウを指定する

ウィンドウのサイズは、[X 軸] の変数の単位を基準とします。

制限

[データの平滑化] タスクでは 2 次元平滑化ウィンドウはサポートされていません。

バージョン履歴

R2019b で導入

すべて展開する