2017-04-22 1 views
0

私はコードを持っていて、データにローレンツ曲線とガウス曲線の両方をかけるためにcurve_fitを使いました。 出力された各パラメータの誤差見積もりを取得する必要があるので、poptとpcovの両方を出力しました 私はscipyのリファレンスガイドでエラーを見つけるためにpcov行列を使用する方法を知っていますが、これは私がプログラミングの初心者。 ありがとうどのように私はpythonで各パラメータのエラーを取得するためにpcovを使用するのですか?

答えて

0

ドキュメントを読むことで、そのような質問に対する回答が得られることがよくあります。例えば、https://docs.scipy.org/doc/scipy/reference/generated/scipy.optimize.curve_fit.htmlcurve_fit()のドキュメントは言う:

戻り値:POPT:パラメータの配列 最適値となるようFの残差二乗(XDATA、* POPT)の合計 - ydataのが最小化されている

pcov:2dの配列 poptの推定共分散。対角線は、パラメータ推定値の分散を提供する。パラメータの標準偏差エラーを計算するには、perr = np.sqrt(np.diag(pcov))を使用します。 σパラメータが推定共分散にどのように影響するかは、上で説明したようにabsolute_sigma引数に依存します。私はガウスとローレンツモデルに曲線がフィッティングのために、あなたはlmfit(https://lmfit.github.io/lmfit-py/)便利を見つけるかもしれないことを示唆することを許可するp_sigma = np.sqrt(np.diag(pcov))

を使用しますと言うことです

。これらのモデルと他のモデルのための組み込みバージョンを提供します。他の機能の中でも、不確実性を含むこのような適切なフォーマットのレポートを印刷できます。

たとえば、https://lmfit.github.io/lmfit-py/builtin_models.html#example-1-fit-peaked-data-to-gaussian-lorentzian-and-voigt-profiles

関連する問題