R

插補次數和最大迭代次數如何影響多重插補的準確性?

  • June 15, 2016

幫助頁面MICE將函數定義為:

mice(data, m = 5, method = vector("character", length = ncol(data)),
 predictorMatrix = (1 - diag(1, ncol(data))),
 visitSequence = (1:ncol(data))[apply(is.na(data), 2, any)],
 form = vector("character", length = ncol(data)),
 post = vector("character", length = ncol(data)), defaultMethod = c("pmm",
 "logreg", "polyreg", "polr"), maxit = 5, diagnostics = TRUE,
 printFlag = TRUE, seed = NA, imputationMethod = NULL,
 defaultImputationMethod = NULL, data.init = NULL, ...)

這些是很多參數。如何決定指定哪些參數以及保留哪些參數作為默認值?

我對多重插補的數量m和最大迭代次數特別感興趣maxit。這些參數如何影響準確性?

換句話說,何時(如何?)——在使用這些參數的同時——我真的可以說已經達到了某種收斂嗎?

讓我們一一瀏覽參數:

  • data不需要解釋
  • m是插補的次數,一般來說越多越好。最初(繼 Rubin,1987 年之後)5 被認為是足夠的(因此是默認值)。因此,從準確性的角度來看,5 可能就足夠了。但是,這僅基於效率論點。為了更好地估計標準誤差,需要更多的插補。如今,無論平均缺失百分比是多少,都有一個經驗法則——因此,如果數據集中平均有 30% 的缺失數據,請使用 30 個插補——參見 Bodner (2008) 和 White et al (2011)更多詳情。
  • method指定要使用的插補方法 - 僅當要覆蓋默認方法時才需要。例如,默認情況下,連續數據通過預測均值匹配進行估算,這通常效果很好,但可以指定貝葉斯線性回歸和其他幾個模型,包括嵌套/聚類數據的多級模型。因此,專家/臨床/統計知識可用於指定默認方法的替代方案。
  • predictorMatrix是一個矩陣,它告訴算法哪些變量預測哪些其他變量的缺失。mice如果未指定,則使用基於變量之間相關性和可用案例比例的默認值。專家/臨床知識在指定預測矩陣時可能非常有用,因此應謹慎使用默認值。
  • visitSequence指定變量的插補順序。通常不需要它。
  • form主要用於幫助指定在插補中使用的交互項,通常不需要。
  • post用於插補後處理,例如確保插補正值。這通常不需要。
  • defaultMethod更改默認的插補方法,通常不需要
  • maxit是每個插補的迭代次數。mice使用迭代算法。重要的是所有變量的插補達到收斂,否則它們將不准確。通過檢查由此生成的軌跡圖,plot()可以直觀地確定。與其他 Gibbs 採樣方法不同,需要的迭代次數要少得多——根據經驗,通常在 20-30 或更少的範圍內。當跡線達到一個值並在其周圍略有波動時,就達到了收斂。以下是顯示健康收斂的示例,取自此處

在此處輸入圖像描述

在這裡,用 5 個插補(彩色線)對 3 個變量進行 20 次迭代(圖中的 x 軸),圖中的 y 軸是每個插補的插補值。

  • diagnostics默認情況下會產生有用的診斷信息。
  • printFlag默認情況下輸出算法進度,這很有用,因為可以輕鬆確定估計的完成時間。
  • seed是一個隨機種子參數,可用於重現性。
  • imputationMethod並且defaultImputationMethod僅用於向後兼容。

Bodner, Todd E. (2008) “隨著缺失數據插補的增加有什麼改進?” 結構方程建模:多學科期刊 15:651-675。 https://dx.doi.org/10.1080/10705510802339072

Rubin, Donald B. (1987) 調查中不答复的多重插補。紐約:威利。

White、Ian R.、Patrick Royston 和 Angela M. Wood(2011 年)“使用鍊式方程進行多重插補:問題和實踐指南”。醫學統計 30:377-399。 https://dx.doi.org/10.1002/sim.4067

引用自:https://stats.stackexchange.com/questions/219013

comments powered by Disqus