書評.この広告は、90日以上更新していないブログに表示しています。ハザード関数に時間相関の制約を入れるStan今回のデータは以下のような、1日ごとに得られる観察打ち切りを含む何らかのイベント発生データです(この記事の最後のRコードで作成しています)。イベント発生の場合は1です。このようなデータには生存時間分析の手法がよく使われます。この記事では生存時間分析の知識を前提とします。個人的なおすすめの本は以下です。Web上で閲覧できる情報としては以下がおすすめです。link2)カプラン・マイヤー法や比例ハザードモデルの不満点は、説明変数である「処理」の効果が時間依存しないと仮定する点、ハザード関数が時刻について滑らかという前提が入っていない点などです。統計モデリングによる拡張としては、ベースラインハザードはそのままで処理の効果を時間依存にするとか色々考えられます。今回は処理ごとにベースラインハザードの形が変わるとして、ある1つの処理の離散的なハザード関数を推定するとします。(条件付き)瞬間死亡率であるハザードが滑らかに変化しないで各時刻ででこぼこのバラバラなのは気持ち悪いと考えて、ハザードの対数に2階差分のマルコフ場モデルを仮定しました。Stanコードは以下になります。ハザード関数の対数です。Fは生存率関数で、その対数です。尤度の計算がラクになるために算出しています。2階差分のマルコフ場モデルの部分です。各々のイベントまでの時間・打ち切りまでの時間が互いに独立と考えると、打ち切りのハザード関数は個別に最適化できるので(時間によらない)定数と考えて推定を省きます。するとこのような尤度になります。対数をとっていないハザード関数そのものにマルコフ場モデルを使うのはうまくいきませんでした。[0,1]の範囲制限が厳しいのだと思います。キックするRコードは以下になります。2階差分のマルコフ場モデルは初期値が重要です。いえざっくり平らな初期値を与えれば大丈夫でした。3で1chainあたり1分ぐらいでした。結果は以下になります。データに対して普通に{survival}のsurvfit関数で推定した場合の生存率曲線は以下の通り。描画は@sinhrksさんの{ggfortify}を使っています。使いやすいです!!次にStanの推定結果。以下は生存率曲線の図です。赤線はMCMCサンプルの中央値、薄いオレンジ帯は同じく95%信用区間、濃いオレンジ帯は同じく50%信用区間です。青の線はカプラン・マイヤー法によるハザードの推定値で、黒の+は打ち切りを表します。以下はハザード関数の図です。赤線はMCMCサンプルの中央値、薄いオレンジ帯は同じく95%信用区間、濃いオレンジ帯は同じく50%信用区間です。青の点と線はカプラン・マイヤー法によるハザードの推定値、黒の点線はこのデモデータを生成した時の真のハザード関数です。生存者が少なくなってくる後半は推定されたハザード関数と差が出やすいです。これは生存時間分析の難しいところで、1回の乱数から生成されたデータに引きずられるためです。久保さんが実験していた乱歩の時系列データと同じような状況になっているのだと思います。最後に今回のデータを作成したRコードです。真のハザードはコード中のYに相当します。ハザード関数に時間相関の制約を入れるTweet広告を非表示にする関連記事2018-01-27逆温度1の事後分布のサンプルからWBICを計算するこの記事は以下のツイートを拝見してやってみようと思いました...2015-02-28SIRモデルからはじめる微分方程式と離散時間確率過程(後編)前の記事の続きです。ability」をBUGSで実装します。model」をやります。(2)月別アーカイブはてなブログをはじめよう!StatModelingさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。