previous
home
最小2乗法を用いた非線形関数モデルフィット
- データyの値が正規分布(Gauss分布)に従う、または、近似的に正規分布に従う場合、最小2乗法を用いてデータに任意の非線形関数モデルのfitを行うことができます。
- applicationの「Nonlinear Least Squares Fit」ボタンをクリックするか、メニューバーのToolsの「Nonlinear Least Squares Fit」アイテムを選択して、はじめてください。
サンプルデータを利用する場合は、
ここをクリックし、
適当なディレクトリ(フォルダー)に保存してください。
サンプルデータに関数(Gaussian function)をfitする場合は、
- 「Data」欄で、「open data file」をクリックして、保存したデータファイルを指定し、
- 「Plot」ボタンをクリックすると、別ウインドウにグラフが表示されます。
- そのウインンドウで「Fit」ボタンをクリックすると、結果とグラフが表示されます。
データ
- 1行目にデータのラベルを記述することができます。各データのラベルは空白をあけずに記述し、各データごとにスペースまたはタブで区切ってください。
- データは半角で入力してください。
- 以下のData Errorsに合わせて、データを用意してください。
- yにエラーがない場合、xのデータ、yのデータの順に、データをスペース
またはタブで区切り、入力してください。一組のデータ入力が終了したら改行し、次の組のデータを同様に入力してください。
x1  | y1 |
x2  | y2 |
. | . |
. | . |
. | . |
xn  | yn |
- yにエラーがある場合、xのデータ、yのデータ、yのエラーσy
の順にデータをスペースまたはタブで区切り、入力してください。一組のデータ入力が終了したら改行し、次の組のデータを同様に入力してください。
x1  | y1  | σy1 |
x2  | y2  | σy2 |
. | . | . |
. | . | . |
. | . | . |
xn  | yn  | σyn |
- または、データは表データ形式でも構いません(データには、計算に使用しない列データを含んでいても構いません)。その場合、列データは数値をスペースで区切って、列データの個数分入力したら、改行してください。列データをデータの個数分、行に入力してください。ただし、次の入力のところの「Data Columns (Option)」欄で、使用するcolumnの指定が必要になります。
入力
- 「Data」欄で、「open data file」をクリックし、データファイルを指定してください。または、「open data table」をクリックすると、MicrosoftExcelやOpenOfficeなどからクリップボードにコピーされた表データを使用することもできます。その場合、データは、あらかじめ、テキスト形式("﹨t"によるスペースと"﹨n"による改行)でクリップボードにコピーされていなければなりません。そして、data tableウインドウのメニューバーから「Edit」→「Paste」の順に選択すると、データを用意することができます。
- もし、データファイルの1行目にデータのラベルがあり、それを使用する場合は、「Data labels」にチェックを入れてください。
- 「Data columns (Option)」欄で、データファイルの中のcolumnを指定できます。xデータの列、yデータの列(yデータにエラーがある場合はyデータのエラーの列)の順にスペースで区切って指定してください。例えば、xのデータが3列目、yのデータが5列目、yデータのエラーの列が6列目の場合は、「3 5 6」と指定して、「Set」にチェックを入れてください。
- 「Data range for x (Option)」欄で、fitの範囲を指定できます。その場合は、x軸の範囲(数値はスペースで区切る)を指定し、Setにチェックを入れてください。例えば、xの範囲を0≦x≦15としたい場合は、「0 15」と指定し、Setにチェックを入れてください。
- 「Legend for function(Option)」欄で、fitする関数のデータの凡例を指定できます。入力後、Setボタンをクリックしてください。
- 「Label for abscissa (Option)」欄で、横軸のラベルを指定できます。入力後、Setボタンをクリックしてください。
- 「Label for ordinate (Option)」欄で、縦軸のラベルを指定できます。入力後、Setボタンをクリックしてください。
- 「Graph title (Option)」欄で、グラフのタイトルを指定できます。入力後、Setボタンをクリックしてください。
- 「Plot」をボタンをクリックすると、プロットが表示されます。
データに関数をfitさせる
- 「Function f(x)」欄に関数を入力し、Setボタンをクリックしてください。関数の入力に関しては、ここを参照してください。
- 「Initial parameters」欄にパラメータの初期値をスペースで区切り、入力し、Setボタンをクリックしてください。
- 曲率行列の計算において関数のパラメータに関する2階微分を使う場合、「2nd order
derivatives in curvature matrix」欄で「Set」にチェックを入れてください。
- パラメータの誤差の計算において関数のパラメータに関する2階微分を使う場合、「2nd order
derivatives in parameter errors」欄で「Set」にチェックを入れてください。
- 「Fit」ボタンをクリックすると、結果とグラフが表示されます。
- Summary中の「correction norm」、「damping factor」、「probability」等の説明は、ここを参照してください。
- 「Show residual graph」ボタンをクリックすると、残差のプロットが別ウインドウに表示されます。
- 「Show residuals」ボタンをクリックすると、残差のデータが別ウインドウに表示されます。
- 「Show error matrix」ボタンをクリックすると、誤差行列の数値が別ウインドウに表示されます。
グラフ表示画面
- 「Title」欄で、グラフのタイトルを変更できます。適当なタイトル入力後、「Set title」ボタンをクリックするとタイトルが変更されます。
- 「Label」欄で、x軸、y軸のラベルを変更できます。それぞれ適当なラベルを入力し、「Set x label」、「Set y label」ボタンをクリックするとラベルが変更されます。
- 「Range」欄で、x軸、y軸の表示範囲を変更できます。それぞれ適当な範囲を入力し(数値はスペースで区切る)、「Set x range」、「Set y range」ボタンをクリックすると表示範囲が変更されたヒストグラムが再表示されます。
- 「Scale」欄で、x軸、y軸のスケールをlogに変更できます。logスケール
にする場合は、それぞれのチェック欄にチェックを入れてください。解除する場合はチェックをはずしてください。
- 「Legends」欄で、凡例を表示する位置を指定し、Setボタンをクリックすると、指定した位置に凡例を表示できます。
- 「Ticks」欄で、x軸、y軸にtickを入れることができます。それぞれ適当なtickを入力し、「x ticks」、「y ticks」ボタンをクリックすると、tickを入れることができます。
- グラフの画像保存については、ここを参照してください。
Kazushi Neichi
Department of Business Administration, Tohoku Gakuin University