2

完全なデータセットを抽出するためのマウス パッケージではcomplete()、次のようにコマンドを使用できます。

install.packages("mice")
library ("mice")
imp1=mice(nhanes,10) 
fill1=complete(imp,1)
fill2=complete(imp,2)
fillall=complete(imp,"long")

しかし、アメリアパッケージで完全なデータセットを抽出する方法を教えてもらえますか??

install.packages("Amelia")
library ("Amelia")
imp2= amelia(freetrade, m = 5, ts = "year", cs = "country")
4

1 に答える 1

2

このstr()関数は、ここで常に役に立ちます。imputationsによって返されるオブジェクトの要素に完全なデータセットが格納されていることがわかりますamelia()

> str(imp2, 1)
List of 12
 $ imputations:List of 5
  ..- attr(*, "class")= chr [1:2] "mi" "list"
 $ m          : num 5
 $ missMatrix : logi [1:171, 1:10] FALSE FALSE FALSE FALSE FALSE FALSE ...
  ..- attr(*, "dimnames")=List of 2
 $ overvalues : NULL
 $ theta      : num [1:9, 1:9, 1:5] -1 -0.0161 0.199 -0.0368 -0.0868 ...
 $ mu         : num [1:8, 1:5] -0.0161 0.199 -0.0368 -0.0868 -0.0658 ...
 $ covMatrices: num [1:8, 1:8, 1:5] 0.8997 -0.3077 0.0926 0.2206 -0.1115 ...
 $ code       : num 1
 $ message    : chr "Normal EM convergence."
 $ iterHist   :List of 5
 $ arguments  :List of 23
  ..- attr(*, "class")= chr [1:2] "ameliaArgs" "list"
 $ orig.vars  : chr [1:10] "year" "country" "tariff" "polity" ...
 - attr(*, "class")= chr "amelia"

各代入を単独で取得するにはimp2$imputations[[1]]、要求したすべての代入に対して などを実行します。あなたの例では、次の 5 つがあります。

> str(imp2$imputations, 1)
List of 5
 $ imp1:'data.frame':   171 obs. of  10 variables:
 $ imp2:'data.frame':   171 obs. of  10 variables:
 $ imp3:'data.frame':   171 obs. of  10 variables:
 $ imp4:'data.frame':   171 obs. of  10 variables:
 $ imp5:'data.frame':   171 obs. of  10 variables:
 - attr(*, "class")= chr [1:2] "mi" "list"
于 2016-01-23T21:09:28.750 に答える