dポイントプレゼントキャンペーン実施中!

Pythonのstatsmodels.tsa.statespace.kalman_filterでカルマンフィルタを実行したいのですが、パラメーターの、k_endog、k_statesなどについて、英語での説明しかなく、翻訳してもわかりにくいので教えていただけますでしょうか。

A 回答 (1件)

こんにちわ!


ビッチのサセ子です♡
友達には軽マンフィルタって呼ばれてます

とかくだらん冗談はさておき。

> 英語での説明しかなく、翻訳してもわかりにくい

いやこれ、僕も調べてみたけど、イマイチですよねぇ。

statsmodels.tsa.statespace.kalman_filter.KalmanFilter:
https://www.statsmodels.org/stable/generated/sta …

これ、オープンソース系のリファレンスの悪いトコばっか集まったような良い例ですよ。いや、良いってこたぁねぇんだけど(苦笑)。
こういうのってユーザーの立場から言うと、「実際の例」挙げてくれれば一番やりやすいんですけどねぇ。取り敢えずstatsmodels上ではk_endogってのはデータセットの事らしい、ってのだけは分かったんですが、要するにササッと眺めると、キーワードとして指定されてる変数名と一般で言うカルマンフィルタの定義式がどう対応してるのかサッパリ分からん。
そして「イチから調べなきゃならん」と言うのはリファレンスとすると最悪なんですよ。しばしば、根底から順序良く学ぶんじゃなくって、「取り敢えずやりたい事をササッと出来る」のを望んでる事もあるわけで、その場合に教科書的に「最初から読まなアカン」ってなるのは最悪です。これじゃあリファレンス(引用書)の意味がない。
色々ネット上でstatsmodel.tsa.statespace.kalman_filterを使った例がねぇものか、って海外のサイトとかも調べてみたんですが、少なくともGoogleの1ページ目には引っかかって来ませんでした・・・このライブラリ人気ねぇんじゃねぇの(笑)。
まあ、こういうリファレンスだとソフトウェアの機能的にはさておき、英語が読めるヤツだろうが「使い勝手が悪い」ってんで使用するの避けるケースが多い気がします。結果、情報が溜まらず埋もれていくのよね。

んで、調べてみると、statsmodelsのディレクトリの中にサンプルデータセットとそれを使ったプログラムの実例ってのが入ってるらしいんです。その情報見つけるのが至難の業だったんですが(苦笑)。
貴方の使っている環境が何なのかは知りませんが、例えばpipとかでPythonの外部ライブラリをインストールした場合、いずれにせよ

site-packages

と言うフォルダにインストールされます。WindowsだとPythonフォルダの直下にあるか、あるいはMac/LinuxだとそれらOSの指定したフォルダか、homeディレクトリの.localとかに入ってんじゃねぇかな。それはまぁ、ご自分で調べてもらうとして。
そのsite-packages内の・・・っつーかパスで言うと、

site-packages/statsmodels/tsa/statespace/tests

ってフォルダにstatsmodelsが提供している機能のサンプルプログラムが入っています。test_kalman/pyなんかも入ってるんで、それを開いてプログラムの内容を確認してみて下さい。当然それによって「使い方」が分かる。
あるいは、実行してみて結果を見てみても良いでしょう。
また、

site-packages/statsmodels/datasets

にはサンプルデータセットが提供されている模様です。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!