У меня проблема с пониманием того, как работает predictorMatrix
. В книге Штефа ван Бюрен (https://stefvanbuuren.name/fimd/sec-modelform.html) говорится: «Строки соответствуют неполным целевым переменным в той последовательности, в которой они появляются в данных. Значение 1 указывает, что переменная столбца является предиктором для вменения целевой (строки) переменной, а 0 означает, что она не используется. Таким образом, в приведенном выше примере bmi прогнозируется из age
, hyp
и chl
. Обратите внимание, что диагональ равна 0, поскольку переменная не может предсказать себя. * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *} * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * По строению * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Я не могу объяснить свои результаты. Например, используя данные nhanes
, скажем, я не хочу вменять hyp
, но использую hyp
для расчета других переменных.
library(mice) # mice version 3.8.0
ini <- mice(nhanes, maxit = 0, print = FALSE, seed = 1)
imp <- mice(nhanes, print = FALSE, seed = 1)
imp$imp$hyp
# predictormatrix - row ‘hyp’ to 0
pred <- ini$pred
pred["hyp",] <- 0
imp <- mice(nhanes, pred = pred, print = FALSE, seed = 1)
imp$imp$hyp
imp$imp
hyp
не следует вменять, но все значения равны 1 (независимо от семени). Почему это так?
Обращаясь в Google за помощью, я также обнаружил несколько постов, в которых упоминалось, что для метода hyp
установлено значение “”
. Так ли это?
meth <- ini$method
meth["hyp"] <- ""
imp <- mice(nhanes, pred = pred, method = meth, print = FALSE, seed = 1)
imp$imp$hyp
imp$imp
При этом, очевидно, hyp
не вменяется, но я получаю разные вмененные значения для других переменных.
Можете ли вы объяснить, что здесь происходит?
Спасибо!