カーブ フィッティング: Python の多項式を超えて
データを分析するとき、多くの場合、変数間の関係を説明する最適な数式を決定する必要があります。 。多項式フィッティングが一般的な選択ですが、指数曲線および対数曲線も貴重な洞察を提供します。
既存の関数を使用しない指数関数および対数フィッティングの実行
専用関数がないにもかかわらずPython の標準ライブラリの指数関数および対数近似では、変換を使用してこのタスクを実行する方法があります。
対数曲線近似 (y = A B log x)
近似するには対数曲線の場合は、(log x) に対して y をプロットするだけです。線形回帰から得られた係数は、対数方程式 (y ≈ A B log x) のパラメーターを示します。
指数曲線近似 (y = Ae^Bx)
指数曲線のフィッティングはもう少し複雑です。方程式の両辺の対数をとり (log y = log A Bx)、x に対してプロット (log y) します。結果の線形回帰係数は、指数方程式 (y ≈ Ae^Bx) のパラメーターを提供します。
加重最小二乗法のバイアスに関する注意:
指数曲線をフィッティングする場合、polyfit のデフォルトの加重最小二乗法では、結果が y の小さな値に偏る可能性があることを考慮することが重要です。これを軽減するには、w キーワード引数を使用して y に比例する重みを指定します。
Scipy の Curve_Fit を使用した柔軟性
Scipy の Curve_fit 関数は、カーブ フィッティングに対するより汎用性の高いアプローチを提供します。変換なしで任意のモデルを指定できます。
Scipy を使用した対数曲線近似:
Curve_fit は、対数曲線モデルの変換メソッドと同じ結果を返します。
Scipy を使用した指数曲線近似:
指数曲線近似の場合、curve_fit は Δ(log y) を直接計算することにより、より正確な近似を提供します。ただし、目的の極小値に到達するには、初期推定が必要です。
以上が組み込み関数を使用せずに、Python で指数曲線と対数曲線を近似するにはどうすればよいでしょうか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。