• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:MCMCを用いたパラメータ推定[Matlab])

MCMCを用いたパラメータ推定[Matlab]

このQ&Aのポイント
  • MCMCを使用したパラメータ推定のためのMatlabプログラムで、IfとEndの不一致エラーが発生しています。
  • パラメータ推定にはポアソン分布を使用し、データの当てはまりを見ています。
  • プログラムではMCMCの反復回数やパラメータの更新幅などを指定しています。初心者のため、間違いがあるかもしれません。

質問者が選んだベストアンサー

  • ベストアンサー
  • Kules
  • ベストアンサー率47% (292/619)
回答No.1

確認ですが、 >IfとEndが合わないという忠告が何個も出てしまいます というのは「警告」であって「エラー」ではないんですよね? まあ警告ならほっといてもいいんですが… もし警告だとすれば、それはifとendのインデントがあっていないことによると思われます。 スペースを_(アンダーバー)で表します。 if 1; ______if 0; ________A=5; ____end; end; とすると、おそらく2行目に警告が出ると思われます。 どうやら、ifとendがスペース2つ分以上離れていると出るみたいです。 で、解決方法ですが、Matlabのエディタを使っているのであれば ctrl+A(全て選択)→ctrl+I(スマートインデント)で解決すると思われます。 参考になれば幸いです。

1kao2no
質問者

お礼

回答、ありがとうございました。 教えていただいたやり方で試したところ、警告はなくなりました! Ctrl+AとCtrl+I、便利ですね! ただ、肝心のプログラムが間違っているようで、上手く答えが出てくれません。。。 このプログラムに対しても、何かアドヴァイス等ございましたら申し訳ありませんがよろしくお願いします。 ご回答、ありがとうございました。

その他の回答 (1)

  • Kules
  • ベストアンサー率47% (292/619)
回答No.2

A No.1のKulesです。 警告がなくなったようで安心しました。 >肝心のプログラムが間違っているようで、上手く答えが出てくれません。。。 というのは、エラーが出るということではなく、何か「このような答えが出るはず」というパラメータを入れてもそのような答えが出ないということでしょうか? 残念ながら私の使用しているMatlabにはStatistics Toolboxが入っていないので、 poissrndやpoisspdfが動きません。 したがって、あなたの書いたコードが動くかどうかを確かめる術がありません。 また、MCMCがどのようなものなのかを知らないため、どのように動けば正解なのかもわかりません。 少なくともこのプログラム自体にはエラーはなさそう(poissrnd以降が私の環境で動かないので断言はできませんが)なので、あとはアルゴリズム上の問題かと。 お役に立てず申し訳ないです。

1kao2no
質問者

お礼

ご回答、ありがとうございました。 どうにか書き変えて上手く動きました! 教えていただいたCtrl A + Ctrl Iも使わせて頂いてます!!! ありがとうございました。

関連するQ&A

専門家に質問してみよう