修士の学生さんから, 実験で得られたチャートのピークを, ガウス関数でフィッティングする件について相談を受けました.
web 上で見つけたサイトに載っていたプログラムを参考にして考えていたけれど, 何をやっているのか, 今ひとつよくわからない, ので, 色々と教えてほしいとのこと.
参考にされていたプログラムは, いくつかのピークを分離して解析するものですが, 今回の相談の場合, ピークは綺麗に分離されているので, もっと単純にできることを説明しました. 単純化すると, scipy.optimize.curve_fit でパラメーターフィッティングを行なっているだけなので, 例によって, toy example を作り, それをもとに自分の目的に改良していくように薦めました.
図は, 模擬データをガウス関数でフィットした例です. ベースラインに傾きも与えてあります.
このようなフィッティングが, scipy.optimize.curve_fit を使えば, 1行でできてしまいます.
作成した toy example の python コードです.
令和4年8月8日追記: ただし, 実際に用いる場合には, 初期値を与える形に変更した方が良いと考えます.
コメント
コメントを投稿