mlsq_error_argparse プログラム仕様

多項式最小二乗フィッティングおよび不確実性(誤差)の可視化を行うスクリプト。

関連リンク: D:/git/sphinx/tkProg/source/regression/mlsq_error_argparse.py マニュアル

regression.mlsq_error_argparse.build_design_matrix(x, order)[ソース]

多項式回帰のための計画行列(デザインマトリクス)を構築する。

与えられたデータ点xと多項式の次数orderに基づいて、各列がxの累乗となる行列を作成する。

パラメータ:
  • x -- 入力データ点の配列(array-like)。

  • order -- 多項式の次数(int)。

戻り値:

(N, order+1) の形状を持つ計画行列(np.ndarray)。

regression.mlsq_error_argparse.compute_bands(xcal, beta, cov_beta, sigma2_resid, sigma_meas)[ソース]

計算グリッド上での平均予測値と各種不確実性(誤差)バンドを計算する。

パラメータの不確実性、残差、および測定誤差を考慮した標準偏差をそれぞれ算出する。

パラメータ:
  • xcal -- 評価を行うxのデータ点(array-like)。

  • beta -- 最小二乗法で推定された係数(np.ndarray)。

  • cov_beta -- パラメータの共分散行列(np.ndarray)。

  • sigma2_resid -- 残差分散(float)。

  • sigma_meas -- 測定誤差の標準偏差(float)。

戻り値:

平均予測値('y_mean')、パラメータ由来の標準偏差('sigma_param')、予測の標準偏差('sigma_pred')、複合された標準偏差('sigma_combined')を含む辞書(dict)。

regression.mlsq_error_argparse.compute_measurement_error(y)[ソース]

入力データの分散から測定誤差を推定する。

観測値yの不偏分散を用いて、測定値の標準偏差を計算する。

パラメータ:

y -- 観測値の配列(array-like)。

戻り値:

推定された測定誤差の標準偏差(float)。

regression.mlsq_error_argparse.compute_param_uncertainty(X, cov_beta)[ソース]

各データ点におけるパラメータ由来の予測分散を計算する。

計画行列とパラメータの共分散行列から、予測値の分散を求める。

パラメータ:
  • X -- 評価点における計画行列((N, p) のnp.ndarray)。

  • cov_beta -- パラメータの共分散行列((p, p) のnp.ndarray)。

戻り値:

各点での予測分散 y_var ((N,) のnp.ndarray)。

regression.mlsq_error_argparse.initialize()[ソース]

コマンドライン引数を解析し、設定情報を持つ名前空間を初期化する。

詳細設定などのコマンドライン引数を受け取り、入出力ファイルのパスも構築して設定オブジェクトに格納する。

戻り値:

app (tkApplicationインスタンス), cfg (設定を格納したtypes.SimpleNamespace), parser (argparse.ArgumentParser) のタプル。

regression.mlsq_error_argparse.load_data(infile, xlabel, ylabel, xmin, xmax, pause_flag)[ソース]

tkVariousDataを使用してファイルからデータを読み込み、xminとxmaxでフィルタリングする。

指定されたラベルまたはインデックスに基づいてxとyのデータを抽出し、指定範囲内のデータを返す。

パラメータ:
  • infile -- 入力ファイルのパス(str)。

  • xlabel -- xデータのラベルまたはインデックス(str)。

  • ylabel -- yデータのラベルまたはインデックス(str)。

  • xmin -- xの最小値(float)。

  • xmax -- xの最大値(float)。

  • pause_flag -- エラー終了時に一時停止するかどうかのフラグ(bool)。

戻り値:

抽出されたデータ 'x' と 'y' のリストを含む辞書(dict)。

regression.mlsq_error_argparse.main()[ソース]

メイン実行関数。

コマンドライン引数のパース、データの読み込み、多項式による最小二乗フィッティングの実行、 不確実性の計算、結果のExcelファイルへの保存、およびプロットによる結果の可視化を行う。

戻り値:

なし

regression.mlsq_error_argparse.mlsq_error(X, y)[ソース]

最小二乗法によるフィッティングを実行する。

計画行列Xと観測値yから、回帰係数、係数の標準誤差、共分散行列、および残差分散を計算する。

パラメータ:
  • X -- 計画行列((N, p) のnp.ndarray)。

  • y -- 観測値の配列((N,) のarray-like)。

戻り値:

推定された係数 beta (np.ndarray)、係数の標準誤差 beta_std (np.ndarray)、パラメータの共分散行列 cov_beta (np.ndarray)、残差分散 sigma2_resid (float) のタプル。