Main Content

曲線近似および曲面近似

曲線近似

プログラムにより曲線近似を行うには、次の簡単な例の手順に従います。

  1. データを読み込みます。

    load hahn1

  2. 関数 fit を使用し、変数およびモデル タイプを指定して近似を作成します (この場合、rat23 がモデル タイプです)。

    f = fit(temp,thermex,"rat23")

  3. 近似とデータをプロットします。

    plot(f,temp,thermex)
    f(600)

さまざまな多項式近似を比較する例については、多項式の曲線近似を参照してください。

曲面近似

プログラムによる曲面近似を行うには、次の簡単な例の手順に従います。

  1. データを読み込みます。

    load franke
  2. 関数 fit を使用し、変数およびモデル タイプを指定して近似を作成します (この場合、poly23 がモデル タイプです)。

     f = fit([x, y],z,"poly23")
  3. 近似とデータをプロットします。

    plot(f,[x,y],z)

カスタム式による近似の例については、カスタム式による生物医薬品データの曲面近似を参照してください。

モデル タイプおよび近似解析

特定のモデル タイプおよび近似解析の詳細や例については、以下の節を参照してください。

コマンド ラインでの近似のワークフロー

Curve Fitting Toolbox™ ソフトウェアは、データ解析とモデル化のためのさまざまな方法を提供します。

ヒント

曲線および曲面の近似とプロットの MATLAB® コードを迅速に生成するには、曲線フィッター アプリを使用してコードを生成します。単一データセットの対話型の解析を、コマンド ラインでの解析または複数データセットのバッチ処理に再利用可能な関数に変換できます。詳細については、コードの生成とワークスペースへの近似のエクスポートを参照してください。

曲線近似関数を使用してプログラムによる近似および解析を行うには、次のワークフローに従います。

  1. load コマンドを使用する (データを事前に MATLAB 変数に保存している場合) か、特定のファイル タイプからデータを読み込むための MATLAB 関数を使用して、データを MATLAB ワークスペースにインポートします。データは再形成しなければならない場合があります。prepareCurveData または prepareSurfaceData を参照してください。

  2. (オプション) データにノイズが含まれている場合、関数 smooth を使用して平滑化する必要がある場合もあります。平滑化は、適切なパラメトリック モデル ファミリーの選択に役立つ、データの主要トレンドの特定に使用されます。パラメトリック モデルが明らかでも適切でもない場合は、平滑化はそれ自体が目的となり、データのノンパラメトリック近似を提供します。

    メモ

    平滑化は、それぞれの予測子において応答の分布の中心を推定します。データ内の誤差は独立であるという仮定が無効になるため、信頼区間と予測区間を計算するために使用される方法も無効になります。したがって、パラメトリック モデルが平滑化により特定された場合は、"元の" データを関数 fit に渡す必要があります。

  3. データのパラメトリック モデルとして、Curve Fitting Toolbox のライブラリ モデルまたは独自に定義したカスタム モデルを指定します。モデルを指定するには、モデル名または式を関数 fit に渡します。関数 fittype で作成した fittype オブジェクトを使用することもできます。

    使用できるライブラリ モデルを表示するには、曲線近似または曲面近似のライブラリ モデルのリストを参照してください。

  4. (オプション) 関数 fitoptions を使用して近似のための近似オプション構造体を作成できます。近似オプションは、データの重み、近似法、近似アルゴリズムの低水準オプションなどを指定します。

  5. (オプション) 関数 excludedata を使用して近似の除外規則を作成できます。除外規則は、どのデータ値を外れ値として扱い、近似から除外するかを示します。

  6. x データと y データ (および曲面近似の場合は z データ)、モデル (名前、式または fittype オブジェクト)、また必要に応じて、近似オプション構造体および除外規則を関数 fit で指定して、近似を実行します。

    関数 fit は、計算した係数および近似統計量をカプセル化する cfit オブジェクト (曲線の場合) または sfit オブジェクト (曲面の場合) を返します。近似オブジェクトの詳細については、曲線近似および曲面近似のオブジェクトとオブジェクト関数を参照してください。

  7. 関数 fit が返した近似オブジェクトを fevaldifferentiateintegrateplotcoeffvaluesprobvaluesconfintpredint などの各種の関数に渡すことにより後処理を実行できます。

以下の関数を使用して曲線近似および曲面近似を操作します。

曲線または曲面の近似メソッド説明

argnames

入力引数名を取得

category

近似カテゴリを取得

coeffnames

係数名を取得

coeffvalues

係数値を取得

confint

近似係数の信頼区間を取得

dependnames

従属変数名を取得

differentiate

近似を微分

excludedata

近似からデータを除外

feval

指定した予測子でモデルを評価

fittype

fittype オブジェクトを構築

formula

式を取得

indepnames

独立変数名を取得

integrate

曲線近似を積分

islinear

モデルが線形かどうかを判断

numargs

入力引数の数を取得

numcoeffs

係数の数を取得

plot

近似をプロット

predint

予測区間を取得

probnames

問題依存のパラメーター名を取得

probvalues

問題依存のパラメーター値を取得

quad2d

曲面近似を数値積分 (sfit オブジェクト)

setoptions

モデル近似オプションを設定

type

モデルの名前を取得

参考

| | | | |

関連するトピック