2017-10-22 2 views
1

私はglmmTMBを使用して23のモデルのセットを実行しました。 (list、サンプルコードは、下図のように私は私のモデルを設定した)glmmTMBと一緒にbroom :: glance()を使用する

cand.models<-list() 
cand.models[[1]]<-glmmTMB(count~depth + slope + SST + (1|individual), family=list(family="truncated_nbinom1", link="log"), data=df) 
cand.models[[2]]<-glmmTMB(count~depth + slope + (1|individual), family=list(family="truncated_nbinom1", link="log"), data=df) 
私は cand.models内に含まれる各モデルの逸脱を提供してサマリー表を作成したいと思います

。私はbroom::glance()を使ってみました。これは、AICやBICのようなものの中でも、逸脱を含む「一行」の要約を作成することになっています。

summ.table<-do.call(rbind, lapply(cand.models, broom::glance)) 

ただし、出力にはモデルの偏差が含まれていません。 (シグマ、logLik、AIC、BIC、およびdf.residualのみが含まれます)。だれかがdevianceを提供していない理由を知っていますか(glmmTMB特有の問題でしょうか?)。あるいは、誰かが逸脱を抽出するための代替ソリューションを持っていますか?

+0

私は 'glmmTMB'のヘルプの例のモデルのいずれかを生成し、'その上glance'を試みたとき、私は次のエラーを受け取った: '一目にはありませんglmmTMBクラスのデータを扱う方法を知っている。私は最新のCRANリリースと 'broom'の開発版の両方でこれを試していましたので、' glmmTMB'モデルで 'glance'をどうやって動かすことができたのかと思っています。 'lm'、' glm'、 'lmer'(' lme4'パッケージから)で返されたモデルオブジェクトに 'glance'を実行すると、' glance' *は出力にdevianceを含めます。興味深いもの: – eipi10

+0

devtools :: install_github( "bbolker/broom")をダウンロードし、 'glmmTMB'で' dotwhisker :: dwplot() 'を使うことができました。多分、それは 'bromm'が' glmmTMB'とやりとりする方法を変えました – Splash1199

答えて

2

コメントにフォローアップ:"master" version of broomglanceglmmTMBモデルでは動作しません。つまり、glmmTMBモデル用glance方法が含まれていません。

、使用しているbroomのバージョンは、彼がglmmTMBモデルオブジェクトのために働く新しいglanceメソッドを追加することにより、Ben Bolker (bbolker)forkedバージョンです。ただし、このglanceメソッドには出力にdevianceが含まれていません。それにも関わらず、deviance = -2*log(likelihood)いるので、次の操作を実行できます。

summ.table$deviance = -2 * summ.table$logLik 
関連する問題