2017-01-10 30 views
1

geepackパッケージを使用して回帰をいくつか行い、欠損値を処理するために複数の代用を使用したいとします。私はgeepackのデータを使用できるように、mipool()コマンドは私のGEEでは機能しません。 complete()関数は、各反復を生成しますが、プールされた推定は生成されません。 プールされた推定値を持つデータフレームを生成する方法はありますか?「mi」パッケージからのプールされたGEE推定値のエクスポート

答えて

0

miパッケージ内のcomplete関数は、m data.framesのリストを生成します。そのリストの各要素にdata引数のgeeを呼び出し、Rubinの規則を使用してプールされた見積もりを取得することができます。

0

RでRubinのルールを実装するパッケージ(たとえば、mimicemitools、およびmitml)がある場合は、いくつかあります。問題は、これらの実装では、統計モデルをフィッティングする関数にcoef()vcov()の作業方法が定義されている必要があることです。

しかし、geeglm()関数はvcov()を定義しておらず、標準実装は機能しません。その状況を改善するには、欠落しているメソッドをGEEに定義するのが最も簡単です。以下は、mitmlパッケージと、geepackで提供されるサンプルデータセットの1つを使用する例です。

library(geepack) 
library(mitml) 

# example data 
data(dietox) 

# example imputation 
fml <- Feed + Weight ~ 1 + Time + (1|Pig) 
imp <- panImpute(data=dietox, formula=fml, n.burn=5000, n.iter=500) 

implist <- mitmlComplete(imp, "all") 

# fit GEE 
fit <- with(implist, geeglm(Weight ~ 1 + Time + Feed, id=Pig)) 

# define missing vcov() function for geeglm-objects 
vcov.geeglm <- function(x) summary(x)$cov.scaled 

# combine estimates using Rubin's rules 
testEstimates(fit) 
関連する問題