Объединение результатов множественного вменения, ошибка функции pool(), пакет mice

#r #missing-data #usage-statistics #r-mice #broom

#r #отсутствует-данные #использование-статистика #r-мыши #метла

Вопрос:

Я новичок в множественном вменении. Я следовал инструкциям, которые я нашел в Интернете, и выполнил несколько вменений для своих собственных данных. Все шло хорошо до самого последнего шага, когда мне нужно объединить результаты из разных наборов данных с вмененными значениями. R выдал мне следующие сообщения об ошибках:

 pool(rep1_mi)
Error: No tidy method for objects of class qr
In addition: Warning messages:
1: In get.dfcom(object, dfcom) : Infinite sample size assumed.
2: 'tidy.numeric' is deprecated.
See help("Deprecated") 
3: 'tidy.numeric' is deprecated.
See help("Deprecated") 
4: 'tidy.numeric' is deprecated.
See help("Deprecated") 
5: 'tidy.numeric' is deprecated.
See help("Deprecated") 
6: 'tidy.numeric' is deprecated.
See help("Deprecated") 
7: 'tidy.numeric' is deprecated.
See help("Deprecated") 
  

Я не нашел ни одного работающего решения. Кто-нибудь может помочь? Спасибо.

Ответ №1:

Эта проблема с GitHub связана с вашей проблемой. Вы можете обойти это с помощью pool.scalar() функции.

Ответ №2:

Попробуйте запустить вашу модель непосредственно на выходе, заданном, mice а не на выходе, заданном complete функцией

 library(psych)
# to create some missingness 
bfi[4,1] = NA_character_
bfi[6,2] = NA_character_
bfi[9,1] = NA_character_
bfi[7,2] = NA_character_
bfi[6,1] = NA_character_

# run mice
imput.bfi <- mice(bfi, m = 3)

# when "complete" function is used, "pool" function will not run
bfi.imp.dat=mice::complete(imput.bfi, action="long", inc = TRUE)
# run linear regression 
lm.bfi=with(bfi.imp.dat, lm(N1 ~ age))
# pool will not work here 
pool(lm.bfi)


# In this case the "pool" function will work properly
# run linear regression 
lm.bfi=with(imput.bfi, lm(N1 ~ age))
# pool results 
pool(lm.bfi)