linear_fitコマンド マニュアル

(The documentation of linear_fit command)

Last Update: 2023/2/28


◆機能・用途(Purpose)

データを直線でフィットする。
Fit data by a straight line.


◆ソースコード(Source code)

$YMAEDA_OPENTOOL_DIR/general/src/linear_fit.c


◆使用方法(Usage)

コマンドライン引数でパラメータを指定する。 パラメータの一覧を下表に示す。
Specify parameters by command-line arguments. The table below shows a list of parameters.


●「-」から始まらない引数 (Arguments not beginning with “-”)

引数
Argument
与える値
Quantity to be given
第1引数
1st argument
入力ファイル名。 入力ファイルはタブ区切りのテキストファイルとし、 全ての行の列数が等しくなければならない。 同じ列は同じ量(独立変数または従属変数)を表すものと想定される。 なお空行やコメント(#から後ろの部分)は 自由に挿入することができる。
The input file name. The file must be a text file with an equal number of columns (separated by tabs) for all lines. Quantities in the same column are assumed to be same, either an independent or a dependent variable. Empty lines and comments (parts after #) can be inserted at arbitrary places.


●1つの「-」から始まる引数 (Arguments beginning with a single “-”)

このコマンドでは1つの「-」から始まる引数は存在しない。
This command does not have arguments beginning with a single “-”.


●「--パラメータ名=パラメータ値」の形式の引数 (Arguments of a form “--Parameter name=Parameter Value”)

「--パラメータ名=パラメータ値」の形式の引数は自由な順番で指定できる。 「-」から始まらない引数の間に挿入しても良い。 相反する指定がなされた場合には後の指定が優先される。 デフォルト値を持つパラメータは省略できる。
Arguments of a form “--Parameter name=Parameter Value” can be placed in an arbitrary order. They can even be inserted between arguments not beginning with “-”. In case of conflicting options being specified, the latter option has a higher priority. Parameters that have default values can be omitted.

パラメータ名
Parameter name
意味
Meaning
可能なパラメータ値
Allowed parameter values
デフォルト値
Default value
method フィッティングに用いる手法と仮定。
Method and assumptions used for the fitting.
  • normal
    独立変数\(x\)の誤差は無く、 従属変数\(y\)の誤差は全てのデータで共通であるものとして 直線\(y=ax+b\) (\(a\), \(b\): 未知パラメータ) によりフィッティングを行う。 関数fitting_line2のアルゴリズムを用いる。
    Fit data by a straight line \(y=ax+b\), where \(a\) and \(b\) are unknown parameters, assuming that the independent variable \(x\) has no error and the dependent variable \(y\) has erros common to all data. An algorithm described in the documentation of function fitting_line2 is used.

normal
column_x 入力ファイルにおける独立変数\(x\)の列番号。
The index of the column for the independent variable \(x\) in the input file.
1以上、入力ファイルの列数以下の整数。
An integer greater than or equal to 1 and less than or equal to the number of columns of the input file.
1
column_y 入力ファイルにおける従属変数\(y\)の列番号。
The index of the column for the dependent variable \(y\) in the input file.
1以上、入力ファイルの列数以下の整数。
An integer greater than or equal to 1 and less than or equal to the number of columns of the input file.
2
output_format 出力の書式。
The format of the output.
  • comprehensive
    推定した各パラメータの説明と値の組をコロン(:)で区切って表示する。
    Display the description and value of each estimated parameter separated by a colon (:).

  • simple
    推定した各パラメータの値のみを表示する。
    Display only the value of each estimated parameter.

comprehensive
output_R2 決定係数の出力有無。
Whether to output the coefficient of determination or not.
  • yes
    決定係数を出力する。
    Output the coefficient of determination.

  • no
    決定係数を出力しない。
    Do not output the coefficient of determination.

no


◆動作(Behaviour)

第1引数で指定したファイルからデータを読み込み、 パラメータmethodで指定した方法でフィッティングを行い、 結果を標準出力に表示する。 出力フォーマットは以下の通り。
Read data from the file specified by the 1st argument, fit the data using the method specified by parameter method, and display the result into the standard output. The format of the output is as follows.


●method=normalの場合 (In case of method=normal)

それぞれの値の厳密な定義と計算式は 関数fitting_line2のマニュアル参照。
Strict definitions and formula for individual values are described in the documentation of function fitting_line2.

第1行
Line 1
\(a\)の値。
The value of \(a\).
第2行
Line 1
\(b\)の値。
The value of \(b\).
第3行
Line 3
\(a\)の標準偏差\(\sigma_a\)。
The standard deviation, \(\sigma_a\), of \(a\).
第4行
Line 4
\(b\)の標準偏差\(\sigma_b\)。
The standard deviation, \(\sigma_b\), of \(b\).


●決定係数の表示 (Displaying the coefficient of determination)

output_R2=yesの場合、 上記の出力の次の行に決定係数を表示する。 決定係数の計算には 関数determination_coefficientを用いる。
In case of output_R2=yes, the coefficient of determination is displayed in the line after the previous outputs. The coefficient of determination is computed using function determination_coefficient.


◆使用例(Example)

linear_fit data.dat --column_y=3 --output_R2=yes